起動時のファイルシステムのチェックは必要か?
起動時にデフォルトでファイルシステムのチェックを有効にしたほうが良いのか、以下でフィードバックが募集されています。話の背景
「Ubuntu」を「subiquity」など「curtin」でインストールした場合、デフォルトで起動時に「fsck」によるファイルシステムのチェックは行われません。これはファイルシステムのマウント情報を記述する「fstab」の「fs_passno」に「0」を設定するためです。
この振る舞いが不具合として以下で報告されています。
開発者がこの不具合を修正するにあたり、そもそもジャーナリングに対応したファイルシステムで本当に「fsck」によるファイルシステムのチェックが必要なのか疑問を持ち、チェックの必要性に関する意見を求めています。
ジャーナリングに対応したファイルシステム
ジャーナリングは突然の電源切断など問題発生時にデータの不整合を可能な限り解消するための仕組みです。fsckを実行しても意義がないファイルシステム
「xfs」や「zfs」、「btrfs」など一部のファイルシステムは「fsck」を実行しても意義あるチェックを行いません。これらのファイルシステム向けに「fsck.$fstype(実際にファイルシステムのチェックを行うバイナリー)」が提供されていますが、これらのバイナリーは意味のあるチェックを行いません。
ext2/ext3/ext4では
「ext4」は「Ubuntu Desktop」でよく利用されるファイルシステムですね。特にファイルシステムを意識しなければ「ext4」で「Ubuntu Desktop」をインストールするケースがほとんどでしょう。
「ext」にとって「fsck」によるファイルシステムのチェックは重要です。
「ext3/4」はジャーナリングに対応したファイルシステムですが、カーネルドライバーがファイルシステムをマウントする時と同じようにジャーナルを再実行します。
また状況によってはそれ以上の修正を行うこともあります。