네트워크가 준비될 때까지 시스템 장치를 지연하는 방법은 무엇입니까?

네트워크가 준비될 때까지 시스템 장치를 지연하는 방법은 무엇입니까?

cron에서 cron으로 전환했습니다.시스템 크론Debian의 불안정한 시스템에서 작업 중인데 이제 일일 "cron 작업"이 인터넷에서 데이터베이스를 가져오는 mixmaster를 실행하고 cron-daily.timer가 네트워크 시작 전, 정지 RAM에서 깨어난 후 트리거되기 때문에 자주 실패합니다. ,mixmaster가 서버에 접근할 수 없습니다.

Apr 24 11:02:23 run-parts[13608]: /usr/bin/mixmaster-update: Get failed for http://www.noreply.org/echolot/pgp-all.asc (500 Can't connect to www.noreply.org:80)
Apr 24 11:02:23 run-parts[13608]: Downloading of mlist and/or mixring failed (do you need a proxy?). Aborting.
Apr 24 11:02:23 su[13809]: pam_unix(su:session): session closed for user mixmaster
Apr 24 11:02:23 run-parts[13608]: run-parts: /etc/cron.daily/mixmaster exited with return code 22

네트워크가 가동되어 실행될 때까지 타이머를 지연시킬 수 있습니까?

답변1

cron 대신 systemd 타이머를 사용하십시오.

그런 다음 시스템 장치에서 지정할 수 있습니다After=network-online.target and Wants=network-online.target.

답변2

cron 대신 systemd의 타이머를 사용하는 것이 좋습니다. 그런 다음 장치에서 그것이 무엇에 의존하는지 지정할 수 있어야 합니다.

https://wiki.archlinux.org/index.php/Systemd#Handling_dependent

답변3

설정cron 작업은 1분마다 실행되지만 인터넷에 연결되어 있지 않으면 연결 테스트와 함께 종료됩니다.

nc -zw3 github.com 22 || exit 0

마침내 인터넷 연결이 설정되면 anacron 작업이 하루에 한 번 실행됩니다.

관련 정보