_netdev에도 불구하고 CIFS fs가 네트워크를 기다리지 않습니까?

_netdev에도 불구하고 CIFS fs가 네트워크를 기다리지 않습니까?

저는 systemd를 사용하여 Debian12를 실행하고 있습니다. 서버의 네트워크는 (고정 테넌시) dhcp를 통해 구성됩니다.

부팅 시 CIFS 원격 파일 시스템을 마운트하려고 합니다. 그래서 /etc/fstab에 다음 항목을 추가했습니다.

//qnap/scan_in /srv/incoming cifs domain=mydom,credentials=/root/secret.txt,_netdev,uid=paperless,gid=paperless 0 0 

시작 중에는 설치되지 않습니다(콘솔에 일부 오류가 표시됨). 그러나 시작했을 때 mount -a잘 작동했습니다.

(부팅 메시지)를 확인 journalctl -b0하고 다음 항목을 확인했습니다.

Apr 27 11:27:38 paperless systemd[1]: Mounting srv-incoming.mount - /srv/incoming...
Apr 27 11:27:38 paperless dhclient[603]: DHCPREQUEST for 192.168.9.3 on ens3 to 255.255.255.255 port 67
[...]
Apr 27 11:27:38 paperless mount[626]: mount error: could not resolve address for qnap: Unknown error
Apr 27 11:27:38 paperless systemd[1]: srv-incoming.mount: Mount process exited, code=exited, status=1/FAILURE
Apr 27 11:27:38 paperless dhclient[603]: DHCPACK of 192.168.9.3 from 192.168.9.254
Apr 27 11:27:38 paperless sh[603]: DHCPACK of 192.168.9.3 from 192.168.9.254
Apr 27 11:27:38 paperless systemd[1]: srv-incoming.mount: Failed with result 'exit-code'.
Apr 27 11:27:38 paperless systemd[1]: Failed to mount srv-incoming.mount - /srv/incoming.
Apr 27 11:27:38 paperless cron[629]: (CRON) INFO (Running @reboot jobs)
Apr 27 11:27:38 paperless systemd[1]: Dependency failed for remote-fs.target - Remote File Systems.
Apr 27 11:27:38 paperless systemd[1]: remote-fs.target: Job remote-fs.target/start failed with result 'dependency'.

따라서 _netdev 매개변수는 DHCPACK가 전송되기 전에 마운트를 시도하므로 올바르게 고려되지 않는 것 같습니다.

물론 네트워크가 가동되지 않는 한 서버에 연결할 수 없습니다.

그런데 왜 "_netdev"를 무시하고 DHCPREQUEST를 보내기 전에 설치를 시작합니까?

귀하의 모든 생각과 의견에 감사드립니다!

/이력서

답변1

fstab설치하기 전에 네트워크가 온라인 상태가 될 때까지 기다리려면 다음 옵션을 추가하십시오 .

x-systemd.after=network-online.target

그래서 그 fstab줄은 다음과 같아야 합니다:

//qnap/scan_in /srv/incoming cifs domain=mydom,credentials=/root/secret.txt,_netdev,uid=paperless,gid=paperless,x-systemd.after=network-online.target 0 0

데비안 참조:
https://manpages.debian.org/testing/systemd/systemd.mount.5.en.html#FSTAB

답변2

마침내 이 문제를 해결했습니다. 비록 이것이 왜 해결책인지는 모르겠지만...글쎄, 해결 방법과 더 관련이 있습니다. 그러나 호스트 이름을 IP 주소로 바꿉니다.

//192.168.0.14/scan_in /srv/incoming cifs domain=mydom,credentials=/root/secret.txt,_netdev,x-systemd.after=network-online.target,uid=paperless,gid=paperless 0 0 

호스트 nmae(짧거나 긴)를 사용하는 경우 위의 문제가 발생합니다.

관련 정보