사용자의 기본로그인chsh
CHange SHell 약어 (기본 사용 쉘: 로그인시 기본으로 사용되는 쉘)을 변경
A.로그인쉘과 현재사용쉘에 대한 개념을 정리
우리가 기본적으로 사용하는 쉘 /etc/bash
쉘의 종류 확인하기 cat /etc/shells
chsh 는 기본사용쉘을 변경하는 명령어 (/etc/passwd에 지정 편집은 이파일을 vi 편집)
현재 사용중인 쉘을 일시적으로 변경하는 방법은 쉘에서 바로 "/bin/bash" 또는 "/bin/sh"등과 같이 실행하면된다.
절대 혼동해서는 않된다.(기본사용쉘과 현재 사용중인 쉘의 구분)
현재 사용중인 쉘 : 여러가지 쉘중에서 현재 일시적으로 사용하고 있는 쉘 (커맨드 echo $SHELL)
기본 사용 쉘 : /etc/passwd에 지정된 쉘
예제1) 기본사용쉘 확인
[root@localhost ~]# grep super /etc/passwd
super:x:500:500:박성수,office,02-0000-0000,home call number:/home/super:/bin/bash
예제1-2)사용자의 기본사용쉘(로그인쉘) 변경
[super@localhost root]$ chsh
Changing shell for super.
암호:
Password error.
[super@localhost root]$ chsh
Changing shell for super.
암호:
New shell [/bin/bash]: /bin/sh
Shell changed.
[super@localhost root]$ grep super /etc/passwd
super:x:500:500:박성수,office,02-0000-0000,home call number:/home/super:/bin/sh
이렇게 설정하면 super로그인시 기본쉘이 /bin/sh 자동할당됨
예제2) -s 옵션을 이용 간단 기본사용쉘 변경
[super@localhost root]$ chsh -s /bin/bash
Changing shell for super.
암호:
Shell changed.
예제3) vi 편집기를 이용한 기본사용쉘 변경 (root 권한필요)
vi /etc/passwd
super:x:500:500:박성수,office,02-0000-0000,home call number:/home/super:/bin/bash
해당부분 수정
B. 사용 가능한 쉘의 종류 확인하기 chsh -l
chsh -l = cat /etc/shells
[super@localhost root]$ chsh -l
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/ksh
C. 기본사용쉘(로그인쉘)과 현재 사용중인 쉘에 대한 오해
현재 사용중인 쉘확인은 echo $SHELL
예제)현재 사용중인 쉘을 변경
[super@localhost root]$ echo $SHELL
/bin/bash
[super@localhost root]$ /bin/csh #c쉘로 변경
[super@localhost /root]$ /bin/sh #born쉘로 변경
sh-3.2$
sh-3.2$
sh-3.2$ exit # born쉘을종료
exit
[super@localhost /root]$ exit #c쉘을 종료
exit
[super@localhost root]$ #bash
*root 사용자는 비밀번호 입력없이 쉘변경이가능
쉘종류를 설정하는 방법 chsh
'Server > linux공통' 카테고리의 다른 글
백그라운드(Background) 작업과 포어그라운드(Foreground) 작업 fg bg jobs (0) | 2019.04.15 |
---|---|
커널(kernel)의 이해 (0) | 2019.04.15 |
pci slot 현황 파악 (0) | 2019.04.15 |
프로세스(Process) 관리 ps (0) | 2019.04.15 |
허가권(퍼미션)과 소유권 permission, chown, chmod (0) | 2019.04.14 |