Mac業界の最新動向はもちろん、読者の皆様にいち早くお伝えしたい重要な情報、
日々の取材活動や編集作業を通して感じた雑感などを読みやすいスタイルで提供します。

Mac Fan メールマガジン

掲載日:

iCloud Driveの特異性。マウントされないストレージはmacOSとどのように統合されているのか – Mac活用“ワンランクアップ”講座 第21回

著者: 海上忍

本ページはアフィリエイト広告を利用しています

iCloud Driveの特異性。マウントされないストレージはmacOSとどのように統合されているのか – Mac活用“ワンランクアップ”講座 第21回

オンラインストレージの進化とiCloud Drive

ネットワーク上のファイル置き場「オンラインストレージ」は、Macユーザのみならず、ほとんどすべてのスマートフォンユーザにとって不可欠な存在です。Appleは「iCloud Drive」を、Googleは「Google Drive」を提供し、システムのバックアップやクロスデバイス(例:MacとiPhone間のファイル連係)強化を目的にシステムとの融合を深め、いまやOSのインフラといえるほど浸透しています。

このオンラインストレージは、インターネットに接続しサインインを完了しておけばいつでもファイルブラウザ(Macの場合Finder)からアクセスできる、空気のような存在として認識されているかもしれません。

しかし、そのように進化したのは最近のこと。2000年にiToolsの一部として登場し、有料オンラインサービスMobileMeに含まれる形で2012年まで提供されていた「iDisk」は、Finderからサーバへ接続する操作を経て、ファイルシステムにマウントする形で提供されていました。あくまで外部の領域、Macの外にあるサービス、という位置付けです。

ひるがえってiCloud Driveはどうでしょう? Finderのサイドバーにある「iCloud Drive」を開くと、NumbersやPagesなどのフォルダが現れ、一見すると内蔵ストレージと変わりません。ときどき開くまで時間がかかる書類はあるものの、書き込みは瞬時に終わるなど、内蔵ストレージと大差ない感覚で利用できます。

では、iCloud Driveはどのような形でmacOSのファイルシステムに統合されているのでしょうか。今回は、Finderを介して、どのようにiCloud Driveが見えるかについて解説します。

Macで「iCloud Drive」はどう見える?




「/System/Volumes」を調べる

macOSのようなUNIX系OSのファイルシステムを理解するとき、知っておかねばならない概念が「/(ルート)」です。ルートとは、すべてのファイルやフォルダ(ディレクトリ)の起点となる最上位の階層で、木にたとえれば「切り株」。その中にいくつかのフォルダが作成され、さらにその中にフォルダやファイルが作成され…と木の根に似た構造を作り出していきます。

メモリカードやUSBディスク、NASといった外部装置も、「/」にぶら下がる形でシステムに認識されます。macOSでは「/System/Volumes」がその基点となり、外部装置がファイルシステムに接続(マウント)されるとそのボリューム名がフォルダ名となります。たとえば、「SDCARD」という名の外部装置が認識されると、「/System/Volumes/SDCARD」というフォルダがファイルシステム上に出現します。

重要なシステム領域も、Macの起動処理のとき「/System/Volumes」にマウントされます(下表)。しかし、ターミナルで「mount」コマンドを使って確認しても、iCloud Driveは見つかりません。なにかファイルを保存すれば同期しているiPhoneにすぐ反映されるため、ファイルシステム上存在していることは確かなのに…なぜ?

名称主な役割
VMスワップファイルやスリープイメージの保存領域
Prebootシステムが起動するために必要な最小限のリソース
Updateシステムアップデートを安全に実施するための作業領域
xartsハードウェア暗号化鍵やTouch IDのデータ
iSCPrebootApple Silicon Macの起動時に用いる必要最小限のリソース
HardwareMac固有のハードウェア情報
Data「Macintosh HD」として扱われる書き込み可能なデータ領域
「/System/Volumes」以下に存在するシステム領域の役割(Apple Silicon Macの場合)
メモリカードやNASとは違い、「iCloud Driveは/System/Volumes」以下に存在しません。

iCloud DriveとNASは似て非なるもの

iCloud Driveは、いわば「マウントされないストレージ」です。サインインすると自動的にAppleのサーバと同期を開始し、iCloud Drive対応アプリは「/Users/ユーザー名/Library/Mobile Documents」上の所定のフォルダにファイルを読み書きします。同じネットワーク上に存在するストレージでも、NASのように「/System/Volumes」以下にマウントされるわけではありません。

Mobile Documents以下にあるフォルダは、基本的にはiCloud Drive対応アプリが自動的に作成するもので、その中のファイルに変更がくわえられると自動的にサーバへ変更が伝えられます。

Mobile DocumentsフォルダとAppleのiCloudサーバは、システム常駐のプロセス「cloudd」を介して双方向で同期を実行。ファイルをつねに最新の状態に保ちます。しかも転送されるデータは変更により生じた差分のみ、処理はおおむね高速です。

ただし、同期は基本的にフォルダ単位・アプリ単位で実行されます。システム設定アプリの「自分の名前」→「iCloud」→「Drive」にある「iCloud Driveに同期しているアプリケーション」でスイッチをオフにしたアプリも、同期の対象外となります。

「/System/Volumes」以下にマウントされた外部装置は、ファイル操作をFinderで行おうがターミナルで行おうが違いはありません。しかし、iCloud Driveは必ずしも同じ結果になるとは限りません。

前述したclouddは、「/Users/ユーザー名/Library/Mobile Documents」以下の領域を監視していますが、ターミナルで実行するコマンド(mvやcpなど)には差分同期やコンフリクト解決などサーバと協調する機能がなく、最悪の場合ファイルを破損してしまうことがあるからです。安易にターミナルから操作しないようにしましょう。

iCloud Driveは差分同期などサーバと協調する処理を伴うため、Finder以外からの操作は避けましょう。




おすすめの記事

著者プロフィール

海上忍

海上忍

IT/AVコラムニスト。UNIX系OSやスマートフォンに関する連載・著作多数。テクニカルな記事を手がける一方、エントリ層向けの柔らかいコラムも好み執筆する。執筆以外では、オーディオ特化型Raspberry Pi向けLinuxディストリビューションの開発に情熱を注いでいる。2012年よりAV機器アワード「VGP」審査員。

この著者の記事一覧

×
×