Linux Crontab esegue regolarmente i comandi delle attività di script e imposta l'utilizzo del file di configurazione

Il processo cron integrato in Linux può aiutarci a soddisfare le nostre esigenze di esecuzione di attività pianificate. Utilizzando cron e script di shell, possiamo eseguire facilmente comandi complessi secondo una pianificazione prestabilita.

Cos'è Cron?

Spesso utilizziamo il comando crontab , abbreviazione di cron table.

È il file di configurazione per cron, che può anche essere chiamato l'elenco dei lavori.

Possiamo trovare i file di configurazione rilevanti nelle seguenti cartelle.

  • La directory /var/spool/cron/ memorizza le attività crontab per ogni utente incluso root e ogni attività prende il nome dal creatore
  • /etc/crontab Questo file è responsabile della pianificazione di varie attività amministrative e di manutenzione.
  • /etc/cron.d/ Questa directory viene utilizzata per memorizzare qualsiasi file crontab o script da eseguire.
  • Possiamo anche inserire script in /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly, /etc/cron.monthly directory, lascia che venga eseguito ogni ora/giorno/settimana, mese.

Come si usa Crontab?

I nostri comandi comunemente usati sono i seguenti:

crontab [-u username]    //省略用户名表示操作当前用户的crontab
    -e      (编辑工作表)
    -l      (列出工作表里的命令)
    -r      (删除工作表)

noi usiamocrontab -eImmettere la modifica del foglio di lavoro dell'utente corrente, che è un'interfaccia vim comune.Ogni riga è un comando.

Modifica foglio di lavoro▼

crontab -e

Elenca fogli di lavoro▼

crontab -l

Elimina foglio di lavoro ▼

crontab -r 

I comandi di crontab sono strutturati come tempo + azione. Le opzioni di tempo includono minuti, ore, giorno, mese e venerdì. Gli operatori includono...

  • * tutti i numeri nell'intervallo
  • / quanti numeri
  • - dalla X alla Z
  • ,numeri hash

Esempio di comando per l'esecuzione di attività pianificate di Crontab

Linux Crontab esegue comandi di attività pianificate e imposta l'utilizzo del file di configurazione

Esempio 1: esegui myCommand ogni 1 minuto

* * * * * myCommand

Esempio 2: Esecuzione al 3° e 15° minuto di ogni ora

3,15 * * * * myCommand

实例3:在上午8点到11点的第3和第15分钟执行

3,15 8-11 * * * myCommand

实例4:每隔两天的上午8点到11点的第3和第15分钟执行

3,15 8-11 */2  *  * myCommand

实例5:每周一上午8点到11点的第3和第15分钟执行

3,15 8-11 * * 1 myCommand

Esempio 6: Riavvia smb alle 21:30 ogni notte

30 21 * * * /etc/init.d/smb restart

实例7:每月1、10、22日的4 : 45重启smb

45 4 1,10,22 * * /etc/init.d/smb restart

Esempio 8: riavvia smb alle 1:10 ogni sabato e domenica

10 1 * * 6,0 /etc/init.d/smb restart

Esempio 9: riavvia smb ogni 18 minuti tra le 00:23 e le 00:30 tutti i giorni

0,30 18-23 * * * /etc/init.d/smb restart

Esempio 10: riavvia smb ogni sabato alle 11:00

0 23 * * 6 /etc/init.d/smb restart

Esempio 11: riavvia smb ogni ora

* */1 * * * /etc/init.d/smb restart

Esempio 12: riavvia smb ogni ora tra le 11:7 e le XNUMX:XNUMX

* 23-7/1 * * * /etc/init.d/smb restart

Come eliminare l'attività Crontab specificata?

SSH inserisci il seguente comando crontab ▼

crontab -e
  • Assumendo più attività, elimina l'attività pianificata specificata in vim (sposta il cursore sulla riga di configurazione da eliminare, premi il tasto cancella per eliminare)

按 :wq salva ed esci

Verificare se l'attività Crontab è stata eliminata?

crontab -l
  • Si scopre che l'attività pianificata crontab che è stata appena eliminata non esiste, il che significa che l'eliminazione è riuscita.

Come riavviare il servizio Cron?

Utilizzo dei comandi di gestione dei servizi di sistema : in alcuni casi, potrebbe essere necessario utilizzare direttamente i comandi di gestione dei servizi di sistema per riavviare il servizio cron.

In particolare, quando si aggiungono o si modificano attività pianificate da Cron in HestiaCP , è necessario riavviare il servizio Cron affinché le modifiche abbiano effetto.

Questo di solito comporta uno dei seguenti comandi:

  • Per uso systemd Sistema:

    sudo systemctl restart cron
    
  • Per uso init.d Script per vecchi sistemi:

    sudo /etc/init.d/cron restart
    
  • Per uso service Sistema di comando:

    sudo service cron restart
    

Pannello di controllo CWPCome impostare le attività pianificate di Crontab

  • Nell'attività pianificata, aggiungi un comando di sincronizzazione per sincronizzare automaticamente i file di backup del pannello di controllo CWP su GDrive.

Se si utilizza il Pannello di controllo CWP, accedere al Pannello di controllo CWP的 Server Setting → Crontab for root ▼

Come impostare le attività a tempo di Crontab per la sincronizzazione automatica con GDrive nel pannello di controllo CWP?

In "Aggiungi lavori Cron personalizzati completi", inserisci il seguente comando cron completamente personalizzato ▼

00 7 * * * rclone sync /backup2 gdrive:cwp-backup2
55 7 * * * rclone sync /newbackup gdrive:cwp-newbackup
  • (Sincronizza automaticamente la directory locale ogni mattina alle 7:00 /backup2sul disco di rete con il nome di configurazione gdrivebackup2Sommario)
  • (Sincronizza automaticamente la directory locale ogni mattina alle 7:55 /newbackup  sul disco di rete con il nome di configurazione gdrivecwp-newbackupSommario)
  • Stesso passoWordPressPer i file di siti Web, si consiglia di non eseguire il backup in modo incrementale, poiché il test ha rilevato che se i nomi dei file sono gli stessi, ma i contenuti dei file sono diversi, non verranno sincronizzati.

Poiché il processo rclone può continuare a essere eseguito in background anche dopo l'avvio programmato della sincronizzazione automatica , può consumare fino al 20% delle risorse della CPU, con conseguente spreco di risorse del server.

Pertanto, è necessario aggiungere un comando di attività pianificata completamente personalizzato per forzare la chiusura del processo rclone ▼

00 09 * * * killall rclone
  • (Chiudere forzatamente il processo rclone ogni mattina alle 7:00)

Se il pannello di controllo di CWP non è in grado di modificare le attività pianificate di Crontab, è possibile utilizzare FTPsoftwareaprire un file /var/spool/cron/ Modifica direttamente le attività a tempo di Crontab.

Come utilizzare rclone per eseguire il backup di un VPS? Fai clic sul link qui sotto per visualizzare il tutorial di CentOS sulla sincronizzazione automatica tramite Google Drive ▼

发表 评论

您的邮箱地址不会被公开.必填项已用*标注

Scorrere fino a Top