Time Capsule から Mac のシステムを復元したのだが。
- 2010-10-19 14:00
- 日記・与太
- comments (0)
- trackbacks (0)
- E
えーと、子細は省略しますが、ただいまふうこのメインマシンは MacBook Pro 17 インチ、お名前は ingot
です。この間、そのシステムをクリーンインストールして、ユーザーデータを Time Machine で復旧させました。今回はその時のお話。写真など撮ってる暇がなかったので字ばっかりです。
そもそも
システム復旧を考えたきっかけは、コマンドラインから gcc を使おうとして、パスが通っていないことに気付いたことでした。まさか……散々
と思ったものの、実は最後に make をたたいたのは今のマシンの前の MacBook Air(ちなみにお名前は ./configure && make && make install
したじゃないか!lang-de-chat
)でのこと。ingot さんの環境はコマンドラインツールを含めすべてデータ移行アシスタント
を使って MacBook Air から引き継いだものでした。
その後よく調べてみると、/usr/bin 配下に入っているはずの Xcode 由来の開発系ツールが /Developer/usr/bin の下にしかないことが判明。よく分かんないけど、これは何かシステムに齟齬が生じているに違いない。幸いユーザーデータは全部 Time Capsule でバックアップしてあるし、引き継ぎ方さえ考えればシステムを壊すことはないはず。というわけで、この週末を使ってシステムのクリーンインストールからの復旧にトライしたのでした。
バックアップが見えません (1)
再インストール自体は簡単です。SuperDrive スロットにインストール DVD を挿して、ユーティリティ
メニューから HD 内のデータを消去して、OSX をクリアインストール。終わったら今度はイジェクトキーを押下しながら再起動。音がでかい上に尺が長くて若干迷惑な Welcome 画面が出たら、Time Machine からデータを転送すれば完了……と思っていたのだけど。
言語選択の後に表示されるデータ移行画面で「Time Machine バックアップまたはほかのディスクから」を選び、バックアップが格納されている Time Capsule への WiFi 接続を試みるが、何度やっても失敗。どうも WiFi 接続には成功しているが、バックアップへのアクセスでリジェクトされているらしい。
何度も何度もパスワードを入れ直したりナニしたりしたのち、やっと気付いたこと。ingot さんのバックアップデータは、Time Capsule で設定したユーザー名とパスワードでアクセスできるディレクトリに格納してあるのに、データ復元元のリストには共有ディレクトリしか見えてない。そりゃアクセスできないはずだわ……。がしかし、どうやってユーザー名とパスワードを指定すればいいの?
いろいろ検索などしてみたが、結局分からず。時間がもったいないので、データ移行はいったんスキップして、適当にユーザーを作ってシステムの通常使用が可能な状態にしてから考えることに。経験上、管理者権限のあるユーザーが他にいれば初期ユーザーは削除して構わないことは分かっていたので。ちなみに、この後のユーザー名の登録画面で住所だの電話番号だのを入れないと一度エラーっぽい画面になりますが、Apple に登録情報を転送しないならユーザー名とフルネームだけ入れれば先に進めます。
バックアップが見えません (2)
さて、とりあえず仮のユーザーでシステムにログインして、Time Capsule のユーザー別ディレクトリにもアクセスできるようにはなったものの、データ移行アシスタントからは相変わらずバックアップ先が参照できない。もー……。またしばらくごにょごにょした後、バックアップ先ディレクトリにあるホスト名.sparsbundle
というファイルをダブルクリックして、システムにマウントされた状態にしてからデータ移行アシスタントを起動すればよいと気づく。わっかりづら……これ、ほんとにみんなできてるのかなぁ?
とにかく、バックアップ先が指定できればこっちのもんで、後は転送するデータを選択して、ひたすら待つだけです。
ちなみに、転送対象のデータには「ユーザーデータ」「アプリケーション」「システムの設定」「その他のファイルとフォルダ」とありますが、そもそも最初 MacBook Air からデータ引き継ぎする際に「その他のファイルとフォルダ」を選択していたのが今回のリストアの遠因だったくさい。また、「アプリケーション」は /Applications 配下のファイルしか転送しないし、転送するアプリとしないアプリを選べない。これだとインストーラを使ってインストールするアプリはちゃんと動作する保証がないし、バイナリを /Applications にドラッグ&ドロップするだけでインストールできるアプリは手でバックアップからコピーすればいい。というわけで、ここで選択していいのは「システム設定」と「ユーザーデータ」のみという結論。ちゃんとしたアプリなら、~/Library 配下にアプリの実行に必要なデータが入ってるはずだから大丈夫なはず。自前でビルドしたツールや手作業で放りこんだツールは、この際だから整理整理。
まとめ
そんなわけで、今回行った手順はこちら。
- Time Machine でバックアップイメージを作成(これは普段の作業)
- システムのクリアインストールを実行する
- 仮ユーザーを作成してシステムにログインする
- Time Machine のバックアップイメージをマウントし、データ移行アシスタントを実行(転送対象は「システム設定」と「ユーザーデータ」)
- 一度ログアウトし、転送した元の管理ユーザーでログインして「システム環境設定」で仮ユーザーを削除する
- Time Machine バックアップから /Applications 配下のアプリのコピー、およびインストーラによるインストールを実行
訂正:5. と 6. の順番を最初の記述から入れ替えました。仮ユーザーのままアプリケーションをコピーすると、常用する管理者権限ユーザーに所有権がないために普通の手順でアップデートできないという事態に陥ったので。てへ。
個人的には、上の 4. を 3. の時点でできるのを期待していたのだけどなー……。実際これ、まともに成功した試しがない。Mac から Mac に転送するのだって相当面倒くさかったし、最近の Apple って、説明が殆どない割にさらっと動くわけでもない機能が多すぎる気がしてならない。
余談1:バックアップ先が変更できません
ともあれ、今回の教訓を生かし、今度は Time Capsule のバックアップ先をユーザー用ディレクトリではなく共有ディレクトリに置くことにしました。そうすれば、インストール直後のデータ移行画面からバックアップデータを選べるようになるはず。
Time Machine 環境設定でバックアップ先を共有ディレクトリに指定して、バックアップ開始。……。失敗する。何度やっても失敗する。そして、例によって原因を調べる方法はない。もう早いところ最初のバックアップを取ってしまいたかったので、ユーザー用ディレクトリのままで運用することに。……一体、何をどうやったら気に入るんだ、こいつは……。
余談2:実はいっぺん失敗していたり
さて、最初仮ユーザーを作成する際、何も考えず仮ユーザーのフルネーム
をリストアするユーザーデータのフルネームと同じにしていました(ユーザー名は別)。するとそれがデータ移行アシスタントのお気に召さなかったらしく、データ転送の際に上書きするかどうか尋ねる画面が出ました。そこで上書きする
を選んだのがまずかった。仮ユーザーのホームディレクトリを消された上に、上書きされるはずのユーザーのデータは転送されないという事態が発生。不審に思いつつも一度ログアウトしたら、案の定どちらのユーザーでも二度とログイン不能に。管理者権限のあるユーザーが他に居なかったため、もう一度インストールからやり直しする羽目になりました。……ちっ。
Received Comments(投稿順)