不良セクタと不良ブロックの定義から始めましょう。不良セクタと不良ブロックは、通常、ディスク表面への特定の物理的損傷またはフラッシュメモリのトランジスタの故障が原因で、読み取りまたは書き込みができなくなったディスクまたはフラッシュメモリの一部です。
不良セクタが蓄積し続けると、ディスクやフラッシュ メモリの容量に不快な影響や損害を与える可能性があり、さらにはハードウェア障害を引き起こす可能性があります。
同時に、不良ブロックの存在は、新しいディスクの購入を検討し始めるか、単に不良ブロックを使用不可としてマークする必要があるという警告であることに注意することも重要です。
そこで、この記事では、特定のディスク スキャン ツールを使用して、Linux ディスクまたはフラッシュ メモリに不良セクタがあるかどうかを判断できるようにするために必要な手順をいくつか説明します。
手順は次のとおりです:
不良ブロック ツールを使用して、Linux 上の不良セクタをチェックします
不良ブロック ツールを使用すると、ユーザーはデバイスをスキャンして不良セクタまたはブロックを確認できます。デバイスはディスクまたは外部ディスクであり、/dev/sdc などのファイルで表されます。
まず、スーパーユーザー権限で fdisk コマンドを実行して、すべてのディスクまたはフラッシュ ドライブとそのパーティション情報を表示します:
$ sudo fdisk -l
Linux ファイル システム パーティションを一覧表示します
次に、次のコマンドで確認します。 Linux ハードディスク上の不良セクタ/不良ブロック:
$ sudo badblocks -v /dev/sda10 > badsectors.txt
Linux 上でハードディスクの不良セクタをスキャンします
上記のコマンドでは、badblocks はデバイス /dev/sda10 をスキャンします (実際のデバイスを指定することを忘れないでください)デバイス)、-v オプションを使用すると、操作の詳細が表示されます。さらに、ここでは出力リダイレクトを使用して、操作結果をファイル badsectors.txt にリダイレクトします。
ディスク上に不良セクタが見つかった場合は、ディスクをアンマウントし、以下のように報告されたセクタにデータを書き込まないようにシステムに指示します。
e2fsck (ext2/ext3/ext4 ファイル システムの場合) または fsck コマンドを実行する必要があります。コマンドには badsectors.txt ファイルとデバイス ファイルも必要です。
-l オプションは、指定されたファイル badsectors.txt にリストされているセクター番号を不良ブロック リストに追加するようにコマンドに指示します。
------------ 针对 for ext2/ext3/ext4 文件系统 ------------ $ sudo e2fsck -l badsectors.txt /dev/sda10 或 ------------ 针对其它文件系统 ------------ $ sudo fsck -l badsectors.txt /dev/sda10
Smartmontools ツールを使用して Linux 上の不良セクターをスキャンします
この方法は、最新のディスク (S.M.A.R.T (自己監視、分析、レポート技術) システムを備えた ATA/SATA および SCSI/SAS ハード ドライブ) およびソリッド ステートに適しています。ドライブ) の信頼性と効率が向上します。 S.M.A.R.T システムは、ハードウェア障害の可能性を特定できるように、正常性の検出、報告、場合によっては記録に役立ちます。
次のコマンドを使用して、smartmontools をインストールできます:
------------ 在基于 Debian/Ubuntu 的系统上 ------------ $ sudo apt-get install smartmontools ------------ 在基于 RHEL/CentOS 的系统上 ------------ $ sudo yum install smartmontools
インストールが完了したら、smartctl を使用してディスク統合 S.M.A.R.T システムを制御します。次のようにマニュアルまたはヘルプを表示できます:
$ man smartctl$ smartctl -h
次に、smartctrl コマンドを実行し、コマンドのパラメータとしてデバイスを指定します。次のコマンドには、SMART 全体的な健全性の自己評価を表示するパラメータ -H または --health が含まれています。試験結果。
$ sudo smartctl -H /dev/sda10
Linux ハードドライブの健全性をチェック
上記の結果は、ハードドライブが健全であり、近い将来にハードウェア障害が発生する可能性が低いことを示しています。
ディスク情報の概要を取得するには、-a または --all オプションを使用してディスクに関するすべての SMART 情報を表示し、-x または --xall を使用してディスクに関するすべての SMART 情報と非 SMART 情報を表示します。 。