ディスクに不良セクタが存在する可能性があります。 ext3ファイルシステムを使用しました。
Windowsのエラーチェックツールに最適なツールはどれですか?
不良セクタをチェックするには、SMARTデータをチェックします。おそらく、Disksユーティリティ(Palimpsest)。不良ブロックが表示されない場合でも、確実にセルフテストを開始してください。
プログラムはgnome-disk-utility
パッケージにバンドルされています。 gksudo gnome-disks
を実行します
または、Ubuntu 16.04バージョン(3.18):
badblocks
を使用することもできます
Sudo badblocks -sv /dev/sda
単にチェックするか、最初に結果を一時ファイルに書き込んでチェックして修正するには:
Sudo badblocks -sv /dev/sda > bad-blocks-result
Sudo fsck -t ext4 -l bad-blocks-result /dev/sda1
ディスク全体をチェックし、/ dev/sdaで検出されたすべての不良ブロックを出力します。
badblocks
マニュアルから:
重要な注意:badblocksの出力がe2fsckまたはmke2fsプログラムに送られる場合、ブロックサイズを適切に指定することが重要です。生成されるブロック番号は、ファイルシステムで使用されているブロックサイズに大きく依存します。このため、ユーザーはbadblocksを直接実行せず、e2fsckおよびmke2fsプログラムの-cオプションを使用することを強くお勧めします。
fsck
fsck
自体は、不良セクタを見つけるのに役立ちませんが、さらに悪いことに、多くの不良セクタがある場合、データをさらに損傷する可能性があります。ディスクが正常な場合にのみ使用してください。
この回答全体を通して、ストレージドライブはパス/dev/sdc
でブロックデバイスとして表示されると仮定します。現在の設定でストレージドライブのパスを見つけるには、次を使用します。
palimpsest
)、GUIが利用可能な場合、またはlsblk
とls -l /dev/disk/by-id
の出力を見て、サイズ、パーティション、メーカー、モデル名で適切なデバイスを見つけてください。記憶媒体は、単にまったく動作しないこともあります。カーネルとディスクマネージャーではブロックデバイスとして表示されますが、パーティションテーブルを保持している最初のセクターは読み取ることができません。これは次の方法で簡単に確認できます。
Sudo dd if=/dev/sdc of=/dev/null count=1
このコマンドの結果、「入力/出力エラー」に関するメッセージが表示された場合、ドライブが破損しているか、期待どおりにLinuxカーネルと対話できません。前者の場合、少し運が良ければ、適切に設備されたラボを持つデータ復旧の専門家がそのコンテンツを回収することができます。後者の場合、別のオペレーティングシステムを試してみる価値があります。 (特別なドライバーなしでWindowsで動作するUSBドライブに出会いましたが、LinuxまたはOS Xでは動作しません。)
それをサポートするデバイスは、 S.M.A.R.T。 を介して健康状態について問い合わせることができます。または、さまざまな完全性の整合性セルフテストを実行するように指示することができます。これは一般的に最良のオプションですが、通常は(非古代の)ハードディスクおよびソリッドステートドライブでのみ利用可能です。ほとんどのリムーバブルフラッシュメディアはサポートしていません。
その他のリソースと手順:
デバイス全体に書き込みを行わずに読み取り整合性をテストするには、次のように badblocks(8)
を使用できます。
Sudo badblocks -b 4096 -c 4096 -s /dev/sdc
特にストレージドライブが実際に破損している場合は、この操作に時間がかかることがあります。エラーカウントが0を超えると、不良ブロックがあることがわかります。不良ブロックの正確な量(および場所)に関心がない場合は、いつでも(電源障害時のように強制的に)操作を安全に中止できます。オプション-e 1
を使用すると、エラーが発生すると自動的に中止することができます。
高度な使用法に関する注意:e2fsck
の出力を再利用する場合は、含まれるファイルシステムのブロックサイズ(-b
)を設定する必要があります。スループットを改善するために、一度にテストされるデータ量(-c
、ブロック単位)を微調整することもできます。 16 MiBはほとんどのデバイスで問題ありません。
時々-特にフラッシュメディアでは-書き込みを試みたときにのみエラーが発生します。 (このは、実際に持っているよりも大きなサイズをアドバタイズする(フラッシュ)メディアを確実に検出しません。代わりに Fight Flash Fraud を使用してください。)
NEVERドライブでこれを使用するマウントされたファイルシステム!badblocks
強制しない限り、とにかくそれらの操作を拒否します。
この操作を中断しないでくださいforcefully! Ctrl+C (SIGINT/SIGTERM)および正常な早期終了の待機は問題ありませんが、killall -9 badblocks
(SIGKILL)はできません。強制終了すると、badblocks
は現在テストされているブロック範囲の元のコンテンツを復元できず、ジャンクデータで上書きされたままになり、ファイルシステムが破損する可能性があります。
非破壊的な読み取り/書き込みチェックを使用するには、上記のbadblocks
コマンドに-n
オプションを追加します。
上記と同じですが、書き込みテストの実行後に以前のドライブの内容を復元せずに、少し速くなります。とにかくデータが消去されるため、強制的な終了は(追加の)負の結果なしに残ります。
破壊的な読み取り/書き込みチェックを使用するには、上記のbadblocks
コマンドに-w
オプションを追加します。
fsck-Linuxファイルシステムの確認と修復。を使用して呼び出す
fsck /dev/sda1
/ dev/sda1は、確認するドライブです。詳細については、「man fsck」を参照してください。
デバイスに不良ブロックをチェックする「badblocks」コマンドもあります。
チェック時にドライブをアンマウントする必要があるため、ルートパーティションをチェックするには、パーティションのルートに「forcefsck」ファイルを作成し、再起動する必要があります。デバイスは、次回の起動時にチェックされます。
Sudo touch /forcefsck
Sudo reboot
または、Live CDから起動して、そこからチェックを実行することもできます。
IMO smartctlはより優れたツールです。おそらく最初にインストールする必要があります
Sudo apt-get install smartmontools
それから
Sudo smartctl -a /dev/sda | less
ドライブの正常性データ、属性、および利用可能なテスト結果を印刷します。終了を少なくするには、q
と入力します。代わりに
Sudo smartctl -H /dev/sda
健康データを印刷するだけです。
バックグラウンドで新しい短い(数分)または長い(数時間まで)自己テストを開始するには:
Sudo smartctl -t [short|long]
GSsmartControl ( ホームページ )および Gnome Disks は、必要に応じてグラフィカルなフロントエンドです。
コマンドを実行している不良ブロックを確認できます
Sudo badblocks -nsv /dev/[device-partition] > bad-blocks-result
非破壊読み取り/書き込みテスト用。これにより、bad-blocks-result
というファイルが生成され、セクターが破損します。-n非破壊読み取り/書き込みモードを使用します。デフォルトでは、非破壊的な読み取り専用テストのみが実行されます。
-s現在の不良ブロックがディスクを通過する大まかな割合を書き出すことで、スキャンの進行状況を表示します。
-v詳細モード。
Sudo fsck -t ext3 -l bad-blocks-result /dev/[device-partition]
を実行して、可能であれば、不良セクタの場所をファイルシステムに通知し、そこからデータを移動します。それについてもっと読むことができます こちら 。
F3(Fight Flash Fraud) は、偽のフラッシュドライブ(実際の容量が通知された容量の一部であるフラッシュドライブ)を追加で検出する別のオプションです。
F3をインストールする
Sudo apt install f3
ドライブを挿入します
ドライブの空き領域にテストデータを書き込みます(ドライブがlsblk
でマウントされている場所を確認します)
f3write /media/$USER/D871-DD7C/
テストデータを読む
f3read /media/$USER/D871-DD7C/
参照:
Badblocksはうまく機能しますが、偽のフラッシュドライブを検出するようには設計されておらず、 それらのエラーを報告しない場合があります 。
進行状況インジケーターを表示しながら、ディスク全体をテスト読み取りできます。
time Sudo pv /dev/sdc >/dev/null
特定のディスクの問題は、報告されたI/Oエラーとして現れます。これは、dd
よりも少し進歩的です。これは、コマンドラインインターフェイスがもう少し標準的で、 typo-prone が少し少ないためです。 pv
は基本的にcat
の拡張バージョンであることに注意してください。デフォルトではインストールされない場合がありますが、Sudo apt-get install pv
でインストールできます。
同様のアプローチは、ディスクI/Oエラーを特に認識し、「データをレスキューするのが難しい」機能を備えたいくつかの利用可能なツールの1つでディスクを読み取ることです。パッケージマネージャーで ddrescue
を検索します。
パーティションがある場合次の手順に従ってデータを失うことはできません
$fdisk -l commnd
確認するパーティションは/ dev/sdPTC(確認するパーティション)と呼ばれ、/ scan/resultPath /フォルダーにマウントされた結果を保存する別のパーティションがあると仮定しましょう
2.次に、このコマンドを実行できます
$Sudo badblocks -v /dev/sdPTC > /scan/resultPath/badsectors.txt
指定されたデバイスの不良ブロックを特定し、badsectors.txtというファイルに保存します
fsck
コマンドを使用して、badsectors.txtファイルに記載されている不良セクターを使用しないようにUbuntuに指示できます。$Sudo fsck -l /scan_result/badsectors.txt /dev/sda
そのようにして、交換用の新しいディスクを入手するまで、ハードディスクの寿命が少し長くなります。
不良な物理セクターをチェックしたい完全なパーティションがあり、そのパーティション上のすべてのデータを失うか、空になっている場合は以下の手順に従ってください
$Sudo apt-get install gnome-disk-utility
$Sudo gnome-disks
そのパーティションに重要なデータがないことを確認し、再確認してください
「_」記号を使用して手動でパーティションをgnome-disks
DELETE/REMOVEする
gnome-disks
を使用して新しいパーティションを作成し、指定されたスペースのエラーをチェックする「遅い」オプションを選択します