2012-03-30 2 views
1

원격 PC에서 셸을 어떻게 변경합니까? 나는 배쉬와 클러스터에 로그인하고 있는데 내가 거기에 어떤 루트 권한이 없기 때문에 내가 볼 출력은 내가 클러스터의 ypchsh를 설치할 수ypchsh를 지원하지 않는 원격 컴퓨터에서 Linux 셸을 변경하는 방법

[email protected]:~ $ chsh 
chsh: can only change local entries; use ypchsh instead. 
[email protected]:~ $ ypchsh 
-bash: ypchsh: command not found 

입니다. ypchsh를 호출하지 않고 셸을 변경할 수있는 다른 방법이 있습니까?

참고 1 : 찾아보기에서 동일한 소프트웨어 (현재 질문 할 수는 없음)를 설치 한 다른 사용자는 올바른 설정으로 자신의 디렉토리에 .cshrc가 있습니다. 그의 .bashrc는 최소한이며 리다이렉션이 없습니다.

는/etc/passwd에 우리 중 하나에 대한 항목이 없습니다.

은 우리 모두에 대한 항목을 보여 주지만 둘 모두에 대해서는/bin/bash 만 표시합니다.

참고 2 : 소프트웨어는 자동 도구로 개발되었으며 tcsh 대신 bash를 사용하면 잘못된 빌드가 생성 된 것으로 알려져 있습니다. (내가 공상 때문에이 쉘을 변경하고 있지 않다.)

감사합니다, 엘란

답변

-2

를 클러스터에 떠들썩한 파티에 들어가면, 왜 당신은 tcsh를 입력하지? 그게 효과가 있다면, 그냥 .bashrc의 마지막 줄로 추가하지 않는 이유는 무엇입니까?

6

.bashrc에는 exec tcsh으로 끝납니다.

+1

+1은'exec'을 사용하는데 +1이지만 대화식 로그인 쉘 (http://www.gnu.org/software/bash/manual)이 찾은 파일이기 때문에'.bash_profile'에 속합니다. /bashref.html#Bash-Startup-Files). –

+0

고맙습니다. 저는 리눅스가 처음이에요. 나는 chsh 만이 쉘을 바꿀 수 있다고 가정했지만 명령에 따라 쉘의 이름 (내 경우에는 tcsh)을 호출하면 명령 행을 바꿀 수있다 (확인 : export는 더 이상 인식되지 않지만 setenv는 그렇다). 하지만 (1) echo $ SHELL 명령은 여전히 ​​bash를 보여줍니다. 더 중요한 것은 일부 환경 변수에 대해 .cshrc를 편집해야한다는 것입니다. 그러나 (2) .cshrc가 생성되지 않았습니다. 이 두 가지 점은 나를 혼란스럽게합니다. 여전히 chsh와 같지 않은 사소한 해결 방법이 있습니까? – Elan

+0

해결책은 여기 입니다. 1. .cshrc를 직접 만들고 에 내 물건을 넣으십시오. 2. bash의 명령 줄에서 tcsh를 호출 할 때마다 변경하십시오. 3. 매번 'source .cshrc'를 사용하십시오. 4. 빌드 소프트웨어 ? 다른 쉘 내에서 쉘을 호출 할 때 두 번이나 세 번 빠져 나와야한다는 것을 알았습니다. 위의 아이디어를주었습니다. – Elan

관련 문제