私たちの重要なデータはすべて1つのタイプまたは別のタイプまたは別のファイルシステムで座っています。ファイルシステムの問題が発生しました。 Linuxでは、これを使用できます
fsck
ファイルシステムエラーを見つけて修正するためのコマンド。
ファイルシステムはソフトウェアです
ファイルシステムは、コンピュータの最も重要なコンポーネントの1つです。ファイルシステムがなくても、コンピュータはハードドライブにデータを保存することはできません。そのドライブがスピニングされた機械的プラッタか ソリッドステートドライブ 。実際、オペレーティングシステムをハードドライブにインストールする前に、ファイルシステムを作成する必要があります。オペレーティングシステムファイルを格納するには何かが必要です。そのため、インストールプロセス中にファイルシステムが作成されます。
ファイルシステム ソフトウェアによって作成されました ソフトウェアで書かれ、ソフトウェアから読む。ご存知のように、すべての複雑なソフトウェアにはバグがあります。私たちのデータは私たちにとって非常に重要です。何かがうまくいかない場合は、ファイルシステムの一部またはパーティション全体にアクセスできます。
モダン ジャーナリングファイルシステム 突然の電力損失やシステムクラッシュによって引き起こされる可能性がある問題を処理するのが良いです。彼らは堅牢ですが、彼らは無敵ではありません。彼らの場合 内部テーブルがスクランブルされました 各ファイルがドライブに存在する場所、どのサイズ、それが持っているのか、そしてそれらにどのファイル権限が設定されているかをトラックすることができます。
NS
fsck
コマンドファイルシステムが正常であることを確認できます。それが何か問題があるならば、それは通常あなたのためにそれらを修正することができます。
プリフライトチェックをします
using
fsck
必要
sudo特権
。ファイルシステムを変更することができるコマンドは任意のコマンドを扱う必要があり、それらが何をしているのかを知っている人に制限されます。
パイロットは航空機に飛び込まないで、それを始めて、淡い青い笑いを飛び出します。彼らはプリフライトチェックをします。そうでなければ賭け屋が多すぎる。それは現像するのが良い習慣です。あなたが使う前に
fsck
正しいドライブで使用することを確認する必要があります。だから何かをする前に
fsck
、私たちは少し偵察をするつもりです。
私たちはから始めます
fdisk.
そしてそれを内にパイプします
以下
。特定のパーティションに関する情報を尋ねていません。を使って
に
(リスト)オプション
fdisk.
存在する場合は、 "/ proc / partitions"ファイルで見つかったすべてのデバイスのパーティションテーブルをリストします。
SUDO FDISK -L | 90]
![]()
私達はのためのエントリーを見ることができます
/ dev / sda.と/ dev / sdb.。ファイルをスクロールして、コンピュータに存在する可能性がある他のエントリを表示できます。
![]()
パーティションのパーティション
/ dev / sda.ASに記載されています/ dev / sda1又/ dev / sda2、 と/ dev / sda3。そのため、最初のドライブに3つのパーティションがあります。を使ってもう少し情報を見ることができますpart指図。私たちはそれを使います「印刷」ターミナルウィンドウにパーティションテーブルを表示するオプション。sudo委任/ dev / sda 'print'
![]()
各パーティションのファイルシステムの種類を含め、今回は追加情報を受ける。
モデル:ATA VBOXハードディスク(SCSI) ディスク/ DEV / SDA:34.4GB セクターサイズ(論理/物理):512B / 512B パーティションテーブル:GPT ディスクフラグ: 番号開始エンドサイズファイルシステム名フラグ 1 1049KB 2097KB 1049KB BIOS_GRUB. 2 2097KB 540MB 538MB FAT32 EFIシステムパーティションブート、ESP 3 540MB 34.4GB 33.8GB EXT4このテストコンピュータには3つのドライブがあります。これらは他の2つのドライブの結果です
/ dev / sdb.と/ dev / sdc.。これらのファイルシステムには「名前」フィールドがないことに注意してください。sudo arted / dev / sdb 'print'モデル:ATA VBOXハードディスク(SCSI) ディスク/ dev / sdb:21.5gb セクターサイズ(論理/物理):512B / 512B パーティションテーブル:MSDOS ディスクフラグ: 番号開始エンドサイズタイプファイルシステムフラグ 1 1049KB 21.5GB 21.5GBプライマリEXT4sudo arted / dev / sdc 'print'モデル:ATA VBOXハードディスク(SCSI) ディスク/ dev / sdc:21.5gb セクターサイズ(論理/物理):512B / 512B パーティションテーブル:MSDOS ディスクフラグ: 番号開始エンドサイズタイプファイルシステムフラグ 1 1049KB 21.5GB 21.5GBプライマリEXT32番目のドライブと3番目のドライブは同じサイズであり、それぞれが単一のパーティションを持ちます。しかし、2番目のドライブのファイルシステムはです
ext43回目のドライブのファイルシステムは古いものですext3。パーティション識別子をに渡します
fsckそして、そのパーティションのファイルシステムをチェックします。しかし私達は走ることができませんfsckマウントされたファイルシステムで。ドライブをマウント解除する必要があります。そのためには、パーティションがマウントポイントを知る必要があります。したがってファイルシステムがマウントされています。これを使って簡単に見つけることができます
DF.指図。DF / DEV / SDB1DF / DEV / SDC1
![]()
fsckコマンドを使う
必要な情報をすべて入手しました。最初にすることは、チェックしようとしているファイルシステムをマウント解除することです。の最初のパーティションと唯一のパーティションのファイルシステムで動作します。
/ dev / sdb.、どちらのものです/ dev / sdb1。私たちはこれがAとなっているのが早く見ましたext4ファイルシステム、それは「/ RUN / MOUNT / DAVE / SATA2」にマウントされています。私たちはそれを使います
um指図。注意 "umount"に "n"はありません。sudo umount / run / mount / dave / sata2
![]()
と
um、ニュースはいいニュースです。コマンドプロンプトに静かに戻ってきたら、進んでいます。sudo fsck / dev / sdb1
![]()
このファイルシステムはクリーンであると報告されています。つまり、ファイルシステムはエラーや問題がないことを報告しています。より深いファイルシステムチェックは自動的に実行されません。戻りコードを見ることもできます
fsckシェルに戻りました。エコー$?
![]()
戻り値ゼロはエラーなしを示します。可能な戻りコードは次のとおりです。
- 0 :エラーなし
- 1 :ファイルシステムのエラーが修正されました
- 2. :システムを再起動する必要があります
- 4. :ファイルシステムのエラーが修正されていないまま
- 8. :運用エラー
- 16. :使用法または構文エラー
- 32. :ユーザーリクエストによってキャンセルされたチェック
- 128 :共有ライブラリエラー
ファイルシステムがクリーンとして報告されているにもかかわらず、ファイルシステムの確認を強制的に行うことができます。
-NS
(力)オプション。
SUDO FSCK / DEV / SDB1 -F
今回は、チェックは完了するまで時間がかかりますが、ファイルシステムのより徹底的なテストを実行します。私たちのファイルシステムは確かにきれいでしたが、エラーは報告されません。テストが行われているため、問題が見つかった場合は、させるように求められます。
fsck
問題を解決するか、エラーを無視してください。
テストが完了したら、ファイルシステムを再マウントする必要があります。これを行う最も簡単な方法は、使用することです
マウント
とともに
-NS
(すべて)オプション。これはファイルシステムのリストの「/ etc / fstab」をチェックし、それらが通常のブートの後にあるようにそれらがすべてマウントされていることを確認します。
SUDO MOUNT -A
私たちは言う必要がないことに注意してください
fsck
パーティション上にはどのような種類のファイルシステムがあります。ユーティリティはファイルシステムを調べることによってそれを決定します。つまり、ファイルシステムの確認を強制できることを意味します。
/ dev / sdc1
、 NS
ext3
私達のテストPC上のファイルシステム、私達が使用した同じコマンドを使用して
/ dev / sdb1
それはAnです
ext4
パーティション。
SUDO FSCK / DEV / SDC1 -F
ファイルシステムを修正するためにまっすぐダイビングしたくないかもしれません。あなたが飛躍する前に見たいかもしれません。質問できるよ
fsck
何かを修正し、ターミナルウィンドウに問題を報告するだけではありません。 NS
-NS
(ドライラン)オプションはそれだけです。
sudo fsck -n / dev / sdb1
その反対は言うことです
fsck
それがエラーが見つかったかどうか、そしてただ先に進んでそれらを修正するのを促しないようにする。これを行うには、を使用してください
-
(プロンプトなし)オプション。
sudo fsck -y / dev / sdb1
ルートパーティションでFSCKを使用する
あなたは使うことができません
fsck
マウントされたパーティションではなく、コンピュータを起動するには、ルートパーティションをマウントする必要があります。だから私たちは走ることができます
fsck
ルートパーティションに?回答は起動プロセスを中断して実行することです
fsck
回復モードで。
コンピュータが起動している間に、「Shift」キーを押しながらキーを押します。タイムになったら、Linuxに起動しません。ブートプロセスは白黒メニューで停止します。この記事に使用されるテストマシンはUbuntuを実行していましたが、他の分布は同じタイプのメニューを持っていますが、外観が異なる場合があります。スクリーンショットの「ubuntu」と表示されているところは、配布の名前があります。
ハイライトバーを「Ubuntuの上位オプション」メニュー項目が選択されるように、「上矢印」キーと「下矢印」キーを移動します。次の画面に移動するには、「Enter」をクリックしてください。
「(回復モード)」で終わるオプションを選択してください。この例では、それは「Ubuntu、Linux 5.11.0-20-generic(回復モード)」です。 「Enter」キーを押してください。
回復メニューが表示されます。 「すべてのファイルシステムをチェックする」を選択し、「タブ」キーを押してハイライトを「OK」ボタンに移動します。 「Enter」を押します。
ルートパーティションがあなたに定義されている他のパーティションとともにマウントされるという通知が表示されます。 "/ etc / fstab"ファイル 。
「タブ」キーを押して、ハイライトを「はい」ボタンに移動して「Enter」を押します。
わかるでしょ
fsck
対話モードで実行します。問題がある場合は、LETを求められます
fsck
それらを修正するか、それらを無視してください。ファイルシステムがチェックされていると、リカバリメニューが表示されます。
「再開」オプションを選択し、「タブ」キーを押してハイライトを「OK」ボタンに移動して「Enter」を押します。起動プロセスが再開され、Linuxに起動します。
リカバリモードの起動は一部のドライバに影響を与える可能性があるため、Linuxに起動するとすぐにもう一度再起動することをお勧めします。これにより、コンピュータは標準的な方法で動作しています。
物事がうまくいかないとき
安全ネットは理由のためにあります。知り合う
fsck
指図。いつか怒りでそれを使用する必要が生じるならば、あなたはあなたが事前に私自身に精通していることをうれしく思います。