SSH接続が最初に確立されたときにsshfsを使用してリモートシステムにディレクトリを自動的にマウントし、接続が終了したらディレクトリをアンマウントしたいと思います。
現在SSH用のControlMasterツールを使用しているので、初めてリモコンに接続するときにパスワードを入力するだけです。同時に複数のSSH接続が実行されることがよくあります。
接続すると、sshでスクリプトを実行でき(これを行う方法があったと思います)、スクリプトはインストールを試みる前にインストールが存在することを確認できると思います。
しかし、最後のSSH(デフォルトSSH)が終了したときにインストールを消去する方法はわかりません。
答え1
接続中にコマンドを実行するオプションは、に設定して有効にする必要がありLocalCommand
ます。PermitLocalCommand
yes
ssh -oPermitLocalCommand=yes -oLocalCommand="sshfs server:dir /mnt &" myhost
これ&
がなければ、sshfsが終了するまで実際の接続は開かれません。これはマスターサーバーでのみ実行されます(したがって追加するのは安全です~/.ssh/config
)。
シャットダウン時にコマンドを実行するのと同じものはありませんが、プライマリ接続と同じホストでsshfsを使用する限り、その接続を使用します。基本セッションのシェルが終了すると、他の接続が閉じられるまでセッションは閉じられません。またはマスターが終了します。。したがって、Ctrl-Cシェルを終了して入力すると、プロセスも終了し、sshfs
ファイルシステムがマウント解除されます。