2011-12-22 14 views
1

sshfsでマップされたネットワークドライブがある場合、そのディレクトリに変更するたびにssh経由で自動的にログオンする方法はありますか?マッピングされたsshfsに移動するときの自動sshセッション

$USER:$LOCALHOST:~: sshfs $USER:$REMOTEHOST /Volumes/dev0 
$USER:$LOCALHOST:~: cd /Volumes/dev0 
$USER:$REMOTEHOST:~ 
+0

プログラミングとは何が関係していますか? –

+0

こんにちはユージーン、そうです、私はここでこの質問を追加しました。私はそれがスーパーユーザの方に適していると思います。 (私が間違っている場合は、どこに移動することをお勧めしますか?)これを貼り付けなくてもSuperUserに移動する方法もあります。 –

答えて

1

Thomas Jansson provides a guide on integrating sshfs with autofs。私はここで彼のガイドをまとめますので、彼のサイトは今までオフラインになった場合には、この答えは、まだ何か価値があるだろう:

/etc/auto.masterを作成します。

/mnt/sshfs /etc/auto.sshfs uid=1000,gid=1000,--timeout=30,--ghost 

あなたuidgidは、ユーザーIDと一致していることを確認してくださいとのGUID /etc/passwdまたはシステムアカウントを提供するために使用するもの。

ここで、次の形式で、/etc/auto.sshfs、希望のファイルシステムごとに一つに行を追加します。

bar -fstype=fuse,rw,nodev,nonempty,noatime,allow_other,max_read=65536 :sshfs\#[email protected]\: 

は、使用することになるだろうどのようなユーザーアカウントとホスト名に[email protected]を変更してください。先導番号barを、ディレクトリの名前を付けたいものに変更します。 cd /mnt/sshfs/barの場合、autofsは自動的にFUSEファイルシステムをマウントします。もちろん、SSHキーとssh-agent(1)を使用すると、これはもっと楽しいものになります。

更新

...文字通り、他のマシンにログインできますディレクトリを作成します。

ねえ、それはかなり巧妙な考えです。ディレクトリ名を確認するshell functioncdに書き込んで、sshを新規作成するか、おそらく、ディレクトリ名が一致する場合、PROMPT_COMMAND変数をホストにsshに(ab)使用できます。いずれかのアプローチがになります。通常のメッセージを表示するたびに、通常のメッセージを遅くします。cdまたは

私が使用して楽しんできた別のアプローチは、小さな小さなヘルパースクリプトで、~/bin/ssh-to:このシェルスクリプトに

#!/bin/bash 
hostname=`basename $0` 
ssh $hostname $* 

シンボリックリンクの新しい名前:ln -s ssh-to sarnold.orgして、次のコマンドを実行するかにログインすることができますsshすべての時間を入力せずにリモートサイト:

sarnold.org python foo.py 

それはあなたがそれを与えるものは何でも、コマンドのシンボリックリンクと実行の名前のために使ってきたどんなマシンにあなたを記録します。

+0

ちょっとアーノルドは、FSのマウントを自動化するのには十分ですが、おかげさまで、私は文字通り他のマシンにあなたをログインさせるディレクトリを作成する方法を探していました。そのマシンでコマンドを実行する必要があるとします(おそらくpython bar/foo。py)を管理するには、2番目の端末を開いておく必要があります。 –

関連する問題