SSH 로그인에서 자동으로 명령을 실행하는 방법은 무엇입니까? 로그인 할 때마다 몇 가지

Linux 서버에 로그인 할 때마다 몇 가지 명령을 자동으로 실행하고 싶습니다 (일부 변수 설정, 위치 변경 등).

시스템 시작이 아닌 사용자 로그인시 수행해야합니다.

이를 위해 어떻게 설정할 수 있습니까?



답변

에 명령을 넣습니다 ~/.bashrc. 로그인 할 때마다 실행됩니다.

ssh를 통해 로그인 할 때만 (물리적으로 로그인 할 때) 실행해야하는 명령이 필요한 경우 SSH_CONNECTION환경 변수 가 있는지 테스트 하고 명령이 존재하는 경우에만 명령을 실행할 수 있습니다.


답변

모든 사용자에게 이것을 원한다면 이것을 ~ / .bashrc 또는 /etc/bash.bashrc에 넣으십시오.

if [[ -n $SSH_CONNECTION ]] ; then
    echo "I'm logged in remotely"
fi


답변

또는 다음을 호출하는 동안 실행할 명령을 지정할 수 있습니다 ssh.

$ ssh -t server 'cmd; exec bash -l'

목록의 마지막 명령은 선호하는 쉘에서 대화식 세션을 시작해야합니다. 실행할 명령이 많으면 SSH 서버에서 스크립트 파일을 작성하십시오.


답변

사실 ~/.ssh/rc때 실행할 명령을 추가 할 수있는 권리 곳입니다 당신이 로그인 오히려 시스템의 모든 사용자보다가.

 ~/.ssh/rc
         Commands in this file are executed by ssh when the user logs in,
         just before the user's shell (or command) is started.  See the
         sshd(8) manual page for more information.


답변