Montereyへの遠い道程

2021/11/23 2021/11/23

Ryzen3900X + KVM(CPU/GPUパススルー) + Big Surで夢見中のMacOS環境ですが、Catalina → Big Surは特に問題無く上げられていたのでMontereyに変えようと軽い気持ちで始めた所、サーバー稼働自体危ぶまれる所までトラブルが発生しました…

この記事はMonterey上から書けていますが、約1週間MacOSは再起不能 + サーバー自体も2時間強停止の状態からなんとか復活です。
色々なことを一緒にやるのは良くなかったです…

一応起きたことを書いておきます。

新しいOSなのでOpenCoreも新しくしておかなきゃとバージョンアップ実施

今回0.7.1→0.7.5に上げました。上げることは正しいのですが、config.plistに対する修正作業自体に失敗してました。
一番の失敗はProperTreeのOC Clean Snapshotが0.7.3で記法変更となったUEFI/Driversの記法に対応できていない事を認識していなかったことです。

0.7.3の記法変更は認識していて実際修正も行っていたのですが、直近音が鳴らなくなっていた事への対処でkext周りの見直しのためにOC Clean Snapshotを実施した上でconfig.plistを保存。
UEFI/Driversは気づかないまま旧い記述に戻って保存…

そうだ、ホストOS再起動しよう。再起動するならBIOSもアップデートしよう

前週にホストOSであるArch Linuxと別ゲストOSであるCentOSのパッケージアップデートをかけた際にホストOS再起動をしてなかったのでやるかーと思い立ちました。
だったら最近上げてなかったX570 AORUS ELITEのBIOSアップデートもやろうとF34→F36eに上げました。

実はここにも地雷がありホストOSが何回かに1回しか起動しなくなってりますが、頻度は高くなかったのであまり気にせずの状態でスルーしてます。

さあ、Montereyへアップデートだ!

一旦ホストOSは再起動され、立ち上げたBig Sur上からアップデートを実施
1回目の自動再起動走りますが、ここから悪夢がスタートします。

ここから悪夢が続きます。

そうだ、EFIバックアップがある

OpenCoreバージョンアップ前に一応とKext UpdaterのEFI Backupを実行したんだった。
こういうときのKVM。ホストOSからパーティションをマウントして差し替えれば戻るさとEFIパーティションをマウントしてみたところ、見当たらず。

そうだ、保存先はデータパーティション側だ…たぶん。で、そちらをマウントしようとすると怒られる。APFSはLinuxは素では確かに読めない…
APFSを読めるようにホストOSに対してlinux-apfs-rw-dkms-gitをインストールするがマウントで怒られるため、再起動しないとダメかと思いホストOS自体再起動したところ、ホストOS自体が起動しない状態に。
リカバリモードでも起動しない&Arch LinuxのインストールUSBでも途中で落ちる始末に何か別トラブルが起きてる事に気が付き、もしやBIOS最新化した影響かとF36e→F34にダウングレードしたら、何事も無くホストOSは起動。
オイラの3時間を返してくれ…

で、APFSのデータパーティションもマウントできるようになり、覗いてみるもバックアップが取れてない… orz
まだまだ道程は長いとこの時点で半分諦めはじめました。

諦めてMontereyクリーンインストール準備

EFIバックアップが無い以上、もうMacOSを復旧できる状態にないと諦め、ブランクのSSDにクリーンインストールしようと作業開始。
その際、OpenCore 0.7.5のconfig.sampleからconfig.plistを作り直そうと手順を元に修正を始めました。

いざ見てみると手順が以前からちょこちょこ変わっていて、その中でそもそもRyzenパッチを最近更新してないことを思い出し、死亡中のconfig.plistを変えて動きを確認してみたりしましたが、状況は変わらず。

ただ、作り直したconfig.plistと死亡中のconfig.plistをdiffしたときに、ついに気が付きます。

「あれ、UEFI/Driversの記述が古いままだぞ!?」と。

いやいや、まさかこれだけじゃないだろうと思いつつ死亡中のconfig.plistを直して起動させてみた所、立ち上がったよ…

絶対更新したはずのUEFI/Driversがなんで戻ったのか色々頭を巡らせた結果、ProperTreeのOC Clean Snapshotを行った事を思い出し、これか…となりました。

ということでクリーンインスールではなく、再度アップグレードでいくことに。

Montereyアップデート再トライ

障壁を取り去った今、もうこれで普通に上がるだろうと再度チャレンジ。

…何事も無く、上がりました!
ついでに音が最近鳴らなくなっていた状態への対処と、メモリスロットの警告表示の解消対処も行いました。
こちらは別で書こうと思います。

今回の反省点

今回反省点は大きく2つかなと思っています。

① アップデート系(BIOS/OS/OpenCore)を一気にやらない

② EFIのバックアップをちゃんと取っておく&復旧しやすい場所に置いておく

この②についてはKext Updaterで取ったバックアップをEFI領域に置いておくことにしました。
元々EFI領域自体45MB程度と空きが無い状態が26MBと更に無くなりましたがまぁ大丈夫でしょう。
これでもダメならホストOS側に保管するようにします。

クリーンインストールにならなくてよかった…

関連記事

コメントとトラックバック

    コメントはありません

    コメントを残す

    CAPTCHA


    トラックバックURLhttps://e-tune-mt.net/ylab/6050/trackback