iMac Late 2013 の OS が起動しなくなって修復しました

HARDWARE REPORT


少しばかり前のお話ですけど iMac Late 2013 を使い始めました。

それについては iMac Late 2013 を購入しました で紹介しましたけれど、この iMac が起動しなくなりました。起動しなくなった原因は iMac の機械的な故障ではなく、どうやら単純に OS システムが壊れたことが原因の様子です。

 

起動しなくなった原因

ハードリセットが引き金に

今回の故障には直接的な原因があって、電源を長押ししてハードリセットした直後に発生しました。

そもそも今回、なぜハードリセットを行ったかというと、半年以上も前から起こっていたことなのですけど、OS X が毎日 1 度くらいの頻度で Finder がハングアップしてしまって、OS X からの再起動ができず、電源を長押ししないといけない状況に見舞われているためでした。

Finder はハングアップするものの、ほかのアプリは基本的には正常動作してくれるので、Finder が止まったままでも支障なく過ごせる日も多いのですが、いざファイルの保存場所を指定するなどで Finder が絡む操作を行ったとたんにアプリが巻き添えになってハングアップして再起動を余儀なくされる感じです。

基本的には Finder だけのハングアップが多いのですが、ときにはマウスやキーボードの操作まで止まることもあります。

 

このような症状は、MacBook Air Mid 2012 と MacBook Pro Late 2013、そして今回の iMac Late 2013 と、機種を問わず発生しています。

このように広範囲で発生する症状ですけど、このうちの MacBook Pro は別の Mac 環境を引き継がなかったので、おかしいシステム設定を持ち込んだということはなさそうです。もちろん、どれも自分が使っている Mac なので、似たようなアプリ構成になりがちで、その中のアプリのどれかが引き金になっている可能性もないとは言えないですが。

そして起動不能のトラブルへ

そして、最近に新たに加わった iMac でも同じ症状が発生して、何度かハードリセットを行っていたのですけど、昨日にハードリセットを行ったところ、それっきり OS X の起動が完了しなくなったのでした。電源を入れて起動音がした後、Apple のロゴが表示された後、一向に進む気配なく、インジケーターが回り続けるという状況です。

このような壊れ方なので、普通に考えればディスク内のデータが不整合を起こしたか、タイミング悪く OS システムを壊したといった、ソフトウェアの問題の可能性が高いと思われます。

実際、OS を安全に終了させるために「システム終了」や「再起動」の機能があるので、それをせずに電源を突然 OFF にしている訳で、運が悪ければ OS システムが壊れてしまっても不思議はありません。

 

ソフトウェア中心に復旧を試みる

状況からみてソフトウェアの故障さえ修復できれば直りそうに思われたので、それを中心に復旧作業を進めてみます。

システムドライブをチェックする(今回は復旧せず)

今回は OS が固まってからの強制電源 OFF だったので、いわゆる突然の電源切断、そうなるとまず最初に試したいのがシステムドライブのディスクチェックです。

セーフモードを使ってディスクをチェックする

OS X が起動する状態であれば「ディスクユーティリティ」を使ってチェックができるのですが、今回は OS が起動しないので、まずは OS X をセーフモードで起動してみます。セーフモードで起動すると、起動時にディスクのチェックをしてくれます。

さらに、最低限の機能だけで起動を試みることもできるので、不具合が OS X の根本的な問題なのか、その他の拡張機能の問題なのかを判断する手掛かりになるかもしれません。

 

OS X をセーフモードで起動するには、Mac の電源を ON にして起動音が鳴ったすぐに「shift」キーを押し続けます。

そうすると、普段の OS X の起動画面の下側にプログレスバーが表示された状態で起動します。そして、プログレスバーが最後まで進んで表示が消え、普段通りの起動画面に戻りましたが、そこから先に進む気配はありませんでした。

 

シングルユーザーモードでディスクをチェックする

セーフモードでもディスクチェックは出来ているはずなのですが、ちゃんとできているか分からなかったので、シングルユーザーモードを使ってディスクチェックを行ってみることにしました。

なお、後にお話するリカバリーモードでも「ディスクユーティリティ」を使ってディスクのチェックができるので、シングルユーザーモードがよく分からない場合は、そちらでチェックをしても良いと思います。

 

OS X をシングルユーザーモードで起動するには、Mac の電源ボタンを押して、電源が入ったらすぐに command+S を押し続けます。

そうすると、真っ黒な背景に白く細かいテキストが表示されていく感じのシングルユーザーモードで OS X が起動します。そしてしばらく文字が表示されていった後で、落ち着いたら、画面に次のように入力して、ディスクのチェックを行います。

fsck -f

このように入力して return キーを押すと、ディスクのチェックが始まります。セーフモードよりも少し敷居の高い操作ですが、この方法を使うと何か問題が見つかったときにいくらか情報が画面に表示されるので、直らなくても、もしかすると何か手がかりが掴めるかもしれません。

今回は特にエラーも検出されず、手がかりを掴むことはできませんでした。

 

verbose モードで手がかりを掴む方法も

これは直した後に知ったので、今回は試していないのですけど、OS X を verbose モードで起動することで、起動プロセスの進み具合を見ながら OS X の起動を試みることもできるようです。

verbose モードで起動するには、Mac の電源ボタンを押して、電源が入ったらすぐに command+V を押すようにします。今回みたいに OS の起動が途中で延々と進まなくて、何か手がかりを掴みたい場合にピッタリの起動方法かもしれません。

 

Time Machine バックアップから復元する

ディスクチェックでエラーが検出されず、もともとハードウェアの故障が原因の可能性が低かったので、自分の中では OS システムを構成するファイルのどれかが根本的に破損しているのが原因と思ってほぼ良さそうかなと、思えてきました。

そうなると、OS の再セットアップで復旧する可能性が高いのですけど、OS X で再セットアップと言えば「Time Machine バックアップからの復元」が簡単な方法です。

 

ただ、この iMac をセットアップした時に、別の Mac の Time Machine バックアップから移行しようとしたのですけど、バックアップ先のディスク不良が原因で移行できなかった経験があって「とりあえず復元してみる」というのはなかなか不安なところでした。

それに、今回は普段から OS の強制終了が頻繁に必要だったため、当然、Time Machine バックアップの最中に電源を強制 OFF にしていることも度々ありました。そんな状態で取得されているバックアップで果たして問題なくシステムを復元できるのか、半信半疑だったことも不安材料としてありました。

現在のシステムドライブの複製を保存する

自分は普段、OS の再セットアップのときには、新しいディスクを 1 つ用意して、そこに「復元」する形でシステムの再セットアップを行うようにしています。そうすることで、データを失うことはないですし、もし復元に失敗しても、故障した直後の状態までは安全に戻すことが可能になります。

 

ただ、iMac だとこれも簡単には行かないんですね。

一般的な Windows パソコンであれば、搭載していたシステムドライブを取り出して、代わりの物を取り付けるだけでできるのですけど、iMac Late 2013 の場合はシステムドライブを取り出すことができません。そうなると「一か八か、Time Machine バックアップで復元してみる」ということになるのかもしれませんが、復元のときには元のデータがいったん消されてしまうはずなので、やはりそれを安易に選択するのは憚られます。

そこで、OS X をいったんリカバリーモードで起動して、そこで起動できるターミナルを使って、OS X のシステムドライブを別の USB ディスクドライブへコピーしておくことにしました。リカバリーモードでは、ディスクドライブを自動でマウントしてくれたり、必要であればディスクユーティリティを使って初期化などもできるので便利です。

 

Mac をリカバリーモードで起動するには、Mac の電源ボタンを押して、電源が入ったらすぐに command+R を押し続けます。

リカバリーモードが起動したら、メニューバーの「ユーティリティ」→「ターミナル」を選択すると、ターミナルアプリが起動します。

ここで Mac のシステムドライブも含め、接続されているディスクドライブは /Volumes ディレクトリにマウントされているので、たとえばシステムドライブが "Macintosh HD" という名前で、バックアップ用のディスクが "Backup" という名前であれば、次のようにしてデータファイルをバックアップできます。

cp -Rafpv "/Volumes/Macintosh HD/" "/Volumes/Backup/"

この方法だと、必ずしもシステムドライブを完全に再現することはできないかもしれませんが、少なくとも大事なデータを失うことは避けられるはずなので、安心感は高まります。もちろん手作業の操作なので、何かの手違いで必要なデータをコピーし損なえばデータを失うことになるので、慎重に作業を行うことは肝心です。

Time Machine バックアップから復元する

既存のデータをバックアップしたら、いよいよ Time Machine バックアップからの復元です。

今回は iMac に外付けドライブも接続していて、そちらにもデータが入っていたのですけど、無用なデータ消失の可能性を減らすため、外付けドライブは取り外した状態で復元してみることにしました。OS が入っているシステムドライブさえ復元できれば、それで最低でも起動まではこぎ着けると思われるので。

 ただ、取り外した状態で復元した時に、Time Machine バックアップに含まれているはずの外付けドライブのデータがどう扱われるか分からなかったので、念のため、ダミーとして別の外付けドライブをつけて復元を進めることにしました。

復元を開始する

ディスクドライブ周りの準備を整えてから OS X をリカバリーモードで起動します。

そして、今回はネットワーク上のディスクドライブに保存してある Time Machine バックアップを使って復元するので、まずは画面右上に表示されている Wi-Fi マークから、無線 LAN の接続設定を行いました。そうして、ネットワークに接続できるようになったら、「OS X ユーティリティ」の画面から「Time Machine バックアップから復元」を選択します。

すると「バックアップ済みデータの選択」画面に、取得済みの Time Machine バックアップが表示されます。

そこから適切なものを選択すると、どの時点のバックアップに戻すかを選択する画面が表示されました。今回の自分の環境では、こうしょっちゅうハングアップする中でもしっかりとバックアップが取られている印象でした。但し書きには「完全な Mac OS X システムのバックアップのみがリストに表示されます。」と記されていて、それなりにちゃんと復元できそうな候補が表示されている様子も窺えます。

 

今回はもっとも直近のバックアップを使って、復元を行うことにします。

使用するバックアップを選択すると、続いて「インストール先の選択」画面が表示されました。ここには、接続されているディスクドライブが表示されていて、ここで選択したディスクドライブに OS X システムが復元される様子です。

今回は iMac 内蔵のディスクドライブと、念のため取り付けた外付けディスクドライブが表示されたので、iMac 内蔵のディスクドライブを選択しました。ここで選択したディスクドライブは、内容が消去されてからデータが復元されるそうです。

 

ところでこの感じだと、選択したディスクドライブには干渉しないかもしれません。

今回は念のため、もともと取り付けていた外付けディスクドライブを外して、まったく別のディスクドライブを取り付けていたので、そのせいもあるかもしれませんが、少なくとも外付けディスクドライブのデータが書き換えられることはありませんでした。

もしダミーとして付けたディスクドライブの名前を元のドライブと同じ名前にしていたら、どう扱われていたかは分かりませんが、まずシステムだけを復元して、そのあとで OS X 上から残りのデータを復元するという流れもあり得るかもしれません。

OS X の復元完了へ

このような流れで、今回は復元作業を行いました。

それから 4 時間ほどを費やして 100GB ほどのシステムの復元が完了しました。復元完了後、Mac を起動させる前に、もともとの外付けディスクドライブを接続しなおしてから Mac を起動させてみます。そうしたところ、無事、OS X が普段通りに起動してくれるようになりました。

少しばかり設定が引き継がれないところもあるようで、Dropbox のパスワード再設定や iCloud の初期設定、メールアプリの再初期化(アカウントは登録済み)などがありましたが、基本的には元通り、普通に使えるようになりました。

 

やっぱり Time Machine バックアップは便利ですね。

ただ、これまでに何度かバックアップの保存や復元に失敗した経験もあるので、信頼度を高めるために 2 箇所くらいへ Time Machine バックアップを取得するのが安心かもしれません。

設定は簡単で、Time Machine バックアップの設定で 2 つ以上のバックアップ先を登録すると、順番にそれらにバックアップを取ってくれます。USB で接続したハードディスクもバックアップ先として設定できます。最近は大容量のハードディスクもだいぶ安く手に入るので、Mac をメインで使っている人は Time Capsule とは別にハードディスクも取り付けてバックアップするのも良いでしょう。