( x-mas.service
)
[Unit]
Description=Celebrate X-Mas
[Service]
Type=simple
ExecStart=/usr/sbin/x-mas-day
[Install]
WantedBy=multi-user.target
( x-mas.timer
)
[Unit]
Description=Add "X-Mas" to the calendar
[Timer]
OnCalendar=*-12-25 00:00:00
Unit=x-mas.service
[Install]
WantedBy=timers.target
( buy-presents.service
)
[Unit]
Description=Get your wallet out
Requires=x-mas.service
Before=x-mas.service
[Service]
Type=simple
ExecStart=open-amazon-dot-com.sh
[Install]
WantedBy=multi-user.target
( buy-presents.timer
)
[Unit]
Description=Buy presents
Before=x-mas.timer
Requires=x-mas.timer
[Timer]
OnActiveSec=1
AccuracySec=no-pressure?
RandomizedDelaySec=true?
[Install]
#WantedBy=timers.target
RequiredBy=x-mas.timer
É claro que ainda há muito tempo a partir de hoje para comprar presentes , portanto, flexibilidade otimizada no agendamento antes do 'prazo de Natal' é desejada, mas não ficou imediatamente óbvio para mim na primeira leitura systemd.timer(5) como relacionar temporizadores para outros temporizadores. Isso pode ser feito systemd
apenas com unidades?
Estou gradualmente começando a entender systemd.unit(5) . As opções
Before=
eRequires=
referem-se apenas às[Unit]
configurações de nível e não têm influência em nenhuma configuração do[Timer]
nível. Exceto para inserir uma configuração de valor em conformidade com systemd.time(7) na[Timer]
unidade, isso não pode ser feito sem a ajuda do shell.