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


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.