메인OS는 아니지만 우분투를 사용한지도 좀 되긴 했지만 항상 X-window상에서만 사용하다가 보니 꽤 많은 부분이 자동설정되어 있이서 따로 의식하지 못하고 있었습니다. 서버에 설치된 우분투에서 사용할 사용자 계정을 만들고 작업을 하다가 root권한이 필요해서 sudo -s 를 입력하자 아래와 같은 오류가 발생했습니다.
[centos@localhost soruce2]$ sudo ls We trust you have received the usual lecture from the local System #1) Respect the privacy of others. [sudo] password for centos: |
암호를 물어보는 것까지는 정상적이었으나 "userid is not in the sudoers file. This incident will be reported."라는 오류메시지가 나타나면서 root권한을 획득하는 것을 실패했습니다. 해당 유저명이 sudoers파일에 없다고 합니다.(사실 이 파일의 존재자체를 처음 알았습니다.)
sudoers파일은 sudo명령어에 대한 설정을 다루는 파일이고 이곳에 sudo명령어를 사용할 수 있는 계정을 지정할수 있습니다. 그 외에도 여러가지 설정에 대한 부분이 있으며 /etc/sudoers 에 위치하고 있습니다. 기본으로 지정된 내용을 보면 root ALL=(ALL) ALL 이라는 부분이 있는데 이 설정이 root 유저가 sudo명령어를 사용할 수 있도록 하는 부분입니다.
## Syntax: ## ## user MACHINE=COMMANDS ## ## The COMMANDS section may have other options added to it. ## ## Allow root to run any commands anywhere root ALL=(ALL) ALL centos ALL=(ALL) ALL ## Allows members of the 'sys' group to run networking, software, ## service management apps and more. # %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS |
위처럼 sudo명령어를 사용할 계정을 root처럼 추가해 주면 정상적으로 해당 계정에서 sudo 명령어를 사용할 수 있습니다. sudoers파일은 일반적인 vi등으로 편집하지 않고 visudo -f /etc/sudoers 이것 보다 gedit
gedit /etc/sudoers
명령어를 사용하면 vi와는 다른 형태의 에디터가 열리고 여기서 수정할 수 있습니다.(vi를 통해서 접근하면 읽기전용파일로 나옵니다.) 수정후에 저장할때 sudoers 설정에 대한 문법까지 체크해주기 때문에 혹시모를 문제를 위해서 visudo , gedit 를 이용해서 파일을 수정합니다.
댓글 ( 4)
댓글 남기기