GNU/Linux >> Linux の 問題 >  >> Linux

TestDiskでパーティションとファイルを回復する

Linuxでの偶発的なファイル削除の防止と回復の方法では、ローカルバックアップとリモートバックアップ、ファイル削除コマンドのスマート管理を使用してファイル回復のドラマを減らす方法、およびファイル回復の緊急事態に対応するための一般的なベストプラクティスについて説明しました。残念ながら、事故が発生し、ハードウェアが故障します。失われたファイルやファイルシステムを回復するときに頼るツールの1つは、TestDiskです。

注: 必須のバックアップ計画がない場合は、今すぐ実装してください。バックアップイメージがあるために初めてTestDiskに頼る必要がない場合、計画と準備は時間と安心の両方で自己負担になります。

TestDiskは、失われたパーティションデータと回復されたパーティションの範囲内の失われたファイルを回復しようとします。このツールは、それ自体でデータを回復できる場合があります。または、最初にTestDiskを使用してディスクイメージを取得し、次にScalpelでファイルタイプのイメージをスキャンすることにより、ファイル抽出ツールであるScalpelと組み合わせて使用​​する場合があります。メスの使用について詳しくは、今後の記事をご覧ください。

TestDiskは、Scalpelよりも焦点が絞られておらず、柔軟性が高いため、このツールの使用方法は状況によって異なります。 TestDiskはインタラクティブなアプリケーションであるため、被害者のデバイスまたはイメージを指すことから始めます。例:

$ sudo ./testdisk_static /dev/sdx 
	
Disk /dev/sdx - 1939 MB / 1850 MiB - General UDisk

Please select the partition table type, press Enter when done.
 [Intel  ] Intel/PC partition
>[EFI GPT] EFI GPT partition map (Mac i386, some x86_64...)
 [Humax  ] Humax partition table
 [Mac    ] Apple partition map
 [None   ] Non partitioned media
 [Sun    ] Sun Solaris partition
 [XBox   ] XBox partition
 [Return ] Return to disk selection

TestDiskは正しいパーティションマップを検出しようとしますが、よくわかっている場合は、特定の場所で推測を上書きできます。パーティションスキームを選択すると、TestDiskはメインメニューを提供します。ここでは、ファイルを分析したり、ファイルを復元したり、ディスクのジオメトリやオプションを変更したりできます。一般的なワークフローは、分析してから回復することです。

ラボのサムドライブの例でTestDiskを実行すると、次の分析が返されます。

TestDisk 7.0, Data Recovery Utility, April 2015

Disk /dev/sdb - 1939 MB / 1850 MiB - CHS 1018 60 62
Partition    Start       End    Size in sectors
>D MS Data        2046    3788757    3786712 [wreck]
 D MS Data        75744     84543      8800 [NONAME]

この場合、失われたパーティションの名前はwreckでした。 、およびTestDiskはその境界を正常に検出しました。回復している唯一の失われたデータがパーティションマップの損失である場合、この時点で、このデータを使用して、GNUPartedを使用してそのマップを再作成できます。

分析が成功すると、詳細のいくつかの新しいオプションのロックが解除されます メニュー。パーティションの境界を利用して、このパーティションのデータをイメージファイルにダンプできます:

Partition                  Start        End    Size in sectors
> 1 P Unknown                     2048    3788766    3786719
	 
	 
[  Type  ] >[Image Creation]  [  Quit  ]

その後、画像でメスを使用して個々のファイルを復元できます。

または、パーティションとファイルシステムのタイプ(タイプ)を知っている場合もあります )、この場合、TestDiskがデータを処理する方法を指定できます。これを行うと、TestDiskがバックアップのスーパーブロックを見つけるのに役立ちます 、mkfsを使用できるようにします このようにデータを回復するには:

Disk /dev/sdb - 1939 MB / 1850 MiB - CHS 1018 60 62
Partition                  Start        End    Size in sectors
MS Data                     2048    3788759    3786712 [wreck]
superblock 32768, blocksize=4096 [wreck]
superblock 98304, blocksize=4096 [wreck]
superblock 163840, blocksize=4096 [wreck]
superblock 229376, blocksize=4096 [wreck]
superblock 294912, blocksize=4096 [wreck]

To repair the filesystem using alternate superblock, run
fsck.ext4 -p -b superblock -B blocksize device

または、TestDiskを使用して、リストでファイルを検出できます。 メニューオプション:

Partition                  Start        End    Size in sectors
> 1 P EFI System                  2048    3788766    3786719

[Type]  [Superblock] >[  List  ]  [Image Creation]  [  Quit  ]

TestDiskの使用は間違いなく旅です。レスキューしようとしているドライブのバックアップを以前に作成している限り、このツールは通常、問題が発生したときに実験しても安全です。ただし、実験のみを行う場合は、別のテストマシンで行うのが最も安全です。

そして実験してください。練習することで得られる経験は非常に貴重です。


Linux
  1. LinuxでMeldを使用してファイルとフォルダをグラフィカルに比較する

  2. 特定の日付のファイルを検索して削除する

  3. Linux での 1,000 万個のファイルの保存とバックアップ

  1. findコマンドを使用してLinux上のファイルとディレクトリを検索します

  2. LinuxでSUIDおよびSGID権限を持つファイルを検索する方法

  3. Linuxでpartedを使用してパーティションを作成および管理する

  1. SCPとRsyncでファイルをコピーする

  2. ファイルを検索して tar (スペースを含む)

  3. find と xargs を使用して rm でファイルを削除する