.bashrc
起動時に次の行を実行するサーバーがあります/bin/watch ~/checker.bash
。予想どおり、サーバーの起動時にコマンドをモニターします。
また、そのコンピュータにクライアントがログインしていますが、クライアントセッションが.bashrc
。
環境変数の配信を調べましたが、AcceptEnv
サーバーを構成する必要がありますが、これを避けたいと思います。
また、他のユーザーに対して.bashrc
2つの異なるユーザーアカウントを使用したくありません。
この問題にアクセスできる他の角度はありますか?
答え1
2つの方法:
このセッションでは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
またはそのようなもの。