Mac でクラウドをマウントしようとすると必ず詰まる場所
Synology や QNAP の NAS なら話は簡単です。SMB でつなげば Finder にボリュームが出てきます。ところが同じ感覚で S3 バケットや Cloudflare R2 をマウントしようとすると、macOS には手段がありません。
そこで登場するのが FUSE 系のドライバです。macFUSE と s3fs の組み合わせ、rclone mount、あるいは同じ土台の上に作られた市販のマウントツール。どれもカーネル拡張のインストールが前提になります。Apple シリコン搭載機でカーネル拡張を入れるということは、復旧モードで起動し、起動セキュリティユーティリティで低セキュリティに切り替え、システム設定で拡張を承認し、もう一度再起動するという手順を踏むということです。そして macOS のメジャーアップデートが来るたびに、ドライバがまだ読み込まれるかどうかを確かめる作業が発生します。
別の道もあります。Mac がずっと昔から話せるプロトコル、WebDAV です。Finder には WebDAV クライアントが最初から入っています。接続先を自分のマシンの中で動くサーバーにしてしまえば、カーネル拡張まわりの手順は丸ごと消えます。
Mac で WebDAV サーバーを起動する
AnyStorage のサイドバーからサービスを開き、WebDAV タブに切り替えて Start を押します。これで http://127.0.0.1:3211 で待ち受けが始まります。3211 が手元の別のサービスとぶつかるなら、1 から 65535 のあいだで好きなポート番号に変えられます。
HTTP Basic 認証は常に有効です。うっかり開けっ放しにしてしまう匿名モードは存在しません。ユーザー名の初期値は anystorage、パスワードは初めて有効にしたときに 24 文字のランダム文字列として生成されます。どちらも編集でき、再生成ボタンもあります。URL とユーザー名とパスワードにはそれぞれコピーボタンが付いています。この 3 つはこのあと Finder に貼り付けることになるからです。
有効のままにしておけば、次にアプリを起動したときサーバーも一緒に立ち上がります。
Finder のサーバへ接続でマウントする
メニューバーの移動から、サーバへ接続を選びます。Cmd+K でも同じです。http://127.0.0.1:3211 を貼り付けて接続を押し、認証画面では登録ユーザを選んで、WebDAV タブに表示されているユーザー名とパスワードを入力します。
ボリュームがマウントされると、その時点で AnyStorage 上で接続中になっているストレージが、接続名のフォルダとしてルート直下に並びます。S3 バケット、R2 バケット、Google ドライブ、Dropbox、SFTP でつないだサーバー、ローカルの普通のフォルダ。こうして見せられる接続の種類は全部で 20 あります。
ひとつだけ先に伝えておきたい挙動があります。接続は遅延して張られる仕組みなので、アプリを再起動したあとは、その接続を一度アプリ内で開くまで WebDAV のルートに現れません。タブを開けばフォルダが出てきます。逆に、サーバーが動いている最中に追加した新しい接続は、再起動なしでそのまま現れます。
Finder はおしゃべりですが、相手がローカルなら困りません
読み取りは HTTP Range に対応したストリーミングです。IINA や QuickTime Player で大きな動画のシークバーを中盤まで動かしても、ファイル全体を先にダウンロードすることはありません。クイックルックも使えます。バケットの中の RAW フォルダをまるごとデスクトップにドラッグすることもできます。標準の開くダイアログを持つ Mac アプリなら、どれからでもこのマウント先に届きます。これが本題です。Finder は数あるクライアントのひとつにすぎません。
その Finder は、WebDAV クライアントとしてはかなりのおしゃべりです。ディレクトリに入るたびに PROPFIND を連射し、.DS_Store を書き込み、存在しない AppleDouble のファイルを探しにいきます。サーバーがインターネットの向こう側にある場合、この往復こそが WebDAV は遅いという評判の正体です。ただ、相手が 127.0.0.1 なら 1 往復はミリ秒未満で終わるので、おしゃべりはほとんど問題になりません。残る待ち時間は実際のバックエンドのものであり、そこは必要な範囲だけ取りに行きます。
巨大なディレクトリの一覧表示はやはり時間がかかります。遅いのはバックエンド側の一覧取得なので、ローカルのサーバーでは短縮できません。
先に知っておいてほしい制限
- 無料版は読み取り専用で動きます。閲覧、再生、ファイルの取り出しは問題ありません。書き戻すには Pro ライセンスの完全な制御モードが必要です。Pro でもあえて読み取り専用に固定できます。よく知らないアプリを本番データに向けるときは、そのほうが安全です。
- 現行バージョンに TLS はありません。エンドポイントは平文の http、認証方式は HTTP Basic です。既定で 127.0.0.1 だけにバインドしているのはそのためです。LAN アクセスという選択肢も用意していますが、有効にすると認証情報がネットワーク上を平文で流れるため、アプリがはっきり警告します。
- ファイルロックはありません。2 台のマシンからマウント越しに同じ書類を同時編集する使い方は保護対象外です。チーム共有の基盤として扱わないでください。
- 最上位の接続フォルダは WebDAV 経由で名前変更も削除もできません。マウント越しに、ある接続から別の接続へファイルを直接移動またはコピーすることもできません。ストレージをまたぐ転送はアプリ側で行ってください。進捗を確認しながら転送できます。
ここまでの作業はカーネルに一切触れていません。管理者パスワードも、手で書き換える設定ファイルも、当てずっぽうで決めるキャッシュモードの指定も出てきません。次の macOS アップデートも、あなたがこれをやったことなど気にしません。