triggerhappysundaymorning

ガソリンスタンドに住みたい

GRUB Error 22

少し前にブートパーティションが含まれたRAID1構成を解除して単体ディスクに変更したのだが,その際パーティションテーブルがどこかに行ってしまい大変難儀した.最終的に片方のディスクのパーティションを切り直してopensuseを新たにインストールし直した後,もう片方のディスクのパーティション構成を「testdisk」コマンドを用いて復旧させた.


この副産物として容量小さすぎてアップグレードしたopensue 11.2ではXenカーネルをインストールできなかったbootパーティションを使わず,rootに置かれた/bootディレクトリを使うようになり,又Linuxパーティションext3からext4に変更された.復旧したディスクから/home以下のユーザデータをこの環境に移動してほぼ以前の環境を復元することが出来た.


しかしこの時以来PC電源投入時にGRUBが正常に起動せず,Error 22を吐いて停止してしまうようになった.インストールDVDからブートローダをインストールし直しても,ブートローダの設定を作り直してもこの現象は改善せず,しかも何故かopensuseインストールDVDから起動し,そのブートメニューでHDDから起動を選択すると正常にGRUBのグラフィカルなブートメニューが起動する.


設定ファイルを確認しても怪しいところが無く,しばらく難儀していたのだが,本日はたと思い当たりBIOSメニューでブートデバイスのプライオリティを確認したところ,3台接続されているHDDの起動順がSATA4,SATA1,SATA2の順となっていた.RAID構成を組んでいたHDDはSATA1,SATA2であり,SATA4に接続されているHDDはデータ保存専用に使っているドライブで,OSからもsdcとして認識されているものだった.今回opensuseをインストールしたディスクはSATA1であり,これはOSからsdaとして認識されている.デバイスIDを用いているのでBIOSでのブート順は関係ないと思っていたが,念のためこのBIOS設定をSATA1,SATA2,SATA4の順に変更してみたところ,インストールDVDを介さなくても正常にブートメニューが起動してくるようになった.