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