
systemd를 실행하는 젠투 시스템의 루트 파일 시스템에서 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
나에게도 같은 문제가 있었고 나에게 도움이 된 방법은 블로그에 쓰여진 내용을 무시하고 매뉴얼 페이지를 읽는 것이었습니다. 단순히 루트 파티션을 강제로 확인하기 위해 부팅 구성을 두 번 변경해야 하는 것은 적절하지 않은 것 같습니다.
passno=1
/etc/fstab
확인하고 다시 시작할 파일 시스템을 파일 시스템에서 지정합니다 . 재부팅 후 항목을 삭제하십시오.
이것매뉴얼 페이지