linux

sshfsを使ってSSH経由でディスクをマウントする

2018年11月17日

Linuxを利用してESXiサーバ内のデータを操作する場合、SSHを経由して実行しますが、毎回[ユーザ名]@[ホスト名]:[パス先]と打つのがめんどくさい。
SSH先のディレクトリをマウントし、簡単に操作できるようにしたいと思い、探してみるとsshfsを使えば簡単にマウントすることができるようです。

利用環境

OS:CentOS Linux release 7.5.1804 (Core)

インストール

通常のリポジトリにはsshfsがないため、epelリポジトリを使用してインストールします。

#epelリポジトリのインストール
yum install epel-release
#epelリポジトリを有効化にし、sshfsをインストール
yum install fuse-sshfs --enablerepo=epel

使い方

接続方法

sshfs [ユーザ名]@[ホスト名]:[パス先] [マウント先ディレクトリ]
でつながります。

[root@localhost mnt]# sshfs root@192.168.***.***:/var/log /mnt/aaa/
[root@localhost mnt]#

mountコマンドの代わりにsshfsになり、あとは接続先、マウント先を設定すれば接続できます。
接続先はトップディレクトリの必要はなく、SSHでアクセスできるディレクトリならばどこでもよさそうな感じ。

切断方法

umount [マウント先ディレクトリ] で切断できます。

[root@localhost mnt]# umount /mnt/aaa/

umountだと一般ユーザは使えません。
一般ユーザで切断したい場合はfusermountを使えばいけるようです。

[root@localhost mnt]# fusermount -u /mnt/aaa/

最後に

何かとSSH接続して他のサーバとのデータやりとりを行う場合が多いときは上記の方法で行うと簡単にファイル操作ができるんじゃないかなと思います。
NAS接続とは違って暗号化通信するので経路上のデータ窃取リスクが軽減できますしね。
インストール作業が必要なので許容できるサーバかつ複数作業を行う必要があるのであれば上記方法やってみるのも手ではないでしょうか。

参考

sshfsを使ったのでまとめる(Centos 7) - St_Hakky’s blog
sshで他マシンのファイルシステムをマウントするには - @IT

-linux
-, , ,