外部USB SSDドライブのDebian。dmesg
ログファイルにいくつかのエラーがあります。
...[ 3.320718] EXT4-fs (sdb2): INFO: recovery required on readonly filesystem
[ 3.320721] EXT4-fs (sdb2): write access will be enabled during recovery
[ 5.366367] EXT4-fs (sdb2): orphan cleanup on readonly fs
[ 5.366375] EXT4-fs (sdb2): ext4_orphan_cleanup: deleting unreferenced inode 6072
[ 5.366426] EXT4-fs (sdb2): ext4_orphan_cleanup: deleting unreferenced inode 6071
[ 5.366442] EXT4-fs (sdb2): 2 orphan inodes deleted
[ 5.366444] EXT4-fs (sdb2): recovery complete
...
システムが起動し、正常に動作します。完全に修正できますか?そして正しい方法は何ですか?
答え1
fsck
次のように、マウント後すぐに操作を実行するようにファイルシステムに指示できます。
方法 #1: /forcefsck の使用
通常、次のように次回の再起動時にスキャンを実行するようにスケジュールできます。
$ sudo touch /forcefsck
$ sudo reboot
方法 #2: 終了を使用
shutdown
スイッチを介してこれを行うようにコマンドに指示することもできます-F
。
$ sudo shutdown -rF now
メモ:最初の方法はこれを達成する最も一般的な方法です!
方法#3: tune2fsの使用
tune2fs
次回インストールしようとするときに強制的にスキャンするようにファイルシステム自体のパラメータを設定することもできます。
$ sudo tune2fs -l /dev/sda1
Mount count: 3
Maximum mount count: 25
したがって、次のコマンドを使用して「インストール数」を25より高く設定する必要があります。
$ sudo tune2fs -C 26 /dev/sda1
変更された値を確認して再tune2fs -l
起動してください。
メモ:私が使用した3つのオプションのうち、デフォルトのファイルシステム()でも他のtune2fs
ファイルシステムでも、すべてのファイルシステムを強制的に確認できます。/
補足説明
通常、ext2/3/4でフォーマットされたパーティションに関連する「最大マウント数:」および「検査間隔:」パラメーターが表示されます。通常、次のように構成されます。
$ tune2fs -l /dev/sda5 | grep -E "Mount count|Maximum mount|interval"
Mount count: 178
Maximum mount count: -1
Check interval: 0 (<none>)
パラメータがこのように設定されていると、デバイスはfsck
インストール中にそのタスクを実行しません。これはほとんどのディストリビューションで非常に一般的です。
2つの強制運転チェックがあります。設置回数または経過時間。 「確認間隔」は時間ベースの間隔です。 2週間に1回、この主張をすることができます、2w。tune2fs
詳細については、マニュアルページを参照してください。
メモ:tune2fs
また、これはデバイスコマンドではなくファイルシステムコマンドであることも理解する必要があります。したがって、/dev/sda
ext2/3/4ファイルシステムがないと、古いデバイスでは機能しません。コマンドtune2fs
は意味がなく、これらの種類のファイルシステムの1つとしてフォーマットされたパーティションで使用する必要があります。
引用する
答え2
fsck
パーティションを削除することをお勧めします/dev/sdb2
この端末に重要なものがない場合それでもうまくいかない場合は、Live CDを使ってfsckを試してください。
$ sudo fsck /dev/sdb2
答え3
fsck型のジョブを実行する必要があると思います。fsck
次のように実行できます。
$ sudo fsck /dev/sdb2