.bashrc
시작 시 다음 줄을 실행 하는 서버가 있습니다 /bin/watch ~/checker.bash
. 예상대로 서버가 시작될 때 명령을 모니터링합니다.
또한 해당 컴퓨터에 클라이언트가 로그인되어 있지만 클라이언트 세션이 .bashrc
.
환경 변수 전달을 조사했지만 AcceptEnv
서버를 구성해야 하는데 이를 피하고 싶습니다.
또한 다른 사용자에 대해 .bashrc
두 개의 다른 사용자 계정을 갖고 싶지 않습니다.
이 문제에 접근할 수 있는 다른 각도가 있습니까?
답변1
두 가지 방법:
이 세션에서는 bash를 사용하지 말고 대시(또는 /bin/sh)를 사용해 보십시오.
ssh 127.0.0.1 /bin/dash
시작 파일 처리를 비활성화하려면 명령 옵션과 함께 bash를 사용하십시오.
ssh 127.0.0.1 "bash --noprofile --norc"
답변2
.bashrc
호출이 실패한 경우에만 부품을 활성화할 수 있습니다 ssh
.
예를 들어:
# within an SSH-session, ${SSH_TTY} will be set
if [ "x${SSH_TTY}" = "x" ]; then
/bin/watch ~/checker.bash
fi
답변3
/bin/watch.... 라인을 다음으로 바꿀 수 있습니다.
if ps ax | grep /bin/watch | grep -v grep > /dev/null 2>&1
then
echo "Nothing to do"
else
/bin/watch ~/checker.bash
fi
또는 그런 것.