Possible Locations for the Superblock
思わず fsck_ffs/setup.cを見て superblocksの位置を確かめて、fsck_ffs -b 32 /dev/adXなどとしたが、やっぱダメポ。
/* * Possible locations for the superblock. */ static const int sbtry =
SBLOCKSEARCH; /* locations the 1st alternate sb can be at */ static const int
altsbtry = { 32, 64, 128, 144, 160, 192, 256 };
これまでのあらすじ
HDD二台持ち込まれ、何とかマウント出来ないかというご依頼。
常道はこれDO台だけど、先方に貸し出したままのがあったので、それでトライしてもらったけど、どうも上手く逝かない模様。
HDDが二台あるっつーことでミラー構成を疑い、アレイ構成の有無やら OSについて尋ねたものの情報が取れず。
これDO台でコピーしたディスクを PCに繋ぎ直してみたが、やっぱり OSが Bootしない由。
基本方針
HDD1-> Copy of HDD1 -> Copy of Copy of HDD1という風に二世代コピーをして、作業用HDDを作る。
マウントしたりあーだこーだするときは Copy of Copy of HDD Xをいじり、壊したら Copy of HDD Xから再度クローンを作る。
適当な OSから suspicious HDDをマウントして健全そうな HDDにコピーする。
作業
これDO台で、HDD1-> Copy of HDD1 -> Copy of Copy of HDD1という風に二世代コピーをして、作業用HDDを作る。
作業用に別 HDDに FreeBSD7を入れる。
BIOS的に認識されない子を、FreeBSDの atacontrolを繰り返して認識されるまで頑張る。
- atacontrol list
- atacontrol attach $CHANNEL
- atacontrol detach $CHANNEL
FreeBSD的に認識されたら、HDD2-> Copy of HDD2 -> Copy of Copy of HDD2も作る。
一世代目の copyを作るのは 1-10時間くらいかかるので気長にやる。
copyから孫コピーを作るのはエラーが無いことが期待されるので 1時間程度。
HDD1、HDD2ともにテキトーに繋いでも Boot Loaderが出てこないので、他の OSからマウントしてディレクトリ、ファイルをコピーする作戦に移行する。
FreeBSD fdiskで見たら、HDD1は Linux ( sysid 142 (0x8e),(unknown) ), HDD2は FreeBSD ( sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD) )ということがわかる。