RandomizedDelaySec + 웨이크업 후 지속

RandomizedDelaySec + 웨이크업 후 지속

데스크탑 컴퓨터의 경우 systemd를 통해 백업을 실행합니다. 사용

OnCalendar = daily
Persistent = true
RandomizedDelaySec = 10m

백업이 하루에 한 번 실행됩니다. 컴퓨터 전원이 켜져 있으면 다음에 시작할 때 백업이 실행됩니다.

문제는 컴퓨터를 일시정지하면 깨어나자마자 지체 없이 바로 백업이 실행되려 한다는 점이다. 네트워크 연결에 몇 초가 걸려 백업에 실패했습니다.

이것은 에서 처리해야 한다고 생각 RandomizedDelaySec하는데 타이머가 생성될 때 설정됩니다. 깨어난 후 systemd에게 기다리라고 어떻게 말합니까?

답변1

~에 따르면매뉴얼 페이지, RandomizedDelaySec="0과 지정된 시간 값 사이에서 무작위로 선택되고 균등하게 분산된 시간 동안 타이머를 지연합니다."

RandomizedDelaySec=따라서 대기 시간이 필요한 것에 의존하고 싶지는 않습니다 . 0m는 매우 실제적인 가능성이기 때문입니다.

일반적 RandomizedDelaySec=으로 잘 작동 Persistent=하지만 시스템이 해당 상태에서 정지된 것으로 간주되는지 확실하지 않기 때문에 "정지"에 어떻게 반응하는지 잘 모르겠습니다. 이 중단된 사용 사례를 해결하는 것은 청어라고 생각합니다.

대신 다음 두 가지 옵션이 있습니다.

  1. ExecStartPre=/bin/sleep ...지연 시간을 최소화하기 위해 백업 서비스에 수동으로 추가하거나
  2. After=network.target타이머나 서비스에 추가하거나 사용자 정의 마운트가 나타나기를 After=mymount.mount기다리는 경우 .fuse.sshfs

옵션 1은 간단한 포괄적인 경우입니다. 하지만 일반적 sleep으로 느린 날에는 아무것도 기다리지 않고, 바쁜 날에는 오래 기다리지 않을 수 있기 때문에 일반적으로 좋아하지 않습니다 . 완벽한 순간을 기다리는 당신의 실제 상태에 대한 피드백은 없습니다. 그러나 이는 시간이 중요하지 않은 백그라운드 작업이므로 일시 중지가 없는 날에도 10분을 더 기다려도 괜찮을 수 있습니다.

관련 정보