.profileを呼び出さずに自分のアカウントにSSH接続できますか?


10

アカウントにsshしたいのですが、.profileログインスクリプトの現在のバージョンを実行したくありません。.profileを実行せずにログインする方法はありますか?

(免責事項:以下に投稿した回避策を見つけましたが、もっと良い答えがあるかどうか疑問です)

回答:


16

次のコマンドを実行できます。

ssh -t user@host bash --noprofile

ここで、-tオプションsshtty割り当てを強制することです。


ありがとうございました!これは、ディスクがいっぱいのサーバーにログインするのに役立ちました。.bashrcがディスク書き込みをトリガーしている可能性があることを理解するのにしばらく時間がかかりました。
Ben Davis


3

問題を永久に回避するために、私.bashrcはターゲットシステムで次のようにしています。

if [ -z "$SSH_CLIENT" ] ; then  
...
fi

sshと互換性のないものを囲んでいます。SSH_CLIENTsshを介して呼び出されたシェルに対して定義され、他のシェルに対しては定義されません。

ssh user@somewhere "env >env.ssh"

その上を歩いてsomewhere、としてログインしuser

env >env.local
diff env.local env.ssh
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.