web-dev-qa-db-ja.com

ユーザーがリモートサーバーにSSHで接続する場合にのみ、SSHFS自動マウントを設定しますか?

リモートサーバーにSSHで接続するたびに、ファイル転送フォルダーがマウントされるようにSSHFSを設定したいと思います。そのように設定することは可能ですか?


@Alexのコメントの後にスクリプトを作成します。

私のスクリプトはとてもシンプルです。

#! /bin/bash
#login in the server
ssh -X [email protected]
#establish the automated mounting
sshfs [email protected]:/home/usr/data /usr/some/place/mountedfolder/ -ovolname=mounted-folder

しかし今、私がこのファイルを実行すると。最初にsshが確立され、次にsshを終了した後でのみ、フォルダーがsshfsでマウントされます。

私はここで何が間違っているのですか?


今のところ、簡単な修正を行いました:->コマンドの順序を切り替えました。最初にsshfs、次にsshのように、最初にマウントし、次にssh接続を確立します。

#! /bin/bash
#establish the automated mounting
sshfs [email protected]:/home/usr/data /usr/some/place/mountedfolder/ -ovolname=mounted-folder
#login in the server
ssh -X [email protected]

今のところうまくいくようです。

3
hadi k

@Alexのアドバイスに従って、最初にマウントし、次にsshをリモートサーバーにマウントする簡単なスクリプトを作成しました。これは希望どおりに機能します。

#! /bin/bash
#establish the automated mounting
sshfs [email protected]:/home/usr/data /usr/some/place/mountedfolder/ -ovolname=mounted-folder
#login in the server
ssh -X [email protected]
#unmounting the directory after logout
umount [email protected]:/home/usr/data  

スクリプトの実行を簡単にするために、以下の2つの手順に従ってスクリプトを実行可能にしました。

  1. sshautomatic.sh/usr/local/binという名前の簡単なスクリプトを書きました(私はOSXを使用しています)
  2. 次に、/usr/local/binで:Sudo ln -s sshautomatic.sh sshautomaticによってシンボリックリンクを確立します。
  3. 最後に、次の方法でsshautomatic.shを実行可能にします。chmod +x sshautomatic.shこれで、コマンドsshautomaticを入力するだけで、ターミナルからヒューズマウントとssh接続を確立できます。
1
hadi k