fuse-sshfs
複数の Linux サーバーを運用していると、サーバー間でファイルをコピーまたは移動する必要がよくあります。CMU エクスポート、MySQL ダンプ、その他さまざまなケースがあるでしょう。
もちろん、その方法はいくつもあります。FTP、SCP、NFS (あまり勧められません)、SMB などです。
NFS はあまり安全ではなく、SMB はたまに使うだけにしては設定の手間が大きすぎます。各方式には長所と短所があります。
BlueOnyx は "fuse-sshfs" もサポートしています。
"fuse-sshfs" とは?
SSHFS (Secure SHell FileSystem) は、Linux (および Mac OS X や FreeBSD など FUSE 実装を持つ他 OS) 向けのファイルシステムで、リモートコンピューター上のファイルを、安全なシェルログインだけで扱えるようにする仕組みです。
SSHFS をマウントするローカルコンピューターでは、FUSE (Filesystem in Userspace) カーネルモジュールを利用します。実際には、ユーザーは SSH 経由で安全に提供されるリモートファイルを、自分のコンピューター上のローカルファイルのようにシームレスに扱えます。リモート側では SSH の SFTP サブシステムが使われます。
インストール方法
必要なのは、YUM でインストールするだけです。
yum install fuse-sshfs
これにより fuse-sshfs、fuse、fuse-libs がインストールされます。
使い方
たとえば、BlueOnyx サーバー here.company.com にログインしていて、there.company.com 上のディレクトリ /home/export へアクセスしたいとします。
まず、上記のとおり fuse-sshfs をインストールします。これはマウントを実行する側のサーバーだけに必要です。この例では here.company.com です。マウントされる側では SSH が動作していればよく、fuse-sshfs をインストールする必要はありません。
次に、here.company.com 上で、there.company.com の /home/export をマウントしたい空ディレクトリを root で作成します。
here#> mkdir /home/there
続いて、次のコマンドで SSHFS 経由でリモートディレクトリをマウントします。
here#> sshfs -p 22 root@there.company.com:/home/export /home/there
パラメータ -p 22 は、接続先サーバー (there.company.com) の SSH ポートを指定します。通常 SSH はポート 22 なので省略可能ですが、別ポートで動いている場合は正しいポートへ変更してください。
作業が終わったら、次のようにアンマウントできます。
here#> umount /home/there
詳細は SSHFS の man ページを参照してください。
man sshfs