【PC】Windows10の自己修復ループから復旧までの道のり。

年末おしせまる中、12月23日に突如、PCがおかしくなりました。サインインできない状態からスタートし、新しいアカウントを作ることで一時的に動くようにはなったものの、翌日の12月24日にはエラーが発生し、再起動するものの自己修復ループにはまってしまいました。
結局、OS再インストールで復旧させたのですが、その間にいろいろあったので、少しでもお役に立てるよう、記録を残しておきます。

前提条件

うちのPCのスペックは以下の通りです。環境が異なる場合、必ずしも同じ症状がでたり、同じ方法で復旧できるかどうかはわかりません。そこんとこよろしく。

kakaku.com

こちらをカスタマイズなしで購入しました。

  • Windows10 Home 64bit
  • 256GB SSD
  • 1TB HDD
  • Core i7 6700HQ(Skylake)/2.6GHz/4コア
  • 16GB メモリ
  • GTX950M

主な使用目的は自分自身の勉強だったり開発のためで、主アカウントには以下のソフトをインストールしていました。ちなみに、OSと下記のソフトはSSDに入れ、プログラミング等もSSDでやっていました。データが大きくなる場合はHDDに格納する、という運用です。

主たるところはそんなところで、症状が出始める一か月前くらいにarduinoIDEとNode.jsを入れたくらいでしょうか。
このアカウントとは別に、ゲームをするためのアカウントを一つと、実験のためHDDにパーティションを切って入れたWindows10 insider preview用のアカウントを一つ。

ゲームは主にSkyrimをやるためで、SteamをNexus Mod Managerを入れ、MODを入れまくって遊んでいました。このアカウントは家族共用です。

また、自分自身の問題だったのですが、復元ポイントは作成しておらず、回復用のインストールメディアも作成していませんでした。

症状発生

一番最初におかしくなったのは12月22日に妻がSkyrimをやろうとしてゲーム用アカウントにログインしたときのことでした。いつも通りアカウントにログインしたところ、いつものデスクトップにはならず、「アカウントにサインインできません」というエラーメッセージとともになにもないデスクトップが表示されたのです。

アカウントにサインインできません

Microsoftのサポートにあるように、一時プロファイルでログインすることになったようです。原因は明記されていませんが、どうやらアカウントプロファイルが破損したことが原因とのこと。再起動を何度か繰り返してもどうにもうまくいかなかったため、アカウントを新たに作ってデータをそちらに移し替える、という方式をとることにしました。
※この段階ではメインのアカウントには問題なくログインできる状態でした。

新たに作成したアカウントに、以前のアカウントの「ユーザー」以下にあるフォルダおよびファイルをすべて移し替えれば、基本的にはほぼ同じ状態になるはずです。まったく同じ状態にはなりませんが、ひとまずそれで大丈夫でしょう。
で、Nexus Mod Managerが参照しているファイルパスやらなんやらを変更し、ひとまず新しいゲーム用アカウントでSkyrimが問題なく動作するところまで戻しました。

これで一件落着、とおもったのですが。

自己修復ループにはまる

翌日の12月24日、妻が再びSkyrimで遊ぼうとしたらエラーが発生しました。どのようなエラーかまでは見なかったのですが、再起動してみると、「PCが正常に起動できませんでした」という文言とともに、「再起動」と「詳細オプション」のボタンが画面に表示されました。

Windows 10 の自動修復が無限ループしてしまう時の対処方法 - ぼくんちのTV 別館

こちらで紹介されているような画面です。
何度か再起動を繰り返したのですが、いつも同じ画面に戻ってきてしまうため、どうにもなりません。このような症状を「自己修復ループ」と呼んでいるようで、Googleで検索してみると関連する記事がたくさんでてきます。自分も同様に自己修復ループにはまったようです。

再起動を何度か

再起動を繰り返すことで復旧するという話もあるようですが、自分の場合、再起動しても復旧はしませんでした。

システムの復元

そもそも復元ポイントを作っていなかったのでシステムの復元はできません。

セーフモード起動

スタートアップ設定からセーフモードで起動するオプションがあるのですが、セーフモード起動でも同じように自己修復画面に戻ってしまい、これもダメ。

そのほか

コマンドプロンプトからコマンドたたいたり、とか試してみたのですが、結局どれもうまくいかず。

OSリフレッシュ

Windows10にはOSを再インストールする際、「個人データを残す」と「個人データを残さない」の二つが選択できます。「個人データを残さない」はシステムをインストールしているディスクをまっさらにしてOSをインストールしなおす方式で、「個人データを残す」はOSをインストールしなおしますが、ユーザー直下、ドキュメントフォルダに入っているファイル等は残される方式だそうです。

www.ikt-s.com

どんなファイルが保持されるかはこちらを参照ください。
ちなみにこの機能はWindows8時代にはOSリフレッシュと呼ばれていたそうです。

とはいえ、やっぱりどうなるかわからないので、ユーザー直下のファイルはいったん外付けHDDに退避させたい。でも自己修復ループにはまっているから、アカウントにログインできない。どうしたものか。。。

そんなときに役に立ったのが、パーティションを切ってWindows10 insider previewを入れたアカウントだったのでした。

思いがけず役に立ったinsider preview

wanko-sato.hatenablog.com
wanko-sato.hatenablog.com

Windows10 insider previewを入れたのはUbuntu16.04を入れてみたかったからです。これらの記事にもあるように、当時のWindows10から使えるUbuntuは14.04であったため、gccやらboostやらのバージョンが適合せず、16.04を使う必要があったのです。insider previewならばUbuntu16.04が使えるため、そちらを使ってみよう、と。
※結論としてはinsider previewのUbuntu16.04でもうまくいかなかったわけなんですが。。。

insider previewはHDD側に200GBのパーティションを切ってインストールしてありました。
ものは試しに、とinsider previewの方でログインしてみると、これがログインできたわけです。このアカウントからSDDの中身も見れますし、ユーザー直下のデータも見れます。

ということは、データのバックアップもinsider previewからとることができる!

そんなわけで、上記の記事の実験では使えないことが判明したinsider previewなのですが、こんな緊急事態に思いがけず役に立ってくれたのでした。

データのバックアップには数時間を要するため、一晩放置して(完全ではないにせよ)バックアップがとれたので、次の段階に進みます。

初期状態に戻すとエラーが出る

自己修復ループにはまっていましたが、とりあえずinsider previewのおかげでバックアップがとれたので、初期化を行おう、というところまできました。ところが、初期化を実行しようとするとすぐに「初期化できません」とのエラーが発生。

answers.microsoft.com

どうやらWindows10プリインストールモデルでは初期化に失敗するとのことです。自分が購入したモデルもそれに該当するため、初期化できなかったようです。したがって、初期化をあきらめ、インストールメディアからOSの再インストールが必要、ということになりました。

インストールメディアを作る

うちのPCには光学ドライブがないため、インストールメディアはUSBを使わないといけません。Windows10のインストールメディア作成には8GB以上が推奨されているため、近所の電気店で購入し、インストールメディアを作成します。手順はMicrosoftのサポートにある通りです。

Windows 用のインストール メディアを作成する

この手順にしたがえば問題なくインストールメディアが作成できますので、次の手順に進みます。

インストールメディアからクリーンインストール

注意!インストールメディアからインストールすると、OSをインストールするディスクが保存しているデータはすべて消去されます。重要なデータはすべてバックアップしたうえで行ってください。

Windows 10 をクリーンインストールする手順 - ぼくんちのTV 別館

特に深く考える必要はなく、インストールメディアをさした状態でPCを起動すれば、インストール画面に進みます。リンク先にあるように、インストール先のパーティションを選択することができます。自分の場合、HDDはそのままに保持しておきたいので、SSDのみパーティションを初期化してインストールしました。こうすることでHDDに格納されたデータはそのまま保持することが可能です。

インストールが完了したら、必要なアカウントを作成し、ソフト等をインストールしなおせば完了、だったはずなのですが。

忘れていたこと

SteamとNexus Mod Managerをインストールし、MODも全部もとに戻し、Skyrim本体が以前と同様の環境で動くようにファイルを構成しなおし、さてテストしてみよう、という段階で、Skyrimの動作がカクカクするようになりました。あれ?と思ってあれこれ確認してみると、Skyrim起動時に「ビデオカードが認識できない」旨のメッセージが表示されています。おかしいな、と思ってデバイスマネージャを確認してみると、確かにビデオカードを認識していない。
おそらく、MicrosoftからダウンロードしたWindows10をインストールしたため、PC本体出荷時にインストールされていた各種デバイスドライバをインストールし損ねたのが原因だろう、と踏んでメーカーサイトを確認してみました。が、デバイスダウンロードのページにこのモデル用のデバイスドライバが表示されない。どういうことだろう?とメーカーに問い合わせてみたところ、「デバイスドライバは基本的にWindows10本体に組み込まれているはずなので、最新まで更新してみるよう」回答をもらいました。なので、Windows10を最新まで更新したところ、無事ビデオカードを認識し、以前と同様Skyrimも快適に動くようになったのでした。

以上です

まだRやらRStudioやらNode.jsやらのインストールが済んでいないので完全復旧とはいえませんが、とりあえずほぼもとに戻った状態です。
そもそも、ほとんど使っていなかったCygwinやらAnacondaやら、どうにかしたいなぁ、と思っていたところではあったので、ある意味きれいにできてよかったかな、と思っています。復旧を来年まで持ち越さず、今年中に解決できてひとまずよかった。

以上、ご参考になれば幸いです。