리눅스

우분투 새로 생성한 사용자의 프롬프트 비어있는 이유

snoopybox 2013. 11. 29. 19:16
우분투 13.04 기준으로 설명

우분투에서 새로운 계정 생성시 그냥 생성하면 아래와 같이 프롬프트가 썰렁하게 $ 하나만 보인다. PS1 변수가 비어있기 때문인데


그냥 생성하면 기본 쉘이 /bin/sh 로 설정되고, /bin/sh/bin/dash 로 심볼릭 링크 걸려 있다. 그렇다면 /bin/dash 는 무엇인가?

Debian Almquist shell 이라고 한다. 우분투가 Debian 기반이라 dash가 기본 쉘로 지정되어 있나 보다.

이 기본 쉘을 bash 로 변경하면 home 디렉터리의 .bashrc 파일에 정의되어 있는 PS1 변수가 작동하게 되어 프롬프트가 예쁘게(?) 보인다.

따라서 나처럼 bash를 좋아하는 사람들은 계정 생성시 -s 옵션으로 쉘을 지정해서 생성하는게 좋겠다. 이미 /bin/sh로 만들어진 계정은 usermod 명령어로 수정하거나, /etc/passwd 파일에서 직접 쉘을 수정해도 될 것이고, 근본적으로 /bin/sh/bin/bash 로 심볼릭 링크 걸어버리는 방법도 있을 것이다.

useradd -m -s /bin/bash test02