Kann ich in mein Konto ssh, ohne .profile aufzurufen?


10

Ich möchte ssh in mein Konto, aber ich möchte nicht, dass die aktuelle Version meines .profile-Anmeldeskripts ausgeführt wird. Gibt es eine Möglichkeit, sich anzumelden, ohne .profile auszuführen?

(Haftungsausschluss: Ich habe eine Problemumgehung gefunden, die ich unten gepostet habe, aber ich frage mich, ob es eine bessere Antwort gibt.)

Antworten:


16

Sie können den folgenden Befehl ausführen:

ssh -t user@host bash --noprofile

wo -tOption sshist zu zwingen tty Zuweisung.


Danke! Dies half mir, mich bei meinem Server anzumelden, der eine volle Festplatte hatte. Es hat eine Weile gedauert, bis mir klar wurde, dass meine .bashrc möglicherweise Festplattenschreibvorgänge ausgelöst hat.
Ben Davis

3

Das habe ich letztendlich getan:

scp me@machine:.profile .
# Fix .profile
scp .profile me@machine:.
ssh me@machine

3

Um Probleme dauerhaft zu vermeiden, habe ich .bashrcauf meinem Zielsystem:

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

umgebende ssh-inkompatible Sachen. SSH_CLIENTwird für Shells definiert, die über ssh aufgerufen werden, und nicht für andere Shells.

ssh user@somewhere "env >env.ssh"

Gehen Sie so vorbei somewhere, melden Sie sich an userund:

env >env.local
diff env.local env.ssh
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.