우분투에서 쉘을 어떻게 바꿀 수 있습니까? [복제]


87

이 질문에는 이미 답변이 있습니다.

Ubuntu Server VPS가 있는데 /bin/bash/쉘로 사용 하고 싶습니다. 쉘을 바꾸려면 어떻게해야합니까? 루트 액세스 권한이 있지만 루트로 작동하지 않습니다. 이제 대시가 기본 쉘입니다.

우분투에서 Bash를 기본 쉘로 만드는 방법 을 읽었습니다 . 그리고 chsh솔기가 갈 수있는 좋은 방법이 될 수 있습니다. 그러나 입력 chsh /bin/bash하면이 메시지가 나타납니다. chsh: unknown user /bin/bash

그리고 /bin/bashBash 쉘 이음새를 입력 하면 정상적으로 작동합니다. 그것을 바꾸는 방법?

답변:


85

쉘을 변경하려면 bare chsh명령을 사용하십시오 . 새 셸을 묻는 메시지가 나타납니다. 루트로 아무것도 실행할 필요가 없습니다.


아, 그게 더 좋았어!
Jonas

8
변경 사항을 확인하려면 로그 아웃했다가 다시 로그인해야합니다.
driftcatcher

26
일반 사용자로 작동하지 않습니다 : $ chsh 'user'의 셸을 변경할 수 없습니다.
Henning 2016 년

1
나를 위해 작동합니다. 시스템이 의도적으로 잠긴 것처럼 들립니다.
Michael Cole

1
ssh를 사용하지만 chsh는 모르는 비밀번호를 묻습니다. 이 문제를 해결할 방법이 있습니까?
Qwerty

113

루트로 실행할 때 chsh다른 사용자 셸을 변경 하는 데 사용할 수 있습니다 . 이것을 사용하려는 구문. 루트 권한없이 자신의 쉘을 변경할 수 있습니다.

chsh -s /bin/bash username


10
자신의 쉘 을 변경하기 위해 -1 chsh를 루트로 실행할 필요가 없습니다 . 다른 사람의 껍질을 바꾸려면 루트가 필요합니다.
Broam

2
이것은 효과가 있었다. 항상 "셸을 변경할 수 없습니다 ..."오류 메시지가 나타납니다.
setzamora

2
변경 사항을 관찰 한 후 로그 아웃했다가 다시 로그인
smac89

1
+1 나는이 시도 후, 작업을하는 것으로 chsh사용자로 로그인 할 때 명령을하고 "당신이 ... 쉘을 변경할 수 없습니다"점점
therobyouknow

54

usermod 명령을 사용하여 사용자의 기본 쉘을 변경할 수 있습니다.

sudo usermod -s <shell> <username>

사용하려는 쉘의 이름 (예 : / bin / bash)과 바꾸려는 사용자 이름으로 바꾸십시오.

이것은 / etc / passwd 파일에서 선택된 사용자 이름의 기본 쉘을 설정합니다.


10
사용 usermod은 "chsh 명령 당신이 ... 쉘을 변경할 수 없습니다"를 참조하는 경우
Xeoncross

2
chsh가 실제로 작동하지 않았기 때문에 투표했습니다. 감사!
Mixaz

점에 유의하는 것이 중요 usermod필요sudo
ARun32
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.