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

관련 정보