Disk Salvage Tools for FAT16/FAT32の紹介とダウンロード Ver 2.0
現行バージョンは、Ver2.0です。
[ファイルシステム復旧ツール]
■MBRパーティーションテーブル復旧ツール( BPB2MBR2.EXE )
BIOSパラメータブロックをHDD内から検索して、MBRのパーティーションを再作成する
ツールです。前作の"BPB2MBR.EXE"のバージョン2という事で、"BPB2MBR2.EXE"とい
う実行ファイル名にしました。今まで、色々な方に使って頂いて特に不具合も無いの
で正式版とします。基本的に更新するのはMBRだけで、バックアップファイルを作成
するので、失敗すれば LBA_PAT.EXEを使えば元の状況に戻すことができます。
前作からバージョンした内容は、、
・拡張INT 13hを使ってHDDの検索を行います。よって、今までの8.4GBの制限は無く
なりました。
・NTFSのパーティーションも復旧できるようになりました。
■BPB(BIOSパラメータブロック)修復ツール (MBR2BPB.EXE BPB_G16.EXE BPB_G32.EXE)
今までは、BPBの修復は基本パーティーションで1HDDに1パーティーションを確保し
たボリュームのみしか復旧できなかったのですが、HDDの大容量化に伴い複数パーテ
ィーション確保のボリューム復旧が増えてきました。
そこで、どの位置からパーティーションが始まっていてもBPBを復旧する為のツール
を開発しました。このプログラムはMBR2BPBという親プロセスから呼び出される事を前
提としていますが単独で、引数にボリュームの開始位置(BPBが在ったセクターアドレ
ス)と、ボリュームの総セクター数を指定して起動する事も可能です。
MBR2BPBでは、パーティーションテーブルの情報からから、BPB_G16.EXE / BPB_G32.EXE
を子プロセスとして呼び出す他に、NTFSのBPBをバックアップセクターからオリジナル
セクターへ書き戻して復旧する機能が付いています。
NTFSのボリューム復旧でBPBの消失による場合には、このツールで復旧が可能です。
■ルートディレクトリー復旧ツール (ROOT_G16.EXE ROOT_G32.EXE)
今まで、クイックフォーマット等のルートディレクトリーの破損については、サブデ
ィレクトリーサーチを私の所に送ってもらって、ディレクトリーイメージをDEBUGで
作成してPatchする事をやっていました。エントリー数が少ないうちは、まあ良かっ
たのですが、上書きしたボリューム等は迷子のディレクトリーが大量に発生して復旧
するのが大変になってきました。
そこで、サブサーチのログを読ませて、復旧するプログラムを考えたのちに、
・クイックフォーマットで壊したのならBPBは正常と考えられる。
・ルート直下のディレクトリーだけを復旧すれば良いはず。
という事に思い至り、このプログラムを開発しました。
■FAT消失時のファイル復旧ツール (L_COPY.EXE )
Windows9x/MEのDOS窓で使用する、FAT消失時のファイル復旧ツールです。ロング
ファイル名に対応したので、S_COPYからL_COPYと名前を変更しました。
L_COPYは、FAT障害時にdirectory情報からファイルの位置を計算してデータが全て
連続していると仮定して、セクターからデータを読んでファイルにマージするプロ
グラムです。
[HDD診断・復旧ツール (拡張INT 13h)BIOS版]
■LBA_TEST.EXE Ver1.41
E-IDE HDDに対してリードテストを実施します。
引数は次のものが使用できます。
・HDD#"80"〜"87" INT 13h BIOSから見えるユニット番号を指定します。
指定がなければ、最初のHDD(#80h)が指定された事になります。
・リードテストするアドレスを16進数で、"/A:nnnn-nnnnn"で指定できます。
・通常は、126セクター単位でセクターを読み取りますが、"/S"オプションが指定され
るとエラー発生時に、1セクター単位での読み取りモードに移行し、より細かくエラ
ー発生アドレスを特定する事ができます。
・エラーログを、テキストファイルに保存するには"/L:log-file" で指定します。
この時、ログファイルはフロッピー(A:ドライブ)作成されますので、フロッピーから
実行してください。
・"/T:nn.nn"タイムアウトエラーの閾値を設定します。
■LBA_SAVE.EXE Ver1.1
E-IDE HDDの特定セクターを読み取って、ファイルに保存します。
Patchする元データを取得したり、遠隔から障害診断を行うのに有効です。
保存するセクター数は、126セクター以下に制限されます。
引数はINT 13hから見える、HDD#を指定します。
■LBA_PAT.EXE Ver1.2
E-IDE HDDの特定セクターをPatchするツールです。Patchする前に、そのセクターの
情報をファイルに保存します。また、Patchするイメージデータは予め作成する必要が
あります。Patchするセクター数は、126セクター以下に制限されます。
引数はINT 13hから見える、HDD#を指定します。
■LBA_SRCH.EXE Ver3.1
E-IDEのHDDの全てのセクターを読み込んで、"."と".."の在る論理セクターと、そこに書
かれているアドレス、その他BPB、FSINFO、$MFT、拡張パーティーションテーブルのア
ドレスを報告します。また、マスターブートレコードに書かれているパーティーション
テーブルと、拡張パーティーションのリンクマップ内容も表示します。
このツールは、FATファイルシステムのボリューム修復において、絶大な威力を発揮し
ます。見る人が見れば、この情報だけでこのボリュームが元々どのような確保をされて
いたか、判断する事ができ、BPBやルートディレクトリーの修復も、このログだけか
ら行う事が可能です。
■LBA_COPY.EXE Ver1.4c
E-IDE HDDのイメージコピーを行うツールです。正規リリース版で、修復モードコピー
(エラーが起った時に、セクター単位でコピー)をサポートしました。
Ver1.4cでは、マスター側のMBRにエラーがあっても、無視してコピーを行います。
なお、引数は次のものが使用できます。
・HDD#の指定は必須です。例えば、 "80-81"の様な引数を与えた場合
コピー元:HDD#80 -->コピー先:HDD#81となります。
・アドレス指定 "/A:nnn-nnnn" により、特定のセクターアドレス範囲をコピーします。
・ディフォルトでは、コピー先の書きこみで read & verify after writeを行っていま
すが、"/nv" オプション(no verify)によって省略が可能です。インストール等、ハ
ードの故障が無い状態で高速にコピーする場合等に有効です。
・エラーが発生したアドレス処理で、読み取りできなかったセクターのコピー先に
ALL 00H のデータを書き込みたい場合に "/z" オプションを付けます。"/z"オプショ
ンが無い場合には、読み取りできなかったセクターアドレスについては、コピー先の
ディスクに対して何のデータも書かれません。
■LBA_DUMP.EXE Ver1.0
E-IDE HDD の論理セクターアドレスをダンプするツールです。
任意アドレス指定と、連続したアドレスを指定してダンプする事ができます。
引数は、拡張INT 13h BIOSから見える HDD#を指定します。
[HDD復旧ツール 非BIOS版]
■IDENTIFY.EXE
HDDのIdentify情報を取得して表示するツールです。
引数は以下のどれかが必要です。
00:プライマリーIDE(IO Port 1F0h)マスター
01:プライマリーIDE(IO Port 1F0h)スレーブ
10:セカンダリーIDE(IO Port 170h)マスター
11:セカンダリーIDE(IO Port 170h)スレーブ
■ATA_DUMP.EXE
HDDのセクター情報をダンプするツールです。
引数は以下のどれかが必要です。
00:プライマリーIDE(IO Port 1F0h)マスター
01:プライマリーIDE(IO Port 1F0h)スレーブ
10:セカンダリーIDE(IO Port 170h)マスター
11:セカンダリーIDE(IO Port 170h)スレーブ
■ATA_COPY.EXE
HDDのイメージコピーを行います。引数はありません。
マスターHDD:プライマリーIDE(IO Port 1F0h)マスター
ワークHDD :セカンダリーIDE(IO Port 170h)マスター
固定となります。1セクター単位でコピーを行い、読めなかったセクター
アドレスについては、ワーク側にALL 00hを書きます。コピー速度が非常に
遅いですが、復旧成績はLBA_COPYよりも良いです。
Salvage20.lzhをダウンロードする(252,148 Byte)
ホームへ戻る