systemdを実行しているGentooでrootファイルシステムの次回起動時に強制的にファイルシステムチェックを実行するにはどうすればよいですか?

systemdを実行しているGentooでrootファイルシステムの次回起動時に強制的にファイルシステムチェックを実行するにはどうすればよいですか?

私はsystemdを実行しているGentooシステムのルートファイルシステムでfsckを強制的に実行したいと思います。

頑張った

  • forcefsck確認したいファイルシステムのルートに空のファイルを追加します。touch /forcefsck
  • fsck.mode=forceカーネルブートパラメータとして追加

これまで何も動作しませんでした。正しいアプローチは何ですか?

答え1

後者(fsck.mode=force)が正しいアプローチです。ただし、ルートディレクトリをfsckするには、次の手順を実行する必要があります。

  • systemdによって制御されるinitramfsがあり(分析できるようにfsck.mode=force)、対応するfsckバイナリが組み込まれています。
  • rootfsを読み取り専用でマウントするinitramfsがあります(そのため、rootfsで起動されたsystemdはまだそれをチェックできます。読み取り/書き込みマウントされたファイルシステムをスキャンすることは不可能です)。
  • initramfsがなく、カーネルroコマンドライン引数を介してrootfsを読み取り専用でマウントするようにカーネルに指示します。

答え2

私にも同じ問題があり、私に役立つ方法は、ブログに書かれた内容を無視してマニュアルページを読むことでした。単に、ルートパーティションを強制的にチェックするためにブート設定を2回変更する必要は適切ではないようです。

passno=1/etc/fstab確認して再起動するファイルシステムをファイルシステムで指定します。再起動後にエントリを削除します。

これマニュアルページ

関連情報