GNU/Linux >> Znalost Linux >  >> Linux

Vzdáleně jsem pokazil můj .bash_profile, nelze se vrátit pomocí ssh

Jak je zde popsáno, můžete použít

ssh -t [email protected] bash --noprofile

ve skutečnosti, jak navrhuje @JoL, nepotřebujete ani --noprofile , protože když ssh spustí bash jako další příkaz, nepovažuje se za přihlašovací shell. Spouští se ssh -t [email protected] bash bude číst pouze soubory RC; a běží ssh -t [email protected] bash --norc nebude číst ani ty.


Zkuste použít SSH a spustit sh místo bash , např.

ssh [email protected] sh

Poté přejmenujte (mv ) nebo upravte poškozený soubor (ex/vi ).


Spusťte ssh -t host vi .bash_profile (nebo vámi zvolený editor namísto vi ) a opravte .bash_profile .

(-t V závislosti na zvoleném editoru nemusí být tato možnost nutná.)

Pokud přesně víte, co je potřeba opravit, možná to budete moci opravit neinteraktivně. Například něco jako

printf 's/exec foo/. foo/\nwq\n' ssh host ed .bash_profile

Linux
  1. Ssh – Zkopírujte soubor zpět do místního systému pomocí Ssh?

  2. Ssh – Omezení uživatele Ssh/scp/sftp na adresář?

  3. Ssh – Přidání uživatele, který může spouštět skripty pouze vzdáleně?

  1. Ssh – Jak vzdáleně upravovat soubory přes Ssh?

  2. linux spustit příkaz vzdáleně

  3. SSH s autorizovanými klíči do systému Ubuntu se zašifrovaným homedir?

  1. Jak se mohu vyhnout ověření hostitele SSH pro známé hostitele?

  2. Vzdáleně spustit skript na Unixu, získat výstup lokálně?

  3. Jak se mohu odhlásit z otevřené vzdálené relace SSH?