Debian 9.0.0을 새로 설치했습니다. ext4로 포맷된 /var에 대해 별도의 1GB 파티션이 있습니다. 를 사용하여 터미널을 닫으면 shutdown -h now
"Unmounting /var failed"라는 밝은 빨간색 오류 메시지가 나타납니다.
이 오류에 대한 해결책은 무엇입니까?
답변1
문제는journald
또는 /var
제거하려고 할 때 여전히 기록되는 방식입니다.systemd
해결책
~에 따르면이 스레드, 이를 달성하는 방법에는 두 가지가 있습니다.
- 잠기지 않도록
journald
로그를 불안정한 위치에 저장하십시오 . 하지만 종료 시 로그가 손실되는 대가를 치르게 됩니다./run
/var
이 줄을 다음으로 /etc/systemd/journald.conf
변경하려면 편집하세요 .Storage=
Storage=volatile
이것이 내가 하는 일이고 그것은 나에게 효과적이다.
/var
(편집: 이는 ArchLinux에만 해당됩니다.) 또는 나중에 제거할 수 있도록 종료 후크를 설정하세요 .failed
systemd가 여전히 제거를 시도하므로 메시지는 제거되지 않지만 종료 시퀀스가 끝나면 올바르게 제거/var
됩니다 ./var
당신은 그것을 보지 못할 것입니다. (아직 이 솔루션을 테스트하지는 않았습니다)
배열에 후크를 추가합니다 shutdown
. 예를 들면 다음과 같습니다.mkinitcpio
HOOKS=
HOOKS="base udev autodetect block keymap encrypt lvm2 filesystems usbinput fsck var shutdown"
답변2
올바른 이유를 알려준 @Thibault Lemaire에게 감사의 말씀을 전하고 싶습니다. 다음 변경 사항을 적용하여 오류를 성공적으로 해결했습니다 systemd-journald.service
.
...
[Unit]
...
After:umount.target
Conflicts=umount.target
기본적으로 모든(?) 마운트(/var 포함)는 umount.target에 의해 마운트 해제되므로 umount.target을 시작하기 전에 systemd-journald를 중지하면 오류를 수정할 수 있습니다.