리눅스

메인OS는 아니지만 우분투를 사용한지도 좀 되긴 했지만 항상 X-window상에서만 사용하다가 보니 꽤 많은 부분이 자동설정되어 있이서 따로 의식하지 못하고 있었습니다. 서버에 설치된 우분투에서 사용할 사용자 계정을 만들고 작업을 하다가 root권한이 필요해서 sudo -s 를 입력하자 아래와 같은 오류가 발생했습니다.
 

[centos@localhost soruce2]$ sudo ls

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

    #1) Respect the privacy of others.
    #2) Think before you type.
    #3) With great power comes great responsibility.

[sudo] password for centos: 
centos is not in the sudoers file.  This incident will be reported.
 

 


암호를 물어보는 것까지는 정상적이었으나 "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 를 이용해서 파일을 수정합니다.

 

about author

PHRASE

Level 60  머나먼나라

사랑은 언제나 자기를 기만하는 것에서 시작하고, 타인을 기만하는 것으로 끝난다. 이것이 세상에서 말하는 로맨스라는 것이다. -오스카 와일드

댓글 ( 4)

댓글 남기기

작성
  •    
  •    
  •