Hvorfor konvertere TIMER til SERVICE?
I systemd er dette to halvdele af samme opgave: .timer siger hvornår, og .SERVICE siger hvad. Så den realistiske opgave er ikke konvertering, men at skrive den matchende service-enhed, som timeren udløser, enten via standard navnematch eller via Unit=-direktivet.
Sådan konverterer du TIMER til SERVICE
Ethvert tekstredigeringsprogram FREE
Opret en fil med det samme grundnavn, f.eks. backup.service ved siden af backup.timer, og tilføj en [Service]-sektion med ExecStart= sat til din kommando; timeren udløser den automatisk via navnet.
systemctl edit FREE
Kør systemctl edit --full --force backup.service for at åbne en ny enhed i den korrekte mappe, definer ExecStart=, kør derefter systemctl daemon-reload og aktiver timeren.
Om disse formater
En .timer-fil er en systemd-enhed, der planlægger, hvornår en anden enhed (normalt en matchende .service-fil) kører på Linux, og fungerer som en moderne erstatning for cron. Det er en lille…
Åbn .TIMER detaljer →En .SERVICE-fil er knyttet til Mac OS X Service Application, en system-fil.
Åbn .SERVICE detaljer →Kvalitet & hvad man skal være opmærksom på
- Som standard aktiverer
backup.timerenbackup.service; brug kunUnit=i timerens[Timer]-sektion, hvis servicenavnet er anderledes. - Servicen bør typisk være
Type=oneshottil planlagte opgaver, så systemd behandler hver kørsel som en diskret opgave. - Efter oprettelse eller ændring af enheden skal du køre
systemctl daemon-reload, ellers registrerer timeren ikke den nye service.
Ofte stillede spørgsmål
Kan en timer køre uden en service?
.service-enhed, der definerer kommandoen.Hvordan ved timeren, hvilken service den skal køre?
foo.timer kører foo.service), medmindre du overstyrer det med Unit= i timer-filen.Skal jeg aktivere timeren eller servicen?
.timer; systemd starter servicen for dig i henhold til tidsplanen.Hvor ligger disse enhedsfiler?
/etc/systemd/system/ for systemdækkende enheder, og kør systemctl daemon-reload efter redigering.