잠금 파일로 인해 chsh를 사용할 때 오류로 인해 내 쉘을 피쉬 쉘로 설정할 수 없습니다.

잠금 파일로 인해 chsh를 사용할 때 오류로 인해 내 쉘을 피쉬 쉘로 설정할 수 없습니다.

내 문제: CentOS 7에서 'student' 사용자의 기본 셸을 fish-shell로 설정할 수 없습니다. .gz를 다운로드하고 구성하고 만들고 설치하여 fish-shell을 설치했습니다.

output of which fish
/usr/local/bin/fish

표준 '학생' 계정에서 su를 실행하면 루트로 에스컬레이션할 수 있으며, 이 루트는 기본 쉘로 설정됩니다. 하지만 내가 달릴 때

student@localhost ~> whoami
root
student@localhost ~>
/root
student@localhost ~> sudo chsh -s /usr/local/bin/fish student
Changing shell for student. 
chsh: user attribute not changed: Invalid contents of lock `/etc/passwd.lock`

/etc/passwd를 보면 변경 사항이 없음을 알 수 있습니다.

내가 무엇을 할 수 있는지 아시나요? 잠금 파일로 인해 계속 진행할 수 없는 것 같습니다.

답변1

/etc/passwd파일을 변경하려는 이전 시도 중 하나가 잠금 파일에 약간의 쓰레기를 남긴 것 같습니다 .

해당 잠금 파일은 서로를 취소하는 여러 업데이트를 방지합니다. 해당 시스템을 사용하는 유일한 사람이라면 파일을 제거 /etc/passwd.lock하고 다시 시도하십시오.

관련 정보