sshでリモートサーバーをマウント、便利にsshfs
開発の作業をしているときは、複数のホストのサーバーを行き来していろいろとオペレーションをするようなことがあると思います。
そんなときに1つのサーバーから作業できるよう、ssh経由でリモートのサーバーをマウントし、Localのファイルシステムのように見せることができるsshfsを紹介したいと思います。
sshfsのインストール
Debian/Ubuntuならaptで簡単インストールできます。なお、fuseグループに入っている必要があるので、その設定まで実施します。なお、ユーザー名はwadapで実施します。
$ sudo apt-get install sshfs $ sudo adduser fuse wadap $ newgrp fuse
以上、簡単ですね。
早速リモートホストをマウント
リモートホストをマウントするのは簡単です。マウントポイントをつくって、sshfsコマンドを実行するだけ。なお、sshのプロトコルで通信するので対象のサーバーにアカウントは必要です。
下記は、wadapというユーザーで、remoteserverというサーバーを、~/mntというマウントポイントにマウントする手順です。
$ mkdir mnt $ sshfs wadap@remoteserver:/ mnt $ df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda1 9835552 1295624 8040312 14% / varrun 127952 40 127912 1% /var/run varlock 127952 0 127952 0% /var/lock udev 127952 52 127900 1% /dev devshm 127952 0 127952 0% /dev/shm sshfs#wadap@remoteserver:/ 1048576000 0 1048576000 0% /home/wadap/mnt
正常にマウントできましたね。これで対象のマウントポイントへはLocalのファイルシステムの様にアクセスすることができます。
またマウントする際のオプションもいろいろとありますので、自分にあったオプションをつかってみてください。
Mac用にはMacFuse
なお、Macから使う際はMacFuseというものが用意されています。
Google Code Archive - Long-term storage for Google Code Project Hosting.
こちらも導入が簡単なので、興味がある方は是非トライしてみてください。下記の画像の様に簡単にリモートホストをマウントすることができます。
注意事項
sshfsはとても便利ですが、自分以外の人もアクセスできるようなオプションもつけることができます。当然ながら、自分のアカウントでマウントしているので、他の人も自分のアカウントで作業をできてしまうことになりますね。
間違って使ってしまうと問題になることもあると思うので、共有のサーバーで使う際は注意して使ってください。