반응형

우분투는 기본적으로 GUI에서 root로그인이 허용되지 않습니다.

서버로 운영하는 것도 아니고, 데스크톱으로 사용하는데 명령어 입력할 때마다 sudo 입력하는 것이 굉장히 불편하네요. 몇 가지 설정을 고칠 필요가 있습니다.

 

우선 일반 계정으로 로그인해서 root계정의 비번을 설정해줍니다.

sudo passwd root

 

다음으로, gdm(Gnome Desktop Manager)관련된 config파일 수정해줍니다.

sudo vi /etc/gdm3/custom.conf

[security] 항목 밑에 AllowRoot=true 를 추가해줍니다. 설정에 대한 근거는 http://www.fifi.org/doc/gdm/html/C/x156.html 를 참고하였습니다.

 

마지막으로, 부팅 시 처음 접하게 되는 로그인 화면의 인증 절차는 PAM(Pluggable Authentication Module)에서 처리합니다. PAM에서 root로그인을 막아 놓았기 때문에 이를 풀어줄 필요가 있습니다.

sudo vi /etc/pam.d/gdm-password

다음과 같은 문장을 볼 수 있습니다. 이는 인증(auth)에 pam_succeed_if.so 모듈을 사용하는데 로그인하려는 계정이 root가 아닌 경우에만 최종 인증을 성공시킵니다. 따라서 이를 주석처리해줍니다.

auth   required    pam_succeed_if.so   user != root     quiet_success

                                         ↓

# auth   required    pam_succeed_if.so   user != root     quiet_success 

 

여기까지 설정했으면 root로 로그인이 가능합니다. 그러나 다음과 같은 에러 메시지가 뜨는 게 거슬립니다.

/root/.profile파일을 읽는 동안 에러가 발생했습니다.

vi .profile 로 파일을 열어보니 mesg n || true 라는 항목이 보이네요.

mesg 명령어는 linux에 로그인하고 있는 다른 유저가 나에게 메시지를 쓸 수 있게 할 것인지 여부를 결정해주는 명령어입니다. 에러 메시지를 보니 inappropriate ioctl(적절치 않은 입출력 제어)로 인해 mesg명령어가 실행되지 않았다는 뜻으로 보이네요. 근데 어차피 mesg 기능은 쓰지도 않을 것이므로 mesg n || true 항목은 삭제해줍니다.

 

init 6 로 재부팅하니 root로그인도 잘되고, 에러 메시지도 보이지 않는군요.

 

 

반응형

+ Recent posts