SFTP経由でリモートホストをマウントし、ローカルキャッシュと非同期書き戻しを備えたユーザー空間FUSEファイルシステム。
libfuse/sshfs
SFTP経由でリモートファイルシステムをマウントし、SSHサーバー上のファイルをローカルフォルダのように閲覧・編集できるFUSEベースのクライアントです。
- スター
- 7,744
- フォーク
- 553
- 未解決の Issue
- 58
- 最終コミット
- 12 時間前
これは何?
SSHFSはSFTPを使ってリモートファイルシステムをローカルのマウントポイントにマウントします。ほとんどのSSHサーバーではSFTPがデフォルトで有効になっているため、サーバー側の設定は不要です。ユーザー名、ホスト名、ディレクトリのパスを指定してsshfsを実行するとリモートディレクトリがマウントされ、パスを省略した場合はホームディレクトリが使われます。カスタムポートなどの標準的なSSHオプションも渡せます。
SSH暗号化を介さずにsftp-serverプロセスへ直接接続するダイレクトモードも用意されています。このモードはlocalhostや信頼できるネットワークでの利用を想定しています。また、仮想マシン内のソケットに接続するためのvsockオプションもあります。インストールにはlibfuse 3.1以降とGLibが必要で、MesonとNinjaを使ってビルドします。アンマウントにはLinuxではfusermount、BSDとmacOSではumountを使います。
主な機能
- 01サーバー側の設定なしで、SFTP経由でリモートディレクトリをマウント
- 02カスタムポートなどのSSHオプションをコマンドラインから渡せる
- 03SSHを介さずにsftp-serverへ直接接続できる
- 04仮想マシンへのvsock接続に対応
- 05MesonとNinjaでビルドでき、pytestのテストスイートを備える
ユースケース
- ローカルのエディターやIDEでリモートサーバー上のファイルを編集する
- vsock経由でホストから仮想マシン内のファイルにアクセスする
- 日常的なファイルアクセスのためにリモートのホームディレクトリをマウントする
クイックスタート
- 1
SSHFSの最新リリースをダウンロードし、libfuse 3.1.0以降とGLibの開発用ヘッダーをインストールします
- 2
ビルドディレクトリを作成して移動し、Mesonを実行します
meson .. - 3
NinjaでSSHFSをビルドします
ninja - 4
SSHFSをシステム全体にインストールします
sudo ninja install
使う前に知っておきたいこと
- SSHFSはコピーレフトライセンスであるGPL-2.0でライセンスされています。
- 唯一のメンテナーには影響の大きい問題以外を開発する余力がなく、ほとんどのバグ報告に返答がない可能性があります。
- directportオプションは暗号化せずに接続するため、localhostまたは信頼できるネットワークでのみ使用してください。
トピック
よくある質問
- sshfs とは?
- SFTP経由でリモートファイルシステムをマウントし、SSHサーバー上のファイルをローカルフォルダのように閲覧・編集できるFUSEベースのクライアントです。 SSHFSはSFTPを使ってリモートファイルシステムをローカルのマウントポイントにマウントします。ほとんどのSSHサーバーではSFTPがデフォルトで有効になっているため、サーバー側の設定は不要です。ユーザー名、ホスト名、ディレクトリのパスを指定してsshfsを実行するとリモートディレクトリがマウントされ、パスを省略した場合はホームディレクトリが使われます。カスタムポートなどの標準的なSSHオプションも渡せます。
- sshfs は無料で使えますか?ライセンスは?
- sshfs は GPL-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- sshfs は今もメンテナンスされていますか?
- 活発にメンテナンス中。sshfs の最終コミットは 2026年11月7日 です。
- sshfs は何に使えますか?
- ローカルのエディターやIDEでリモートサーバー上のファイルを編集する vsock経由でホストから仮想マシン内のファイルにアクセスする 日常的なファイルアクセスのためにリモートのホームディレクトリをマウントする
- sshfs のインストール方法は?
- SSHFSの最新リリースをダウンロードし、libfuse 3.1.0以降とGLibの開発用ヘッダーをインストールします ビルドディレクトリを作成して移動し、Mesonを実行します: meson .. NinjaでSSHFSをビルドします: ninja SSHFSをシステム全体にインストールします: sudo ninja install
- sshfs はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/libfuse/sshfs
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
TailscaleのWireGuardデータプレーン経由で、アカウントやコントロールプレーンなしに2台を接続するnetcat風CLI兼Goライブラリ。
FUSE経由で暗号文のフォルダを平文として参照できるようマウントする、Go製の暗号化オーバーレイファイルシステムです。
複数のクラウドドライブやS3/WebDAV系ストレージを単一のローカルフォルダにマウントするGo製ツール。rclone互換のエンドツーエンド暗号化に対応。
ローカルマシンからSSHホスト、コンテナ、VM、Kubernetesクラスター、クラウドサーバーにまとめて接続できるデスクトップ接続ハブです。