リモートコンピュータのZSH環境が壊れており、ssh経由でログインするとすぐにクラッシュします
Aug 20 2020
ルートアクセス権のないリモートコンピューターでoh-my-zshを実行するのに問題があったので、次の手順に従ってzshをダウンロードしてコンパイルしてみました。
「明示的に、またはプログラムで現在のシェルの起動ファイルから(適切な場所に) zshを起動することになっていた」最後のステップで混乱したことはわかっていますexec $HOME/bin/zsh -l。
exec $HOME/bin/zsh -l
〜/ .zshrcの最初の行に追加してソースを設定すると、すべてがフリーズしました。ログアウトした後、ssh経由でリモートにログインするとすぐにシェルがクラッシュするため、変更を削除できません。
Last login: Thu Aug 20 11:50:42 2020 from ***.***.***.*
~/.zshrc:3: exec format error: ~/bin/zsh
Connection to *my.remote* closed.
または、端末がクラッシュした後、VScodeリモートsshがこのエラーを返します。
The terminal process "/bin/zsh '-l'" terminated with exit code: 126.
私の愚かな間違いの助けは大歓迎です。ありがとう。
回答
1 chepner Aug 20 2020 at 18:44
exec $HOME/bin/zsh -l
ログインシェルに適切な構成ファイルを挿入する必要があります。それがbash
であると仮定して、行をに追加し.bash_profile
ます。コメントで推奨されているように、
ssh -t host vim
開始vim
(または選択したエディター)して.zshrc
、.bash_profile
適切に編集します。