移行アシスタントを使う前に掃除すべきもの
移行アシスタントでMacからMacへデータを移す前に、新しいMacがどうせ作り直すものは消しておきます。アプリのキャッシュ、ゴミ箱、XcodeのDerivedData、そのほか作り直せるビルド成果物です。一方で、何かの唯一のコピーかもしれないものは残します。ほかで確認していないiPhoneやiPadのバックアップ、メール、チャット、メモのライブラリ、プロジェクトフォルダといったアプリのデータ、そして判断のつかないものすべてです。そのうえで、これから移すものの大きさと新しいMacの空き容量を比べます。
理由は単純です。移行アシスタントはユーザアカウントを丸ごと移し、長く使ったアカウントの大部分は、初日には誰も必要としないものであることが多いからです。コピーされるキャッシュが1 GB増えるごとに、転送時間が1 GB分延び、新しいMacはその1 GBを保存するか作り直すことになります。
移行アシスタントがコピーするもの
Appleの移行アシスタントのガイドによると、移行アシスタントは書類、アプリ、ユーザアカウント、設定を転送し、始める前にアプリケーション、ユーザアカウント、ファイル、フォルダ、設定がどれだけの容量を使っているかを計算します。新しいMacでは アプリケーション › ユーティリティ › 移行アシスタント を開いて Mac、Time Machine、または起動ディスクから 転送するオプションを選び、古いMacでは別のMacに転送するオプションを選びます。カテゴリごとにチェックボックスがあり、カテゴリを展開して個別の項目を選ぶこともできます。
古いMacからは何も削除しないので、納得がいくまで古いMacを予備として残しておけます。
Appleは、アカウント内のどのフォルダを対象外にするかの一覧を公開していません。ホームフォルダ全体が移るつもりで計画してください。そこには ~/Library も含まれ、キャッシュ、アプリのサポートデータ、デバイスのバックアップの大半はここにあります。アカウントの中で何年もかけて静かに膨らむのがこの部分です。
時間の見積もりに関わるAppleの注意がもう2つあります。大量の転送には数時間かかることがあり、ときどき止まったように見えることがあります。また、どちらかのMacにあるウイルス対策、ファイアウォール、VPNのソフトウェアは、転送が終わるまでオフにしておくべきです。新しいMacに同じ名前のアカウントがすでにある場合は、それを置き換えるか、移ってくるアカウントの名前を変えるかを尋ねられるので、始める前に決めておきます。
残り物があると移行が遅くなり、新しいMacが埋まる理由
無駄の大半は3種類のデータです。
| 対象 | よくある場所 | 何が損か |
|---|---|---|
| アプリとブラウザのキャッシュ | ~/Library/Caches、Application SupportやContainersの中のキャッシュフォルダ |
1バイト残らずコピーされ、そのあと新しいバージョンのアプリがたいてい作り直す |
| 開発のビルド成果物 | ~/Library/Developer/Xcode/DerivedData、プロジェクトの build、dist、target、.next フォルダ |
大きく、小さなファイルが大量にあり、古いマシンのツールチェーンに結びついている |
| 削除したアプリの残り物 | ~/Library/Application Support、~/Library/Containers、~/Library/Preferences |
もう持っていないアプリのデータが、まっさらなMacに持ち込まれる |
新しいMacでこれらが役に立つことはなく、新しいMacは最初からLibraryにそれらの残り物を抱えて使い始めることになります。多くの人が新しいマシンに求めるものとは正反対です。
4つ目がゴミ箱です。中のファイルは空にするまでディスク上に残っているので、アカウントの大きさを測る前に空にしておきます。
掃除する前に測る
古いMacで Appleメニュー › システム設定 › 一般 › ストレージ を開くと、Appleがストレージのガイドで説明している概要が見られます。自分のアカウントについては、いくつかの読み取り専用のコマンドで、どこが大きいかがわかります。
du -sh ~ 2>/dev/null
du -sh ~/Library/Caches ~/Library/Developer ~/Library/Application\ Support/MobileSync 2>/dev/null
保護されたフォルダについて du が権限エラーを出すことがあります。それはターミナルにアクセス権がないという意味で、フォルダが空だという意味ではありません。数字の一覧よりディスクのマップのほうが読みやすく、両方の方法をMacで大きなファイルを見つける方法で扱っています。
先に消して安全なもの
次のものは自動で作り直されるか、もともとコピーです。
- ゴミ箱。 一度中を見てから空にします。空にできないなら、Macのゴミ箱が空にならないを見てください。
- アプリのキャッシュ。 アプリを終了してから、そのキャッシュフォルダだけを消します。キャッシュと、キャッシュに見えるだけのデータとの見分け方は、削除しても安全なMacのキャッシュで説明しています。
- XcodeのDerivedDataとシミュレータの残り物。 DerivedDataは次のビルドでXcodeが作り直します。
~/Library/Developer以下でほかに消してよいもの、残すべきものはXcodeを掃除する方法にまとめています。 - 1つのコマンドで作り直せるプロジェクトのビルド成果物。 ソースからきれいにビルドできるプロジェクトの
build、dist、target、.nextフォルダなどです。 - 使い終わったインストーラ。 ダウンロードフォルダにある古い
.dmgファイルなどです。DMGファイルは削除してよいかを見てください。
パッケージマネージャのキャッシュ(npm、pip、Homebrewのダウンロードなど)は判断が分かれます。ダウンロードし直せますが、そうすると新しいMacでの最初のインストールですべてを取り直すことになります。回線が遅いなら残し、大きくてツールを新しく入れ直すつもりなら消して構いません。それぞれについては開発用キャッシュの消し方で扱っています。
残すもの、意図して移すもの
iPhoneとiPadのバックアップ。 ~/Library/Application Support/MobileSync/Backup にあり、非常に大きくなることがあります。バックアップはその電話の唯一の完全なコピーかもしれないので、転送を小さくするためだけに削除しないでください。古いMacから外したいなら、まずそのデバイスにiCloud上のより新しいバックアップがあるか、必要な復元ポイントを保管済みかを確認します。そのうえで、中の個々のファイルではなく、Finderの バックアップを管理 からバックアップ単位で削除します。手順はMacでiPhoneのバックアップを削除する方法にあります。
キャッシュではないアプリのデータ。 メールやメッセージのデータベース、チャット履歴、メモや写真のライブラリ、パスワードマネージャの保管庫、仮想マシン、プロジェクトフォルダは、~/Library にあってもデータです。アプリがデータをサーバーに置いているなら新しいMacでサインインすれば足りるかもしれませんが、ローカルの何かを削除する前にそれを確かめてください。
正体のわからないもの。 移行アシスタントが正体不明のフォルダをコピーして失うのは多少の時間です。削除すれば、取り戻せないものを失うかもしれません。残しておき、実際に何を使うかがわかってから新しいMacで決めます。
新しいMacの空き容量を確認する
始める前に、新しいMacで システム設定 › 一般 › ストレージ を開き、使用可能な容量を控えておきます。移行アシスタントは転送量を計算し終えると、各カテゴリに必要な容量を表示します。合計が新しいMacの空きに近いなら、先に古いMacでもっと消すか、カテゴリや項目のチェックを外してあとで手作業でコピーします。最初からストレージがほぼ満杯のMacは、初日からアップデートやキャッシュのための余裕が少なくなります。
まっさらな状態から始めたいなら、新しいMacを新規として設定し、書類と必要なアプリのデータだけをコピーする方法もあります。手作業は増えますが、古いキャッシュや残り物はすべて置いていけます。
この作業でのMoleの使いどころ
Moleの クリーン は、古いMacで「先に消す」段階に使えます。アプリのキャッシュ、開発ツール、ゴミ箱を一度にスキャンし、何かを削除する前に各行を確認できます。
- 開発ツール には、XcodeのDerivedDataの項目と、プロジェクトフォルダがもう存在しないDerivedDataをまとめた、既定で選択済みの 削除済みプロジェクトのXcodeデータ グループが並びます。見つかったプロジェクトのビルドフォルダ(
target、dist、.nextなど)は、自分でチェックを入れる行として表示されます。 - npmの
_cacache、Yarn、pnpm、Condaのパッケージなどのパッケージキャッシュは一覧には出ますが、チェックは外れています。次のインストールでまたダウンロードが必要になるからです。 - ゴミ箱 はゴミ箱を完全に空にするので、先に中を確認してください。
- iPhoneとiPadのバックアップは、最終バックアップの日付とともに 個別に管理 の下に表示されますが、情報のためだけです。クリーンがそれらを選択したり削除したりすることはなく、その判断はFinderでのあなたに委ねられます。
分析 画面は、測る段階で使うディスクのマップです。移行そのものはMoleではなく、Appleの移行アシスタントで行います。
移行のあとで確認する
新しいMacで、いちばん頼りにしているアプリを開き、データが届いているかを確認します。メール、メッセージ、メモ、パスワードマネージャ、大事なプロジェクトなどです。古いMacはしばらくそのままにしておきます。まだ完全なコピーだからです。新しいマシンを使ううちにキャッシュはまた増えますが、それは普通のことで、掃除が失敗した印ではありません。
よくある質問
移行アシスタントはMacからMacへ何を転送しますか?
Appleによると、書類、アプリ、ユーザアカウント、設定を転送します。カテゴリ全体のチェックを外すことも、展開して個別の項目を選ぶこともでき、古いMacからは何も削除しません。
移行アシスタントを使う前にキャッシュを削除すべきですか?
アプリのキャッシュ、XcodeのDerivedData、ゴミ箱を先に消すのは安全で、転送も小さくなります。新しいMacは必要に応じてキャッシュを作り直すからです。キャッシュを消す前にそれぞれのアプリを終了し、アプリのデータやデバイスのバックアップはキャッシュとして扱わないでください。
移行アシスタントはiPhoneのバックアップもコピーしますか?
Appleは対象外のフォルダの一覧を公開していないので、~/Library/Application Support/MobileSync/Backup を含むホームフォルダ全体が移ると考えてください。より新しいバックアップがほかにあると確認できるまでは、バックアップは残しておきます。
MacからMacへのデータ転送にはどれくらいかかりますか?
Appleによると、大量の転送には数時間かかることがあり、ときどき止まったように見えることがあります。自分で変えられるのは移すギガバイト数で、だから先にキャッシュやビルド成果物を消すと効きます。
新しいMacの空き容量が足りない場合は?
古いMacでもっと消すか、移行アシスタントでカテゴリや項目のチェックを外し、あとでコピーします。始める前に、移行アシスタントが計算した容量と、システム設定 › 一般 › ストレージ に表示される空き容量を比べてください。