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

Linux –ブロックデバイスにファイルをコピーした後のデータ回復?

個人ファイルのバックアップがあるNTFS形式のUSBハードドライブがあります。
今日、ドライブをOracle Linuxシステムにマウントし、以下のコマンドを使用して通常のファイルをコピーしました(以下のコマンドを参照してください)。誤ってデバイスファイル/dev/sdb1を使用しました コピー中。

mount -t ntfs-3g /dev/sdb1 /sample
cp file1 /dev/sdb1

この後、ドライブをアンマウントしてWindowsシステムに接続しました。これで、Windowsシステムは、ドライブをフォーマットまたは破損する必要があると文句を言います。

私の質問は、個人データを失うことなくこのドライブを回復できるかどうかです。このドライブで利用可能なファイルを表示するにはどうすればよいですか? Linuxシステムにマウントし直すだけで、ファイルが表示されますか?

承認された回答:

ソフトウェアの推奨事項に関するQ&Aで非常によく似た質問に回答しました ウェブサイト。

紛失したファイル

個人データを失うことなくこのドライブを回復できますか?

「個人データ」がユーザー生成データ(システムファイルを除く)を意味する場合、これが当てはまる可能性がありますが、NTFSドライブにOSが含まれている場合のみ (おそらくWindows)。作成したファイルがそれほど大きくないと仮定すると、ファイルシステムの最初の4〜5 GBを超えて上書きすることはありませんでした。これは、Windowsによって占有されていたはずです。

ドライブにユーザーファイルのみが含まれている場合は、控えめに言っても、それらのいくつかを失ったことはほぼ間違いありません。

パーティションをマウントしようとしないでください

このドライブで利用可能なファイルを表示するにはどうすればよいですか? Linuxシステムにマウントし直すだけで、ファイルが表示されますか?

いいえ、そうしないでください。 回復されるデータの量を最大にしたい場合は、通常のツールを使用してドライブに再度アクセスしようとしないでください。 fsckを使用して修正しようとしないでください または同様のプログラム。

ドライブのクローンを作成する

最初にドライブのクローンを作成し、元のドライブでのリカバリの試行を回避する必要があります。 ddrescueを使用できます ドライブにハードウェアの損傷がある場合でもコピーを実行するには(あなたのドライブには損傷はありませんが、それでも便利なツールです):

ddrescue /dev/sda /media/user/External/copy.img /media/user/External/status.log

故障したハードディスクからの未加工のコピーに対する私の回答を参照してください 詳細な説明については。

コピーからファイルを復元する

免責事項: 私はRecuperaBitの作者です。

これで、copy.imgからファイルを復元してみることができます 。パーティションの最初の部分だけを台無しにした場合、たとえば最大数メガバイトの場合は、testdiskを使用して復元できる可能性があります。 :

testdisk copy.img

プログラムはバックアップNTFSブートセクターを検索し、パーティションの内容を読み取ろうとします。 Pを押すと、ファイルを一覧表示できます。 ドライブを分析し、適切なパーティションを強調表示した後。

関連:バイトレベルとファイルレベルのバックアップ?

これが機能する場合は、Cを使用できます 1つまたは複数のファイル/フォルダをコピーするためのボタン。テキストインターフェースは、従うのが難しくない段階的なプロセスを示しています。

損傷が深刻で、Testdiskがパーティションをマウントできない場合は、RecuperaBitを使用してファイルを回復できますが、プロセスにはさらに時間がかかります。 RecuperaBitは、ファイルシステム構造の再構築とファイルの回復を試みます。現在、NTFSのみをサポートしています。 RecuperaBitは、以下に関係なく、ディレクトリ構造の再構築を試みます。

  • パーティションテーブルがありません
  • 不明なパーティション境界
  • 部分的に上書きされたメタデータ
  • クイックフォーマット

次のコマンドで分析を開始できます:

mkdir /media/user/External/recovered_files
cd [full path of recuperabit]
pypy main.py /media/user/External/copy.img -o /media/user/External/recovered_files -s /media/user/External/savefile.save

次に、「recoverable」と入力します パーティションのIDを検出します。 2であると仮定します 、タイプ:

restore 2 5
restore 2 -1

ルートから到達可能なファイルを復元するには(5 )およびそうでないもの(-1 )。繰り返しになりますが、追加の詳細と遭遇する可能性のあるいくつかの警告については、私の元の回答を参照してください。


Linux
  1. Linuxターミナルでファイルをコピーする

  2. Linuxターミナルでファイルを移動する

  3. Linuxでmvなしでファイルを移動する

  1. Linuxシェルスクリプトを使用してパターンが一致した後、ファイルに複数行のデータを挿入します

  2. ファイルシステムにデータを隠す?

  3. Linuxでテキストファイルの行にちなんで名付けられたファイルを作成する方法

  1. データを消去するための4つのLinuxツール

  2. Linuxでの偶発的なファイル削除を防止および回復する方法

  3. Scalpelデータ回復ツールを使用してLinuxで削除されたファイルを回復する方法は?