中古のノートPCを買って、いろいろいじってひと心地ついたつもりだったんですが、容量問題でやってなかったSSD化を試そうと思い立ちました。
容量問題というのは、Hyper-Vを入れて仮想マシンを作ったらHDDの使用領域が移行先SSDの60GBを超えてまい、移行先でHyper-V運用できないと思ったから。
でもよく考えたら、リカバリ後にWin10のメジャーバージョンアップをしたので、旧バージョンのWin10がHDDに残っててこれが20GB弱。こいつを消しちゃえばいいじゃん、と。
で、SSD化なんて過去にやったことあるし、クローンソフト(EasyUS Todo Backup)でコピーしてHDDと入れ替えるだけと思って軽い気持ちで始めたんですが、またしてもハマってしまいました。
クローン後にSSDに換装して起動したら、メーカーロゴ表示後に「grub >」てなプロンプトが出て起動できない。
先日のいろいろいじった過程で外付けHDDにLinuxをインストールしたことが影響した模様。
試しに当該外付けHDDを接続して起動すると、GRUBメニューが出てきてWin10が選択&起動できたので、Win10のブートローダが外付けHDDに向くよう書き換えられてるように見える。
というか何も考えずにインストールしたから、マルチブートになって書き換えられちゃったんだな。
換装前のHDDでは外付けHDDなしでも問題なくWin10が起動できてたのがナゾではあるが、クローンでちょっと状況が変わったんじゃないかと。
で、ここから3時間くらいハマりました。
いろいろネットで調べて悪あがきしつつ、結局有効だったのは、
bootsect /nt60 sys
bootrec /fixboot
「回復環境のコマンドプロンプト」というのは、回復パーティションや回復ドライブで起動したときのメニューにあるコマンドプロンプトのこと。
ひょっとしたらWin10起動後の管理者権限のコマンドプロンプトでもできるかもしれないけど、作業の流れの関係でやってません。
bootrecだけでいけるという情報もあったけど「アクセスが拒否されました」になったのでbootsectをやってます。
ちなみにクローン後の回復パーティションもアクセスできなくなってて、Win10から回復環境に入れなかったので、以前、別のPCにWiin10インストール時に使ったUSBメモリで起動したコマンドプロンプトで復活させました。
だいたいこんな感じ(自分用メモ)。
※「Windows REの状態」がDisabledになってるはず
diskpart
※以下exitまでdiskpart内。
目的は回復パーティションにドライブレターを付けること
list volume
→パーティション一覧が出るので回復パーティションを探す
select volume x
→パーティション一覧で見つけた番号をxに
assign letter=r:
→ドライブレターを割り振ってあとで使う
exit
reagentc /setreimage /
※ヘルプを表示して最後の行を次の入力としてコピペする
reagentc /setimage 〜
※前述のヘルプのコピペ。これでリカバリイメージの場所を登録するらしい
reagentc /enable
※登録したリカバリイメージの有効化
reagentc /info
※「Windows REの状態」がEabledになってるはず
雰囲気的には、回復パーティションと対応するWin10パーティションの関連付けが切れてたのを修復してる感じでしょうか。
で、SSDにしてどうだったかというと、当たり前ですがとりあえず起動とシャットダウンは明らかに速くなりました。たぶん快適に使えるでしょう。
空き領域は一旦Hyper-V関連も削除した状態でクローンして26GBくらい。Hyper-VはLinuxの仮想マシン1個くらいはなんとかなるんじゃないかと。
ちなみに外付けHDDのLinuxは起動できなくなりましたが、Hyper-Vでいいかと思いつつ、気が向いたら再インストール(今度はブートローダに気をつけて)して、Hyper-VではなくUSBブートにしてSSDの容量を確保するのもアリかなと。
しかしまあ、やっぱこのあたりのことはやりはじめるとハマりがちですな。
つうか今回のは単純にLinuxインストール時のミスが発端だし、昔だったら「ああ昔で言うところのfixmbr系の問題だな」とかすぐに検討つけて解決できそうなのにアタマの柔軟性とかも老化してるかも。
てなわけでまた一食抜き&ピアノ練習抜きになったのでした。