目的
SSH接続先(EC2とかさくらのVPSとか)のフォルダをローカルPCのドライブにマウントできるようになります。
dokan と WinSSHFS でやろうと思ったら使える秘密鍵の形式が限られていたため探した対応法の備忘です。
ざっくり手順
じっくり手順
Rclone を入れる
- 環境にあったインストーラを落とす
GitHubのリンクもついており、そこから落とす方が速いかも知れない。 - インストール
任意のフォルダに解凍する。以下このフォルダをカレントディレクトリとして記載します
WinFsp も入れる
これをやらないと、マウントコマンド実行時に cannot find winfsp
と怒られる。
- WinFsp の「DOWNLOAD WINFSP」をクリックしてダウンロード
- インストール
特に難しいことなし
Rclone の設定ファイルを作る
設定ファイルを手作りする場合
設定ファイルを %APPDATA%\rclone\rclone.conf
に作成する。
マウントコマンドで設定ファイルパスを指定できるらしいので、気に入らなければ別の場所に作っても良い。
内容は "C:\Users\anata\.ssh\config
にある情報で足りる。
[settei-no-namae]
type = sftp
# ホスト
host = xxx-xxx-xxxxx.vs.sakura.ne.jp
# 秘密鍵のパス
key_file = C:\Users\anata\.ssh\id_ed25519
# ポート
port = xxxx
# ユーザー名
user = xxxxxx
shell_type = unix
md5sum_command = md5sum
sha1sum_command = sha1sum
いろいろ設定したい場合
ドキュメントを読んで頑張ってもいいけど、GUIのほうがやりやすいかも
マウント
Mドライブにマウントする例
rclone.exe mount settei-no-namae: M: --dir-cache-time 1m
--no-console
オプションを付けてもウィンドウが絶対起動し、閉じる(≠最小化)するとマウントが解除されてしまう。GitHubでも議論されているが、うまくいってないらしい。
スタートアップフォルダに .bat
を置くなり、タスクスケジューラに登録するなりするとよい。コンソールが立ち上がるのが気に入らないけど。
参考
-
Rcloneを用いたファイルシステムのマウント方法
- ほぼここを見れば実現できる
-
RcloneでGoogleドライブをローカルPCにマウント | DevelopersIO
- いろんなサービスとか接続方法に対応してて、これからも色んな場面で使えそう。