Eu configurei poucos usuários systemd.timer (s).
Como fazê-los começar automaticamente? (no início do sistema ou uma vez usuário logado na sessão X).
Depois de reiniciar o sistema (mesmo systemctl --user enable
foi executado antes de reiniciar, ou seja, não ajuda) Eu não tenho nenhum em execução:
~$ systemctl --user enable {rsync_backup1,rsync_another_backup}.timer
~$ systemctl --user list-timers --all
0 timers listed.
Aqui eu comandos que preciso usar para iniciá-los depois:
~$ systemctl --user start {rsync_backup1,rsync_another_backup}.timer
~$ systemctl --user list-timers --all
NEXT LEFT LAST PASSED UNIT
Sun 2016-07-31 13:26:45 CEST 1h 16min ago Sun 2016-07-31 14:43:32 CEST 2s ago rsync_backup1
Sun 2016-07-31 13:26:45 CEST 1h 16min ago Sun 2016-07-31 14:43:32 CEST 2s ago rsync_another_backup
2 timers listed.
~$
Aqui está um exemplo de como os temporizadores estão atualmente configurados:
$ HOME / .config / systemd / user / rsync_backup1.service:
[Unit]
Description=rsync --delete /home/USER data to NASUSER@NAS
[Service]
Type=simple
ExecStart=/home/USER/scripts/rsync_backup1.sh
$ HOME / .config / systemd / user / rsync_backup1.timer:
[Unit]
Description=Runs every 12 minutes rsync --delete /home/USER data to NASUSER@NAS
[Timer]
OnBootSec=12min
AccuracySec=10min
OnCalendar=*:0/12
Unit=rsync_backup1.service
[Install]
WantedBy=multi-user.target
P.S. Sim, sei que posso descartar comandos, que iniciam meus timers em .bashrc
ou .xinit
ou em meus scripts de "inicialização" do Gerenciador de Janelas. O que eu estou perguntando é: existe uma maneira "limpa" de "systemd" definir isso para ser executado após cada reinicialização (/ login)?