- 1 名前:login:Penguin [01/09/29 17:20 ID:Dvzu9aGg]
- ではどうぞ
- 147 名前:login:Penguin mailto:sage [2006/12/20(水) 20:47:11 ID:Uo8byV6N]
- ごめん 1.4も残ってのね
- 148 名前:login:Penguin [2007/10/16(火) 17:48:06 ID:QBITXiXV]
- 良スレ上げ
- 149 名前:login:Penguin [2008/06/20(金) 13:34:38 ID:UmT7cN68]
- んじゃ age
- 150 名前:login:Penguin mailto:sage [2008/06/21(土) 23:09:32 ID:c/NSQeXM]
- 本スレが dat 落ちしたようだから,こっちでも使うか?
- 151 名前:login:Penguin [2008/08/20(水) 12:05:01 ID:oELXepYD]
- PC9821 で Plamo Linux を使ってたのですが、ついに本体が壊れてしまいました。
で、HDD からいくつかファイルを抽出したいのですが、ウチにはもう PC/AT なマシンしかありません。 そこでとりあえず 98 の HDD を USB で繋いで、中身を丸ごと dd で抽出しました。 そのイメージからお目当てのパーティション部分だけを抜き出して、PC/AT用にフォーマットしなおした HDD に書き戻そうとしています。 ところが、PC98 のパーティションテーブルの構造がよくわからなくて、目的のパーティション部分を抜き出せないでいます。 イメージを見てみると、一応 オフセット 0x0200 あたりからそれっぽいものがあって、 パーティションの先頭位置と終了位置っぽい数値を見て取ることはできるのですが、 その数値をどう計算すると具体的なセクタ番号が求まるのかわからないのです… ちょっとダンプを転記してみます。 0x0200 20 E2 00 00 00 00 01 00 00 00 01 00 00 1A 01 0x0210 53 77 61 70 2F 4C 69 6E 75 78 20 00 20 20 20 [Swap/Linux] 0x0220 A0 E2 00 00 00 00 1B 01 00 00 1B 01 00 00 94 1F 0x0230 50 6C 61 6D 6F 4C 69 6E 75 78 39 38 20 00 20 20 [PlamoLinux98] 0x0240 A0 E2 00 00 00 00 95 1F 00 00 95 1F 00 00 53 27 0x0250 42 61 63 6B 55 70 20 00 20 20 20 20 20 20 20 20 [BackUp] 値の単位はわかりませんが、多分 0x0001〜0x011A が最初のパーティション、0x011B〜1F94 が2番目、 0x1F95〜0x2753 が 3番目なのだと思います。 10068CYL, 15HEADS, 63SEC/T の HDD なのですが、上記値からパーティションの具体的なオフセットをどのように計算するか、 ご存知の方はいないでしょうか?
- 152 名前:151 mailto:sage [2008/08/20(水) 12:13:12 ID:oELXepYD]
- 申し訳ないです。多分解決です。
あの数値はシリンダ番号ですよね。 そう思って計算したこともあったのですが、計算した値の桁を間違って変な場所を抜き出していました。 つまりはセクタオフセットは 63*15*値 で求まるっぽいです。
|

|