データ移行した最新Mac、実は100%の力を出せていなかった話
新しい Mac に古い Mac からデータ移行したら、古いユーザー設定も開発環境もそのまま引き継がれて、最新 Mac のはずなのに 100% 力が発揮できていなかった──そんな話を今日は書きたい。
自分が使っているのは MacBook Pro 16 インチ(2021, Apple M1 Max, メモリ 64GB, macOS Tahoe 26.4.1)。前は Intel チップの MacBook Pro を使っていて、買い替えた時に Migration Assistant でまるごと中身を引き継いだ。便利だったから、何も考えずに「全部移行」を選んだ。
正直に書いておくと、自分はターミナルやコマンドの知識がほとんどない。フリーランスで Web 制作(WordPress 中心)をやっているけれど、コードを書くというより「読んで直す」「AI と一緒に作る」が中心で、ターミナルでコマンドを叩く場面は本来そんなにない。
そういう人間がネットで「Mac でこれを動かすには」と検索して、出てきたコマンドを意味も分からず叩いて、何かをインストールして、何かを設定して──を数年繰り返した結果、知らないうちに Mac の中にゴミが溜まっていた。
※「ターミナル」とは、Mac で文字(コマンド)だけを使ってパソコンに指示を出すための画面のこと。普段はマウスで操作する処理を、文字入力で実行できます。
症状:最新 Mac なのに、ちょっとずつおかしくなってきた
2026 年 4 月に入ったあたりから、ちょっとしたエラーが目立つようになった。
具体的には、PHP 7.4 が動かない(libldap-2.5.0.dylib が見つからないというメッセージが出る)、ターミナルで打つ git のバージョンが古い 2.14.1 のままで新しく入れ直しても反映されない、brew doctor という診断コマンドを打つと真っ赤な Warning が大量に出る、といった具合。
一つひとつは小さい問題に見えても、合わさると「動かしているだけで少しずつ壊れていく環境」になっていた。
※「Homebrew(ホームブリュー)」とは、Mac で使えるパッケージ管理ツールのこと。ターミナルから「brew install git」のように打つだけで、開発ツールをインストール・管理できます。今回の話の中で、ゴミの溜まり場になっていたのがこれ。
原因:データ移行と「ネット鵜呑みコマンド」のダブルパンチ
このタイミングで Claude(AI)に相談した。「Mac で PHP がエラーで動かない、git も古いまま、何が起きているか分からない」と打ち込んだ。Claude はいくつか質問してきて、その中の一つが「古い Mac から Migration Assistant で移行しましたか?」だった。
「した」と答えた瞬間に、Claude は原因をほぼ特定してくれた。
- Apple Silicon(M1 Max)の Mac では、Homebrew の正しいインストール先は
/opt/homebrew/。でも自分の環境では Intel Mac 時代の場所(/usr/local/)に入ったままになっていた - Migration Assistant が便利すぎて、Intel 時代の Homebrew の中身も、過去にネットで拾って適当に入れたパッケージも、全部新 Mac にそのまま引き継いでいた
- その状態で自分が「ネットで見つけたコマンド」を意味も分からず叩き続けたので、ゴミが指数関数的に増えていた
つまり原因は、データ移行で引き継がれた Intel 時代の遺物と、ターミナルの知識がないまま鵜呑みでコマンドを叩いていた自分の行動が合わさったダブルパンチだった。一人で考えていたら絶対に辿り着けなかった結論だった。
※「Apple Silicon」とは、Apple が独自に設計した CPU(M1, M2, M3, M4 など)のこと。従来の Intel CPU とは設計が違うため、Intel 時代に作られたツールをそのまま使い続けると不安定になることがあります。
対処:Claude の指示通り、中身を総入れ替えした
Claude が提案してきたのは「/usr/local/ の Homebrew をきれいに削除して、Apple Silicon 用の /opt/homebrew/ に入れ直す」というシンプルな方針だった。
「半日仕事になるかもしれない」と覚悟したけれど、実際にやってみたら 1〜2 時間で済んだ。Claude が手順を一つずつ出してくれて、自分はターミナルにそれをコピペして実行するだけ。意味は完全には理解していなかったけれど、各ステップで「次はこのコマンドを打って、こういう結果が返ってくるはず」と説明してくれるので、不安なく進められた。
1. 今入っているものを書き出す
brew leaves > leaves.txt
brew bundle dump > Brewfile
「あのツール、何のために入れたっけ?」を後で確認できるようにバックアップを取った。
2. 古い Homebrew をアンインストール
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
3. /usr/local/ の残骸を削除
sudo rm -rf /usr/local/{Homebrew,Frameworks,bin,etc,git,include,lib,n,opt,remotedesktop,sbin,share,var}
ここは Claude に「消して大丈夫なものだけリスト化して」と確認しながら慎重に進めた。rm -rf は元に戻せないコマンドなので、対象が間違っていたら大事故になる。AI に確認してもらえる安心感が大きかった。
4. Apple Silicon 用の Homebrew を新規インストール
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
5. シェルの設定に追記
~/.bash_profile に以下を追加する。これがないと新しい Homebrew がターミナルから呼べない。
eval "$(/opt/homebrew/bin/brew shellenv)"
6. 必要なものだけ入れ直す
leaves.txt を見ながら、Claude と一緒に「今も本当に使っているもの」だけを選んで brew install した。過去に何のために入れたか分からないものは思い切って入れない判断にした。結果として、古いゴミが積み重なることなく、すっきりした構成に戻った。
Node.js は以前から nvm という別のツールで管理していたので、Homebrew では入れなかった。このままの運用継続で問題なし。
gh auth のトークンはそのまま使えた
GitHub CLI(gh)の認証情報は Mac の Keychain(標準の鍵束)に保存されているので、Homebrew を入れ直しても再ログインは不要だった。これが一番心配していた点だったので、問題なく引き継がれたのは助かった。
結果:brew doctor が Warning ゼロになった
全部終わってターミナルで brew doctor を打ったら、Warning がゼロ。あれだけ出ていた赤い文字が消えて、「Your system is ready to brew.」の一行だけになっていた。
PHP も普通に動くようになった。git のバージョンも新しいものが返ってくる。「最新 Mac なのに何かが重い、何かがおかしい」という違和感が消えた。
該当するか2コマンドで確認する
Apple Silicon の Mac を使っていて、「Migration Assistant で旧 Mac から移行した」という人は、一度確認してみると良いかもしれない。
uname -m
brew config | grep "HOMEBREW_PREFIX"
uname -m の結果が arm64 で、HOMEBREW_PREFIX が /usr/local だった場合は、自分と同じく Intel 時代の Homebrew が残っている状態だ。すぐに問題が起きるとは限らないけれど、自分のように「いつの間にか動かないコマンドが増えている」状態に近づいている可能性がある。
おわりに:Claude に相談したのが分岐点だった
正直なところ、自分一人だったら「なんかエラー出るな、まあ動いてるからいいか」を続けて、もっと環境が壊れてから慌てる未来になっていたと思う。原因が「ターミナルの知識がない自分の鵜呑みコマンド」と「データ移行で引き継いだ Intel 時代の遺物」の組み合わせだなんて、自分では絶対に辿り着けない。
Claude に「Mac でエラーが出る」と相談して、原因を特定してもらって、手順を出してもらって、その通りに実行した。それだけで最新 Mac が本来の力を取り戻した。
Web 制作で AI と協働しているフリーランスとして、AI に「コードを書いてもらう」だけじゃなく「自分の環境のトラブルを一緒に診断してもらう」使い方も、同じくらい価値があると改めて感じた話だった。
同じように「最新 Mac なのに何か変」と思っている人がいたら、Claude や ChatGPT に「古い Mac から Migration Assistant で移行した」と添えて相談してみると、原因がスッと出てくるかもしれない。