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

fsckコマンドを使用してファイルシステムをチェックおよび修復する方法

はじめに

fsck (ファイルシステムの整合性チェック)Linuxユーティリティは、ファイルシステムにエラーや未解決の問題がないかチェックします。このツールは、潜在的なエラーを修正し、レポートを生成するために使用されます。

このユーティリティは、デフォルトでLinuxディストリビューションに付属しています。 fsckを使用するために、特定の手順やインストール手順は必要ありません。ターミナルをロードすると、ツールの機能を活用する準備が整います。

このガイドに従って、Linuxマシンでfsckを使用してファイルシステムをチェックおよび修復する方法を学習してください。 。チュートリアルでは、ツールの使用方法と使用例を示します。

前提条件

  • LinuxまたはUNIXライクなシステム
  • 端末またはコマンドラインへのアクセス
  • ツールを実行するためのroot権限を持つユーザー

Linuxでfsckを使用する場合

fsckツールはさまざまな状況で使用できます:

  • fsckを使用して予防保守としてファイルシステムチェックを実行します または、システムに問題がある場合。
  • fsckが診断できる一般的な問題の1つは、システムの起動に失敗した場合です。 。
  • もう1つは、入出力エラーが発生した場合です。 システム上のファイルが破損したとき。
  • fsckユーティリティを使用して、外部ドライブの状態を確認することもできます 、SDカードなど またはUSBフラッシュドライブ

基本的なfsck構文

fsckユーティリティの基本的な構文は次のパターンに従います。

fsck <options> <filesystem>

上記の例では、 filesystem デバイス、パーティション、マウントポイントなどを指定できます。コマンドの最後でファイルシステム固有のオプションを使用することもできます。

ファイルシステムをチェックして修復する方法

ファイルシステムをチェックして修復する前に、いくつかの手順を実行する必要があります。デバイスを見つけてマウントを解除する必要があります。

マウントされたディスクとパーティションの表示

システムにマウントされているすべてのデバイスを表示し、ディスクの場所を確認するには、Linuxで使用可能なツールの1つを使用します。

スキャンするディスクを見つける1つの方法は、 dfを使用してファイルシステムディスクを一覧表示することです。 コマンド:

df -h

このツールは、システムとファイルシステムのデータ使用量を印刷します。 fsckで確認するディスクをメモします コマンド。

パーティションを表示するには たとえば、最初のディスクの場合は、次のコマンドを使用します。

sudo parted /dev/sda 'print'

sda Linuxが最初のSCSIディスクを参照する方法です。 2つある場合、2つ目は sdb になります 、など。

この例では、この仮想マシンにはパーティションが1つしかないため、1つの結果が得られました。パーティションが多いほど、より多くの結果が得られます。

ここでのディスク名は/dev/sdaです。 次に、パーティションの数がに表示されます。 桁。私たちの場合、それは1つです: sda1

ディスクのマウントを解除する

fsckでディスクチェックを実行する前に 、ディスクまたはパーティションをアンマウントする必要があります。 fsckを実行しようとした場合 マウントされたディスクまたはパーティションでは、警告が表示されます:

必ずunmountを実行してください コマンド:

sudo umount /dev/sdb

/dev/sdbを置き換えます マウントを解除するデバイスを使用します。

ルートファイルシステムをアンマウントできないことに注意してください。したがって、 fsck 実行中のマシンでは使用できません。詳細については、ガイドの最後にあります。

fsckを実行してエラーをチェックします

ディスクをアンマウントしたので、 fsckを実行できます。 。 2番目のディスクを確認するには、次のように入力します。

sudo fsck /dev/sdb

上記の例は、クリーンディスクの出力を示しています。ディスクに複数の問題がある場合は、アクションを確認する必要がある問題ごとにプロンプ​​トが表示されます。

fsckユーティリティが返す終了コードは、次の状態の合計です。

ディスクをマウントする

デバイスの確認と修復が完了したら、ディスクをマウントして、再び使用できるようにします。

この場合、 sdbを再マウントします ディスク:

mount /dev/sdb

fsckでドライランを実行する

ライブチェックを実行する前に、fsckを使用してテスト実行を実行できます。 -Nを渡します fsckのオプション テストを実行するコマンド:

sudo fsck -N /dev/sdb

出力には、何が起こるかが出力されますが、アクションは実行されません。

fsckを使用して検出されたエラーを自動的に修正

プロンプトを表示せずに潜在的な問題を修正するには、 -yを渡します。 fsckのオプション

sudo fsck -y /dev/sdb

このように、「はい、検出されたすべてのエラーを修正してみてください」と言います。 」毎回プロンプトが表示されることなく。

エラーが見つからない場合、出力は -yがない場合と同じように見えます。 オプション。

修復をスキップしますが、出力にfsckエラーを出力します

-nを使用します ファイルシステムの潜在的なエラーを修復せずにチェックする場合のオプション。

2番目のドライブがありますsdb いくつかのジャーナルエラーがあります。 -n フラグはエラーを修正せずに出力します:

sudo fsck -n /dev/sdb

fsckにファイルシステムチェックを強制する

クリーンなデバイスでfsckを実行すると、ツールはファイルシステムチェックをスキップします。ファイルシステムチェックを強制する場合は、 -fを使用します オプション。

例:

sudo fsck -f /dev/sdb

スキャンは、問題がないと判断した場合でも、5つのチェックすべてを実行して破損を検索します。

すべてのファイルシステムで一度にfsckを実行する

fsckを使用してすべてのファイルシステムを一度にチェックする場合は、 -Aを渡します。 国旗。このオプションは、 etc/fstabを通過します 1回の実行でファイル。

ルートファイルシステムは実行中のマシンにマウント解除できないため、 -Rを追加します それらをスキップするオプション:

fsck -AR

プロンプトを回避するには、 -yを追加します 私たちが話し合ったオプション。

特定のファイルシステムでfsckをスキップする

fsckでファイルシステムのチェックをスキップする場合は、 -tを追加する必要があります。 および「いいえ 」ファイルシステムの前。

たとえば、 ext3をスキップするには ファイルシステムで、次のコマンドを実行します:

sudo fsck -AR -t noext3 -y

-yを追加しました プロンプトをスキップします。

マウントされたファイルシステムでFsckをスキップ

マウントされたファイルシステムでfsckを実行しないようにするには、 -Mを追加します。 オプション。このフラグは、マウントされたファイルシステムをスキップするようにfsckツールに指示します。

違いを示すために、 sdbでfsckを実行します マウントしている間、そしてマウントを解除するとき。

sudo fsck -M /dev/sdb

sdb がマウントされている場合、ツールはチェックを実行せずに終了します。次に、 sdbをアンマウントします 同じコマンドを再度実行します。今回は、 fsck ディスクをチェックし、クリーンまたはエラーがあると報告します。

注: fsckツールの最初のタイトル行を削除するには「fsckfromutil-linux 2.31.1 」は-Tを使用します オプション。

Linuxルートパーティションでfsckを実行する

すでに述べたように、fsckは、実行中のマシンのルートパーティションがマウントされて使用されているため、それらをチェックできません。ただし、リカバリモードで起動して fsckチェック:を実行すると、Linuxルートパーティションでもチェックできます。

1.これを行うには、GUIまたはターミナルを使用してマシンの電源をオンまたは再起動します。

sudo reboot

2.シフトを押し続けます 起動時のキー。 GNUGRUBメニューが表示されます。

3.Ubuntuの詳細オプションを選択します 。

4.次に、(リカバリモード)のエントリを選択します 最後に。システムをリカバリメニューにロードします。

5. fsckを選択します メニューから。

6.<はい>を選択して確認します プロンプトで。

7.終了したら、再開を選択します リカバリメニューでマシンを起動します。

fsckが中断された場合はどうなりますか?

中断してはいけません 進行中のfsckツール。ただし、プロセスが中断された場合、fsckは進行中のチェックを終了してから停止します。

チェックの処理中にユーティリティがエラーを検出した場合、中断されても何も修正しようとはしません。次回チェックを再実行して終了させることができます。

fsckLinuxコマンドオプションの概要

最後に、fsckLinuxユーティリティで使用できるオプションのリストを以下に示します。 。

オプション 説明
-a ファイルシステムエラーを自動的に修復してみてください。プロンプトは表示されませんので、注意して使用してください。
-A / etc/fstabにリストされているすべてのファイルシステムを確認します。
-C ext2およびext3ファイルシステムの進行状況を表示します。
-f fsckにファイルシステムのチェックを強制します。このツールは、ファイルシステムがクリーンであるように見える場合でもチェックします。
-l <​​/ td> デバイスをロックして、スキャンおよび修復中に他のプログラムがパーティションを使用できないようにします。
-M マウントされたファイルシステムをチェックしないでください。ファイルシステムがマウントされると、ツールは終了コード0を返します。
-N ドライランを実行します。出力は、アクションを実行せずにfsckが実行することを出力します。警告またはエラーメッセージも出力されます。
-P 複数のファイルシステムで並行してスキャンを実行するために使用します。設定によっては、問題が発生する可能性があります。注意して使用してください。
-R -Aオプションを使用するときに、ルートファイルシステムをチェックしないようにfsckツールに指示します。
-r デバイスの統計を印刷します。
-t fsckで確認するファイルシステムの種類を指定します。詳細については、manページを参照してください。
-T ツールの起動時にタイトルを非表示にします。
-y チェック中にファイルシステムエラーを自動的に修復してみてください。
-V 詳細な出力。


Ubuntu
  1. Ubuntu18.04およびCentOS7でLinuxシャットダウンコマンドを使用する方法

  2. Linuxのfsckコマンドでファイルシステムエラーをチェックして修復する

  3. ファイルシステムをチェックして修復する10のLinux Fsckコマンドの例

  1. LinuxでのChownコマンドとは何ですか?その使用方法

  2. cURLコマンドとは何ですか?その使用方法は?

  3. Ubuntu 20.04 および 20.10 でディスク容量を確認するにはどうすればよいですか?

  1. lspciコマンド:それは何であり、それを使用する方法

  2. Linuxテールコマンド:それは何であり、それを使用する方法

  3. fsck を使用して LUKS 暗号化ディスクをチェックおよび修復しますか?