RHEL7ブートログにXFSファイルシステムで実行しようとすると、fsck.ext2を参照するsystemd-fsckエラーが表示される

RHEL7ブートログにXFSファイルシステムで実行しようとすると、fsck.ext2を参照するsystemd-fsckエラーが表示される

CentOS 7を起動しようとすると、次のエラーが発生します。

Jul  6 13:20:15 systemd-fsck: fsck: error 2 (No such file or directory) while executing fsck.ext2 for /dev/disk/by-uuid/45544ef5-118c-478f-a3e8-a4953b3fe71b

Jul  6 13:20:15 systemd-fsck: fsck failed with error code 8.

Jul  6 13:20:15 systemd-fsck: Ignoring error.

Jul  6 13:33:17 systemd-fsck: fsck: error 2 (No such file or directory) while executing fsck.ext2 for /dev/disk/by-uuid/45544ef5-118c-478f-a3e8-a4953b3fe71b

Jul  6 13:33:17 systemd-fsck: fsck failed with error code 8.

Jul  6 13:33:17 systemd-fsck: Ignoring error.

これはブートパーティションXFSです。私が見つけたのはこれです。既知の問題RHEL 7ではアクセスできません。この問題をどのように解決できますか?

ベストアンサー1

LVMでも同様の問題が発生しました。問題の鍵は、systemdがinitrd switch_rootの直後にsystem-fsckを実行するため、ファイルシステムがまだ解決されていないことです。ソースコードでは、system-fsck は udev にファイルシステムタイプを問い合わせ、switch_root のあとに早すぎると udev は NULL を返します。非常に簡単な解決策は、fsckを実行する前に3秒間一時停止する行をサービスに追加することです。違いは次のとおりです。

root@localhost:/usr/lib/systemd/system$ diff -u systemd-fsck-root.service.orig systemd-fsck-root.service
--- systemd-fsck-root.service.orig  2015-11-24 23:15:22.593388104 +0000
+++ systemd-fsck-root.service   2015-11-24 21:52:13.489345153 +0000
@@ -17,6 +17,7 @@
 [Service]
 Type=oneshot
 RemainAfterExit=yes
+ExecStart=/bin/sleep 3
 ExecStart=/usr/lib/systemd/systemd-fsck
 StandardOutput=journal+console
 FsckPassNo=1

おすすめ記事