csh에서 bash로 기본 쉘을 변경하는 방법

csh에서 bash로 기본 쉘을 변경하는 방법

csh표시된 대로 기본 쉘이 있습니다 echo $SHELL. bash기본 쉘로 전환하고 싶습니다 . 나는 다음을 시도했지만 아무 소용이 없었습니다.

  1. 나는 chsh얻다:

    chsh: can only change local entries; use ypchsh instead.
    
  2. 나는 ypchsh얻다:

    ypchsh: yppasswdd not running on NIS master host ("dcsun2").
    

.chsrc내 홈 디렉토리에서만 .profile파일을 찾을 수 있습니다 /etc. 기본 쉘을 로 어떻게 변경합니까 bash?

답변1

  1. 설치 되어 있는지 확인하세요 bash.

  2. 위치를 알아두세요 bash:

    which bash
    

    또는

    whereis bash
    

    아래에서는 위치가 이라고 가정합니다 /bin/bash.

    a) 관리 권한이 있으면 루트로 실행하십시오.

    usermod -s /bin/bash YOUR_USERNAME
    

    ( YOUR_USERNAME귀하의 사용자 이름으로 바꾸십시오).

    b) adm이 없는 경우. 권리, bash --login로그인한 상태에서도 계속 실행할 수 있습니다. 다음 줄을 입력하면 됩니다.마지막에귀하 .cshrc또는 .profile(귀하의 홈 디렉토리에서):

    setenv SHELL /bin/bash
    exec /bin/bash --login
    

답변2

시스템 관리자에게 문의하세요. 그는 일을 잘못 설정했습니다. 만약에그럼 당신은 시스템 관리자이신가요?당신은 이미설정 오류입니다.

오류 메시지는 매우 간단해 보입니다. dcsun2에서 실행 되고 있지 않습니다 yppasswd. 그것은해야한다.

하지만 빠른 Google 검색이 나타납니다.이 결과이는 yppasswd클라이언트와 서버 모두에서 실행하는 경우 이 오류가 발생함을 보여줍니다. 이 경우 클라이언트에서 해당 기능을 끄십시오.


csh를 로그인 셸로 사용하려는 경우 로그인할 때 bash를 호출하도록 할 수 있습니다. 다음 명령 ~/.loginchsh 또는 관리자 권한 없이 기본 쉘 변경):

sleep 2
if (-x /usr/local/bin/bash) then
  exec /usr/local/bin/bash -l
endif

필요한 경우 /usr/local/bin/bash올바른 경로로 바꾸십시오. 모든 것이 정상이면 삭제하십시오 sleep 2(이로 인해 문제가 발생할 경우 csh 프롬프트를 Ctrl+C누를 ).

관련 정보