Rclone を使ってみる

sshfs と似たようなこともできる Rclone も使ってみました。

Rclone は ssh(sftp) だけでなく Amazon S3 とか Google Cloud Storage のようなクラウドのオブジェクトストレージとか、その他色々使えます。非常に高機能です。

scoop でサクッとインストールできます(chocolatey でもパッケージはあったのでインストールできると思います)。

scoop install rclone

rclone config で対話式に接続情報を入力します・・が、とても入力しにくいので設定ファイルを直接編集しても良いと思います。rclone config file で設定ファイルのパスが表示されます。

次のような設定ファイルを作ります。

[ore-no-server]
type = sftp
host = ore-no-server.example.com
user = oreore
port = 22
key_file = C:\Users\oreore\.ssh\id_ed25519

これで下記のようにするとリモートホストのディレクトリが指定したローカルのディレクトリにマウントされます(ローカルのディレクトリは存在しないものを指定する必要があります)。

rclone mount ore-no-server:/ ore-no-server/

なお、パスワードを記入するときはなにやら暗号化する必要があるようで、その場合は rclone config で対話式で入力するしか無さそうです。

また、SSH 接続に ssh コマンドではなく golang の ssh パッケージ が使われているようで .ssh/config は無視されるようです。

下記によると pageant は利用できるようですが、いわゆる OpenSSH for Windows の ssh-agent(OpenSSH Authentication Agent サービス)は利用できないようです。

さいごに

あらかじめ設定ファイルを作っておく必要があるのがちょっと不便そうです。それなら SSHFS-Winsshfs-win.exe コマンドを直でつかえば良いようにも思います。

ただ、SSH エージェント(pageant だけど)や ed25519 鍵が使えるのは大きなメリットです。今後もし使うなら Rclone の方がよいでしょうか。

Rclone のサイトでは、Amazon S3 とかのクラウドストレージをマウントするのがメインの機能っぽく説明されていますが、そっちはあまり用途が思いつきません。うーん、S3 を普通の自分用ストレージとして使うなら便利なのかもしれないですけど、そんな用途で使うことありますかね?

なお Rclone でマウントしたディレクトリはやっぱり WSL1 からはアクセス出来ません、しょぼん。