5分で読めます
| まとめ
複数のMacをお持ちの場合、ファイル、設定、さらにはアプリまで、Mac間で同期する方法はいくつかあります。しかし、より包括的なソリューションは、複雑な設定が必要になったり、高額になったりします。しかし、SyncThingとSyncaliciousを使えば、最小限の設定でMacデバイスを(ほぼ)同一に保つことができます。
複数の Mac デバイスを完全に同期させるというのは、具体的にはどういう意味ですか?
同じMacを複数のMacで使っているようなものです… でも、複数のMacで同じMacを使っているようなものです。ファイル、設定、アプリは、どのコンピュータを使っていても同じように表示されます。1台のコンピュータでアプリをインストールしたり、設定を変更したり、ファイルをダウンロードしたりすると、自動的にすべてのコンピュータに適用されます。
iCloud Drive ではすでにそれが実現されているのではないですか?

部分的にしか同期されません。iCloud Driveには、デフォルトでMac間でデスクトップフォルダと書類フォルダを同期する設定があります。しかし、このオプションには重要な機能が欠けています。
- 当然ながら、同期されるのはこれら2つのフォルダのみです。例えば、「ピクチャ」、「ムービー」、「ダウンロード」フォルダに保存したファイルは、他のデバイスでは利用できません。これらのフォルダを同期するには、ファイルとフォルダを手動でiCloud Driveに移動し、そこから他のMacに移動する必要があります。
- iCloud Driveのストレージを消費します。そのため、より高額なプランに加入していないと、すぐに容量が不足してしまいます。
- 同期は常に確実に機能するとは限りません。極端なケースでは、同期エラーによりデスクトップが完全に空になることもあります。
Macを同一に保つことは可能だが難しい
さて、ガイド本編に進む前に、少し脱線させてください。これからご紹介する解決策よりも効果的な解決策がいくつかあるからです。
これらの方法はすべて、r/macapps の Reddit の投稿で提案されています。投稿者は複数のデバイスを同期するためのツールを求めており、どの代替手段も問題なく機能します。ただし、それぞれに欠点があります。
真っ先に思い浮かぶのはChronoSyncです。このアプリの主な機能は、2台(またはそれ以上)のMacを正確に同一に保つことです。ただし、Macごとに個別のライセンスが必要で、購入する台数に応じて30ドルから40ドル近くまで価格が異なります。生涯サブスクリプションとしては悪くないですが、少なくとも75ドルを前払いするのは少し気が引けます。
もう一つの方法はnix-darwin、macOS版Nixパッケージマネージャーである を使うことです。簡単に言えば、パッケージマネージャーはターミナルで動作するApp Storeのようなものです。ただし、Nixの設定には長いプロセスと、スクリプトやターミナルコマンドに関する事前の知識が必要になるという欠点があります。パッケージマネージャーの設定後、Nix Home Manager(正確にはhome-manager)も設定する必要があります。home-manager同期を行うのはNixではなくNix Home Managerなので、2段階の手順が必要で、しかも2つの面倒なステップがあります。
SyncThingとSyncaliciousを使って複数のMacデバイスを同期する
さて、次善策としてSyncaliciousとSyncThingを使うと、 Mac上のほとんどのものを同期できます。SyncaliciousはNixよりも初期設定がはるかに簡単ですが、SyncThingはすぐに使えます。どちらもオープンソースプロジェクトで、完全に無料です。
Syncalicious の大きな欠点は、積極的にメンテナンスされていないため、特に新しい macOS バージョンでは動作が不安定になる可能性があることです。ただし、コードは GitHub で公開されているため、技術的な知識があれば誰でも自分で試して問題を解決できます。その際、SyncThing のリポジトリも確認してみてください。
Syncaliciousのインストールと設定
Syncalicious は、デバイス間で設定の一貫性を保ちます。Mac にインストールされているアプリを自動的に検出し、アプリ間で設定を共有できます。
まず最初に、アプリのリリースページからSyncaliciousをダウンロードし、Macで実行します。アプリに必要な権限を与え、すべてのデバイスでオンライン同期するフォルダを指定します。
この場合、iCloud Drive を使用すれば問題ありません。アプリの設定は小さなテキストファイルに保存されます。これらはプロパティリスト(略してPList)と呼ばれます。各.plistファイルのサイズは最大で数百KBですが、それよりはるかに小さい場合も少なくありません。そのため、数百個のアプリをインストールしていても、それらの設定をiCloud Drive に保存しても、利用可能なストレージ容量に大きな変化はありません。
すべてのMacでSyncaliciousを設定したら、アプリのウィンドウを開きます(ヒント:メニューバーアイコンのみが表示されます)。左側にはインストールされているアプリの一覧が表示されます。右側には、デバイス間で設定をバックアップおよび同期するためのボタンがあります。その下には、アプリがインストールされているMacの一覧があります。設定の同期は、各コンピュータで各アプリの「同期」をクリックするだけで簡単に行えます。
SyncThingのインストールと設定

まず、アプリのページからSyncThingをダウンロードしてください。ページに記載されているように、複数のOSに対応したバージョンが用意されているので、Mac間でのファイル同期に限定されません。
SyncThingをインストールすると、アプリはメニューバーにも表示されます。アイコンをクリックし、「開く」をクリックします。設定ページが表示され、左側にフォルダリスト、右側にデバイス情報が表示されます。
簡単に言うと、設定プロセスはまず各デバイスから共有したいフォルダを選択することから始まります。その後、デバイス同士を接続します。最後のステップは、1つのデバイスのフォルダを他のデバイスの対応するフォルダとリンクすることです。初期同期が完了すると、1つのデバイスのフォルダに加えられた変更が他のデバイスにも反映されます。
これは、フォルダとデバイスの両方の識別コードを通じて行われます。手順は上記のように簡単ではありませんが、英数字のコードから想像するほど複雑ではありません。SyncThingのiOS版であるMöbius Syncに関する記事で手順を詳しく説明しています。詳しい手順については、そちらをご覧ください。
ユーザーフォルダについては、フォルダごとに同期することをお勧めします(例:ダウンロード、ムービー、写真など)。フォルダ全体をユーザー名で同期するよりも安全です。なぜなら、フォルダにはデバイス固有のシステムファイルが含まれている可能性があるからです。デバイス間でこのようなファイルを同期すると、動作が不安定になったり、最悪の場合、macOSのユーザーアカウントにログインできなくなる可能性があります。
SyncThingを使って複数のMacでアプリケーションフォルダを同期する
さて、macOS アプリがすべて/Applicationsフォルダに保存されているのなら、このフォルダは同期できないのでは?と疑問に思うかもしれません。技術的には可能ですが、大きな欠点があります。
まず、アプリのサイズの問題があります。ゲーム、XCode、Adobeツール、macOSインストーラーなど、アプリによっては1つあたり数GBにもなる場合があります。同期するデバイスの内蔵ディスク容量が小さい場合、/Applicationsフォルダの同期は貴重な容量を消費することになります。
ストレージ容量の制限と関連して、データ使用量も問題になります。ユーザーは外出先で作業する際に、フォルダを同期して必要なものをすべて手元に置いておきたいと考えることがよくあります。しかし、これはWi-Fiの可用性が不安定になることも意味し、多くの場合、スマートフォンをホットスポットとして利用します。MacBookがiMacからBaldur's Gate 3を同期しているせいで、データ通信量が膨大になり、帯域幅の上限に達してしまうことを想像してみてください。
最後に、ホームフォルダの同期時と同じ問題があります。それは、デバイス固有のファイル(この場合はアプリ)です。ほとんどのアプリは自動的に起動しないため、リスクはそれほど直接的ではありません。しかし、誤ってそのようなアプリを開いてしまうと、一時的な速度低下からカーネルパニックや再起動まで、さまざまな影響が出る可能性があります。

複数のMacのフォルダ、ファイル、設定を同期させるというアイデアは、最初は不安に感じるかもしれません。それはアイデア自体が不安なのではなく、複雑な設定をたくさんしなければならないという印象を与えるからです。幸いなことに、SyncaliciousとSyncThingを使えば、手順は非常に簡単で、初期設定は数分で済みます。その後は、アプリのメンテナンスはほとんど、あるいは全く必要なく、いつまでも使い続けられるはずです。