初めてのFreeBSD・03日目:GPT保護パーテーションの罠
USBメモリへのインストール時、最初、よせば良いのに「USBでPureZFSやってやんよ!」と、MBRフォーマットを潰してGPT設定で進もうとしたのです。案の定ファイル転送でなんかIOエラー吐いて固まったので諦めたのですが‥‥。
あとからMBRフォーマットしようとしても、これが消えてくれない。fdiskもgpart -s MBRも、なんか成功したように見えて、後で確認したらGPTエリアが復活するという‥‥。
種明かしすれば、この動作はGPTのデータ保護の仕組みに引っかかっていたのでした。GPTはMBRと同様にHDDのパーテーション分割の仕組みで、MBRの2TBの壁を超えて広大なHDDエリアに対応する次世代パーテーションです。特徴の一つに、GPT領域の保護の仕組みがあります。簡単に言えばパーテーション情報を先頭と一番後ろの2箇所に書き込んで、先頭が潰れたら後ろの方を正にしますよ、という安全機構です。後ろの方をGPT保護パーテーションというようです。
‥‥どーも、FreeBSDで、この後ろを消す方法がよく分からない。MBRでフォーマットし直しても、後ろを消してくれない(MBRでは先頭だけフォーマットすればOKだから?)。そして、BSDカーネルは、そのうちGPT保護パーテーションを見つけ出して、「これは実はGPTフォーマットなんだ!」と勘違いするらしく、わざわざGPTフォーマットを復活させる‥‥らしい。
結局Windowsの方で消しました。うぅ、多分FreeBSDでもちゃんと消せるのでしょうが、知識が無いのは辛いですねぇ‥‥。早くサイト復活させないといけないのに、今日で睡眠時間が4時間しか取れてないのが3日続いておりますorz。