Come utente Linux, probabilmente conosci cron. Da molti anni funge da utilità di pianificazione basata sul tempo. Ora molti utenti stanno vedendo che i timer di Systemd iniziano a sostituire il dominio di cron.
Questo articolo discuterà le nozioni di base su come impostare il tuo timer e assicurarti che funzioni correttamente sul tuo sistema.
installazione?
Se stai già utilizzando Systemd come init - molte distribuzioni Linux popolari lo eseguono per impostazione predefinita, inclusi Arch, Debian, Fedora, Red Hat e Ubuntu - vedrai che i timer sono già in uso. Non resta altro da fare che utilizzare questa funzione già installata.
Elenco dei menu dei timer
Il modo più semplice per verificare se il timer esiste sul tuo computer è usare il comando:
systemctl list-timers
Non è necessario eseguire queste carte.
systemctl list-timers --all
L'opzione –all qui mostra anche i timer inattivi. Al momento non ci sono timer inattivi in questo sistema.
Dovresti trovare un output simile alla seguente immagine:
È possibile visualizzare la data e l'ora di attivazione di ciascun timer, il conto alla rovescia fino a quel momento, il tempo trascorso dall'accensione, il nome dell'unità timer stessa e il servizio attivato da ciascuna unità timer.
Tutti i timer devono essere associati al servizio corrispondente. Nella prossima sezione vedrai come creare un file “.timer” che attivi un file “.service”.
Crea un nuovo timer
Puoi creare un nuovo timer inserendo un .timer personalizzato dentro "/etc/systemd/system/." Quando si crea un nuovo file di servizio DNS temporaneo per anatraDNS Ho finito con questo testo:
[Unit] Description=Update duckdns dynamic DNS [Timer] OnCalendar=*-*-* 11:43:00 Persistent=true [Install] WantedBy=timers.target
1. Sezione [Unità]
L'opzione “Description= …” nel file ti dice il nome/la descrizione del timer stesso. In questo caso 'duckdns.timer' aggiornerà il mio dns dicendo al file 'duckdns.service' di eseguire una serie di comandi.
Puoi modificare la dicitura dopo "Description=" per dire quello che vuoi.
2. Sezione [Timer].
Mostra "OnCalendar =..." Ecco un modo per dire al timer quando attivarlo. * – * – * indica "anno-mese-giorno e gli asterischi indicano che da ora in poi verrà eseguito ogni giorno di ogni mese di ogni anno. L'ora che segue gli asterischi mostra l'ora del giorno in cui deve essere eseguito il timer.
"Persistente = vero" significa semplicemente che il timer verrà eseguito automaticamente se manca l'ora di inizio precedente. Ciò può verificarsi perché il computer si spegne prima che si verifichi l'evento. Questo è facoltativo ma consigliato.
3. Sezione [Installa].
Alla fine, appare "Ricercato da = timer.target" che timer di sistema.target Questo file verrà utilizzato .Timer. Questa riga nel file visualizza la stringa di dipendenza da un file all'altro. Non devi eliminare o modificare questa riga.
altre opzioni
Puoi trovare molte altre funzionalità eseguendo la scansione di una pagina mand uomo con man systemd timer. Vai alla sezione OPZIONI per scoprire le opzioni di precisione, persistenza e post-corsa.
Riproduci il timer
Attiva qualsiasi timer che hai creato con la sintassi abilitazione systemctl و avvio del sistemactl.
sudo systemctl enable duckdns.timer sudo systemctl start duckdns.timer
Guarda di nuovo l'elenco dei timer di systemctl per vedere il tuo timer in azione.
Puoi sapere se il tuo timer ha funzionato come previsto controllando il suo file di servizio con stato systemctl. In questo caso, puoi vedere che nel mio caso funziona alle 11:43:00 come avrebbe dovuto.
Conclusione
Sebbene molti programmi di terze parti, tra cui anatraDNS , viene fornito con script che consentono loro di aggiornarsi secondo necessità, creando timer in systemd È un'abilità utile da sapere. stava creando un timer per anatraDNS Qui non è necessario, ma mostra come funzioneranno altri tipi di timer systemd.
Questa conoscenza sarà utile, ad esempio, per creare ed eseguire script Bash il tuo. Puoi persino usarlo per cambiare il timer corrente per adattarlo meglio alle tue preferenze. Inoltre, è sempre bene sapere come funziona il tuo computer e da allora systemd Controllando molte funzioni di base, questo pezzo del puzzle può aiutarti a capire meglio il modo in cui gli eventi si svolgono ogni giorno.
Grazie per aver seguito l'articolo. Buona fortuna con la creazione dei tuoi timer.