【2022年度版第4弾】新しい Mac を手に入れたらやること一式【最低限の環境移行編】

もうね、あれこれ遅いのは自覚してますよ、してますけども…。
シリーズ物のはずなんですけど前の記事いつ公開しましたっけ?
もうとっくに M2 Mac も発表になって売られてるし、なんならもうすぐ新しい OS のリリースががが(笑

まぁ言い訳するとすればこの記事はほとんど書き上がった状態で、あとスクショだけ入れようと思ってはや半年以上…。
あんまり笑い事でもないけれど粛々と進めますよ。

あ、ちなみに Monterey もとっくに12.5.1ですからね…。皆さんアップデートしましょうね。

触らないうちにどんどんアップデートだけが進む(笑

さて気を取り直して(笑
ここまで(この記事とかこの記事とかこの記事とか)でひととおりの初期設定は済んだ(つもり)。
このあとはどんどんアプリケーションのインストールやら環境の設定やらに進んでいくのだが、その前にちょこっとだけ。

これまでも Mac を使っていて、新しい Mac を手に入れてまっさらな環境で始めたい場合、とはいえ以前の Mac の設定を改めてイチからやらなきゃいけないのはそれはそれで面倒…となるだろう(いままさにその状態)。

なので今回は、以前使っていた Mac から本当に最低限の環境だけを移行する手順をやっていきたい。
これは実際の僕の環境を使って進めていくので、もしかしたら部分的には合わない・足りないところがあるかもしれないのはご容赦を。

最低限の環境だけ移行したい!!(ただし手動)

以前の記事でも書いたように、僕は新しい Mac を手に入れたら毎回必ずイチから設定している。
Time Machine ですべての環境を引き継げばすぐに全く同じ環境で作業を始められるのはわかっているのだが、そこでゴミまで一緒に新しい環境に移してしまうのは嫌だ、というのがその理由。

このあと(次回のブログ記事を乞うご期待!)でインストールしていく各アプリケーションでは、それぞれで設定をエクスポート・インポートできたり Web 上で設定を移行できたりするだろう。だが、「Mac 本体の設定だけ」のエクスポートのメニューは用意されていないので、ここは手作業で移行していくしかない。
ここでは最低限(僕の環境移行で)必要なデータを先に移行しておく。データファイルの移行はとにかく AirDrop が便利( Mac同士でのファイルのやり取りならばこれが本当に一番手軽)。

ここで注意点が3つ

まずひとつ目なのだが、最初のセットアップのときにファイアウォールを有効化したと思うのだが、そのままだと AirDrop も無効化されてしまっている。なので改めて環境設定を見直す必要がある。
ここは簡単にスクリーンショットで解説。

環境設定を開く
「セキュリティとプライバシー」のファイアウォールタブを開く
鍵のマークをクリックして「ファイアウォールオプション…」を開く
「外部からの接続をすべてブロック」のチェックを外す。一度でも AirDrop を開いていればここに AirDrop が表示されているはず。表示されていなかったら「+」マークで追加しよう

ファイアウォール自体を無効にしているわけではないが、ここの設定はたまに確認しておいてもいいかも。

そして次の注意点は、それぞれの項目でも改めて触れるが「Mac の設定ファイル」は基本的に「不可視フォルダ」の中に含まれている。なので、この一連の作業をする場合はまず最初に「不可視ファイルを表示」しておこう、ということ。
ただし、「不可視フォルダ」はそもそも Mac の設定に関連するファイルが置いてある場所なので、触る場合はその取り扱いに注意。
セキュリティ的な面はもちろんだが、不用意に削除したり上書きしてしまったりすると、最悪動かなくなってしまうことも考えられる。

そして最後のひとつだが、不可視フォルダはそのままでは AirDrop での移動ができない(以前はできたような気がしたけど勘違い…?)。
まぁ不可視フォルダはシステムの重要な情報が入っているフォルダなので、当たり前というかそのほうがいいよねって話なのだが…。
なので、ひとつフォルダを新たに作ってその中に移動させたい不可視フォルダを移し、新たに用意したフォルダごと AirDrop で移動する、という方法を取る。こうすれば不可視フォルダでも AirDrop で送信できる。
だいぶ禁じ手っぽい使い方ではあるけれど、まぁ自分の環境同士でやることなので自己責任で。

以下の内容は基本的に以前の記事で書いた内容の焼き直しではあるが、一部更新されている内容や補足もあるので、元記事も併せて参照されたい。

では順番に進めていく。

フォントデータの移行

自分で独自にダウンロードして Mac へインストールしているフォントファイルは、新しい環境へ移行したい場合は手作業での移行が必要だ。
あとから自分で Mac に追加したフォントは

/Users/{{user}}/Library/Fonts

(または ~/Library/Fonts でも同じ)

にインストールされている(ここでの {{user}} は自分のユーザーアカウント)ので、この中に入っているフォントを全選択(あるいは移行が不要なフォントを除いて選択)し、AirDrop とか USB メモリにコピーするとかして新しい Mac の該当する Fonts フォルダへ移動するだけでいい。
ただしこのフォルダは不可視ファイルなので、最初に説明したように不可視ファイルを表示する設定にしておく必要はあるだろう。

また、このとき有料で配布されているフォントが含まれている場合は別途アクティベーションが必要になるかもしれないので、そこも注意(僕は無料で配布されているフォントだけだった)。

ちなみに、

/System/Library/Fonts
/Library/Fonts

にもフォントフォルダは存在する。

前者はシステム自体が使用する「Fonts」フォルダ。ここはシステムが使用するので、やたらに消去したり変更したりすると不具合がおこる可能性もあるので触らないように。ちゃんと表示できなくなっても責任取れません(笑

一方、後者はその Mac にログインできるすべてのユーザーが利用できる「Fonts」フォルダになる。
Mac でフォントを管理するアプリケーション「FontBook」でフォントをインストールすると、デフォルトでは先ほど説明した「フォントをインストールしたユーザーが使えるフォルダ( `/Users/{{user}}/Library/Fonts` )」にインストールされる。つまりユーザーごとに使えるフォントが異なる、ということ。
このフォントの設定については、FontBookの「環境設定>デフォルトのインストール場所」でインストールされる場所を変更できるので、すべてのユーザーが利用できる /Library/Fonts/ へ変更しておいてもいいかもしれない(もちろん、ユーザーが自分だけならばどちらのフォルダにインストールするかを意識する必要はない)。

設定変更の流れはざっと以下のような感じで、すぐに設定が変えられる。

アプリケーションから「Font Book」を起動
Font Book の画面
「Font Book」メニューから「環境設定…」を開く
Font Book の「環境設定」画面
「デフォルトのインストール場所」のプルダウンから「コンピュータ」を選択
「ファイルをゴミ箱に入れて重複を解決」にチェックを入れておく

SSH 接続情報の移行

同様に SSH の接続情報も移行する。特にこれに関しては外部のサーバーへの接続情報や接続のための秘密鍵などの重要なセキュリティ情報を含むので取り扱いは慎重に。当然のことながら外部に漏らすようなことは厳禁。
SSH の接続情報は

/Users/{{user}}/.ssh 

(または ~/.ssh でも同じ)

に配置されているはずだ。
新しい Mac にはまだ .ssh フォルダはないと思うので、先ほどの「禁じ手(笑)」を使って不可視フォルダである .ssh フォルダを新しい Mac へ移動し、.ssh フォルダをまるごとユーザーディレクトリの直下へ移動すればいい。

Web 関連の仕事をしている人でなければ .ssh フォルダを使うことはほぼないと思うのだが、Web 関連の仕事やブログなどを運営しているのであればこれは必須。次に説明する keychain のログイン項目と同等かそれ以上に移行しておかなくてはいけないだろう。

SSH 接続情報の取り扱いの際に気をつけること

今回の移行後は古い Mac はもう使わないつもりなので、最低限のデータを「移動」する前提で話をしているが、例えば一時期にせよ古い Mac と新しい Mac を並行して使いたいようなケースもあるだろう。
そのときには例えばこの .ssh フォルダならば、フォルダを丸ごと複製して新しい環境に移すことになると思うのだが、もしかするとコピーしたときに「ファイルの権限」が変わっているかもしれない(ただし未検証・以前に別のタイミングで似たようなことになった経験あり)。特にこの .ssh に入っている秘密鍵などは「ユーザーのみの読み書きの権限(600)」でないと秘密鍵として機能せずログインできなくなってしまう(アラートが出て「あっ」て気づくやつ)。

なので、その場合は権限を変更する必要があるのでご注意を。「そもそもファイルの権限てなに?」って人はあんまり手を出さないほうがいいかも…。
以前遭遇したときは数が少なかったので

$ chmod 600 /Users/{{user}}/.ssh/xxxxxxxxxx

のようなコマンドをひとつずつ入力した記憶が…(笑
今回ちょっと気になって調べてみたら

$ find /Users/{{user}}/.ssh -type f -exec chmod 600 {} +

のように「 .ssh フォルダ直下のファイルの権限を一括して変更 」のようなことができるらしい。
ただしこのコマンドは未検証なので、今度なんかの機会に試してみることにする。

keychain のログイン項目の移行

これも引き継いでおきたい情報のひとつ。keychain の情報は以下のファイルに記述してある。
keychain の情報も自分の Mac の中だけで利用するものとはいえ、当然前述の SSH 接続情報同様に外部への接続情報が記載されたセキュリティ情報なので取り扱いに注意。

/Users/{{user}}/Library/Keychains/login.keychain-db

以前はこちらのブログ記事を参考にデータを移行していたのだが、別の方法が公式に掲載されていたのでこの方法で。

Macでキーチェーンアクセスを使用してキーチェーン項目を読み込む/書き出す

以前は公式の手順が用意されてなかったってことだったかな…?覚えてない(笑
以前の方法と今回参考にした公式の方法だと書き出される内容がちょっと違う気もするんだけど、どうなんだろう…?まぁここは全部移行できなくてもそんなに困ることはないだろうし、いざ使い始めてあんまり毎回パスワードを聞かれるようだったら前のやり方でやり直してみようかな。

まとめ

他にも設定ファイルの類はたくさんあるので、あれもこれも移行しておいたほうがラクはできるのかもしれないが、以前にも書いたように「新しい Mac が手に入ったら新しい環境で」始めることにしているので本当に最低限でこれくらい、といったところだろうか。
ここ最近は特に設定をクラウドに保存するサービスが多くなってきたので、以前と比較すればこういった移行作業も簡単になってきたように思う。設定ファイルがクラウドにあれば移行も気にすることないもんね…。

もし、これらの他にも「ここの設定は絶対に移行しておかないと後で困る!」といったものがあれば是非教えていただきたいところだ。

あと何が面倒ってアイキャッチ画像を考えるのが面倒。いつも「書き終わった!」と思ってから「アイキャッチ画像どうしようかな…」ってなる(笑