2014年7月15日火曜日

めも:パーティションテーブルを壊した Dynabook AZ (AC100) を復旧する

この前 Dynabook AZ に入っていた Ubuntu を書き換え Arch を入れようとして dd してしまったところ、当然ながら AZ がブートできなくなってしまいました。 (よいこは真似をしない方がよい話ですね...orz)
ということで、予備の AZ を入手し、それを使って AZ のイメージバックアップ・リストアにチャレンジしてみました。

といっても、バックアップ方法はそこらじゅうで紹介されている通りであったりします。
具体的には、AC100 Wikiの該当ページにある 1-9 番を行います。

この中で、特に忘れがちなのが手順9の ac100.cfg の生成なのですが、これは滅茶苦茶になってしまったパーティションテーブルを復元時に nvflash で読み込ませるために必要なものです。忘れずに作っておきましょう。

$ dos2unix partitiontable.txt
$ ./parttable_to_cfg partitiontable.txt > ac100.cfg


バックアップを終えたら、次は壊したAZを復元してみます。パーティションテーブルが壊れているため、先のページの方法では単純に復元できません。以下のコマンドで適当に復元します。

$ ./nvflash --bl ../bootloader/harmony/fastboot.bin  --bct ac100.bct --setbct --configfile ac100.cfg --create --verifypart -1 --go

あとは、partition 5-14 を以下のように感じで書き込みます。なお partition 14は書き込むのにめっちゃ時間がかかります。
$ ./nvflash -r --download 14 part14.img

partiton 2, 4のみ以下のように書き込みます。partition3はPT(Partition Table)ゆえ、今回は書き込まなくてもうまくいきました。ただ、ケースによってはここも壊れているかもしれません、以下の要領(といってもパラメータが不明ですが...orz)で復元したほうがよいかと思います。
$ ./nvflash -r -q --rawdevicewrite 0 1536 part02.img
$ ./nvflash -r -q --rawdevicewrite 1792 1024 part04.img




あとはAZを再起動すると、普通に動くようになりました。めでたし。

そんなわけで、パーティション破壊が怖くなくなったのは大きいですね。opencocon の移植に取り掛かるとしましょうか。

0 件のコメント:

コメントを投稿