ディスクの物理エラー(不可能)をテストし、ディスクのファイルシステムエラーをテストしたいと思います。ディスクは一般的なUSB外付けドライブです。ディスク(パーティションレベルではなくディスク全体)はVeraCryptを使用して暗号化されます。私のファイルを保存するパーティションはBtrfsを使用しています。私たちはまた何ができますか?
私が自分で試したことは次のとおりです。
まず、Web検索の結果は、badblocks
このツールが廃止されたツールであることを示しています。実行してみると、読み取り専用にしてもらうよう依頼しましたが、既存のファイルが破損する可能性があると思われてキャンセルしました。
その後、VeraCryptボリュームの「ファイルシステムの確認」コンテキストメニューを試しました。ただし、「BTRFSファイルシステムの整合性を確認したり、破損したファイルシステムを修復したい場合は、btrfs(8)サブコマンド 'check'を参照してください」という「fsck」ウィンドウが表示され、終了します。
ターミナルを開いて実行しようとしましたが、btrfs check
「/dev/sddで有効なbtrfsが見つかりませんでした」(ディスク全体が暗号化されている可能性があります)と「sudo btrfs check(decryption)ディレクトリ)」のため、「sudo btrfs check(device name )」が失敗しました。 「通常のファイルやブロックデバイスではないため」失敗しました。
PS:受け入れられた回答のおかげで、正しいデバイス名が得られました。後で同じ問題が発生する人のために、以下を追加しています。私が使ったコメントはです。これがなければ、実際のファイルではなくディスクのメタデータチェックサムだけを確認するため、テストを再実行する必要があると付け加えsudo btrfs --force --check-data-csum -p /dev/mapper/veracrypt1
ました(以前のすべての確認操作を再実行しました)。現在までに確認された項目の数を見せるので良い選択のようです。--check-data-csum
-p
答え1
ディスクのエラーを確認するには、次のものを使用できます。賢い:
smartctl -a /dev/sdd
あるいは、GUIが必要な場合は、GNOMEディスクを使用できます。スマートデータとセルフテストメニューオプション。 (すべての外付けドライブがSMARTをサポートしているわけではないため、この方法はあなたには適していない可能性があります。)
/dev/sdd
ファイルシステムを確認するために、btrfsは「読み取り可能な」ファイルシステムではなく暗号化されたデータを保持するため、使用できません。lsblk
プレーンテキストデータ(おそらく)にアクセスするために使用されるdm-cryptデバイスの名前を取得し、/dev/mapper/veracrypt1
それに対してファイルシステムチェックを実行するために使用されます。
btrfs check /dev/mapper/veracrypt1
答え2
簡単な猫を試してみることができます
sudo cat /dev/sdd > /dev/null
これはrawデバイスを渡し、物理レベルのエラーがあるかどうかを報告する必要があります。
答え3
badblocks
安全でなければなりません。結局必要なのは読み取り専用デフォルトではアクセスされます(このオプションを使用しない限り-w
)。badblocks -s -v /dev/sdd
しかし、より良いアプローチ(ディスクがSDDでない場合)をsmartctl -t long /dev/sdd
使用してsmartctl -a /dev/sdd
進行状況を監視し(時間がかかります)、誤った(つまり再割り当てされた)ブロック数を確認することです。