sshfs マウントできない・遅いときの原因と対処

  • URLをコピーしました!

sshfs (SSH Filesystem) は、リモートサーバー上のディレクトリをローカルにマウントできる便利な仕組みです。
しかし、実際に利用してみると「マウントできない」「動作が異常に遅い」といった問題に直面することがあります。

この記事では、原因ごとに切り分け・対処方法を整理して解説します。

目次

1. sshfs がマウントできないときの確認ポイント

(1) ssh 接続自体ができない

まずは通常の SSH 接続が可能か確認します。

ssh user@remote-server
  • 接続エラー → ネットワーク・ファイアウォール・SSH 設定を確認
  • 公開鍵認証の設定や ~/.ssh/config の記述ミスも見直す

(2) マウント先ディレクトリが存在しない

sshfs では マウント先の空ディレクトリ が必要です。

mkdir -p ~/remote_mount
sshfs user@remote:/path/to/dir ~/remote_mount

存在しないディレクトリを指定するとエラーになります。

(3) fuse / sshfs がインストールされていない

  • Ubuntu/Debian 系 sudo apt install sshfs
  • RHEL/CentOS 系 sudo yum install fuse-sshfs

fusermount コマンドが存在するかも確認しましょう。

(4) パーミッションの問題

  • ローカルのマウントポイントの権限
  • リモートのディレクトリ権限

を確認し、実行ユーザーでアクセスできるかチェックします。

2. sshfs が遅いときの原因と対処

(1) ネットワーク遅延・回線速度

sshfs は SSH トンネルを介して転送するため、ネットワーク品質に大きく依存します。

  • ping remote-server
  • iperf3 で回線速度を計測

回線が細いと体感的に極端に遅くなります。

(2) 暗号化アルゴリズムの影響

SSH の暗号化方式が重いと CPU 負荷で遅くなることがあります。

対策例(軽量アルゴリズムの利用)

sshfs -o Ciphers=arcfour user@remote:/path ~/remote_mount

※セキュリティより速度を優先したい場合に限定

(3) SFTP プロトコルの特性

sshfs は SFTP を利用しているため、小さいファイルが大量にあると遅くなります。

対策

  • rsyncscp に切り替えて転送
  • 大量ファイル用途では sshfs より NFS/Samba の検討も有効

(4) キャッシュオプションを活用する

sshfs にはキャッシュを制御するオプションがあります。

例:属性キャッシュを有効にしてアクセス高速化

sshfs -o cache=yes -o attr_timeout=3600 user@remote:/path ~/remote_mount

(5) DNS 解決が遅い

ホスト名で接続している場合、DNS 解決がボトルネックになっていることもあります。

  • /etc/hosts に直接 IP を書く
  • IP アドレスで接続する

ことで改善する場合があります。

3. 実運用での工夫

  • -o reconnect を付けて切断時の自動再接続を有効化
  • 大容量ファイルコピーは sshfs より rsync を使う
  • 頻繁な読み書きが必要なら NFS/Samba を検討

まとめ:原因と対処の対応表

症状主な原因確認方法対処法
マウントできないSSH 接続エラーssh user@hostネットワーク・鍵設定確認
マウントできないマウント先ディレクトリなしls ~/mountdirmkdir -p ~/mountdir
マウントできないsshfs/fuse 未導入which sshfsパッケージインストール
マウントできない権限不足ls -ld で権限確認実行ユーザーに権限付与
動作が遅いネットワーク遅延ping, iperf3ネットワーク改善
動作が遅い暗号化方式が重いtop で CPU 負荷確認軽量 Cipher 指定
動作が遅い小さいファイル多数ls -lrsync/NFS/Samba 検討
動作が遅いキャッシュ未設定オプション確認-o cache=yes
動作が遅いDNS 解決遅延time ssh user@host/etc/hosts に IP 記載
目次