Come eseguire lo script PHP come utente normale con Cron
Cron è una potente utility per la pianificazione basata sul tempo dei lavori nei sistemi operativi simili a Unix, incluso Linux. Funziona come un demone e può essere utilizzato per pianificare lavori come comandi o script di shell per eseguire backup, pianificare aggiornamenti e molto altro, che vengono eseguiti periodicamente e automaticamente in background in orari, date o intervalli specifici.
Una limitazione di cron è che presuppone che un sistema funzionerà per sempre; quindi è adatto per server diversi dalle macchine desktop. Inoltre, puoi pianificare un'attività in un determinato momento o in un momento successivo, utilizzando i comandi "at" o "batch": ma l'attività viene eseguita solo una volta (non viene ripetuta).
Lettura consigliata: Come pianificare i lavori utilizzando Anacron su Linux
In questo articolo spiegheremo come consentire a un normale utente di sistema di eseguire o eseguire uno script PHP tramite uno scheduler di processi cron in Linux.
Puoi pianificare i lavori utilizzando il programma crontab (CRON TABle). Ogni utente può avere il proprio file crontab composto da sei campi per definire un lavoro:
- Minuti: accetta valori compresi tra 0 e 59.
- Ora: accetta valori compresi tra 0 e 23.
- Giorno del mese: memorizza i valori compresi tra 1 e 31.
- Mese dell'anno: memorizza i valori compresi tra 1 e 12 o gennaio-dicembre, puoi utilizzare le prime tre lettere del nome di ogni mese, ovvero gennaio o giugno.
- Giorno della settimana: contiene valori compresi tra 0 e 6 o domenica-sabato. Anche qui puoi utilizzare le prime tre lettere del nome di ogni giorno, ad esempio domenica o mercoledì.
- Comando: comando da eseguire.
Per creare o modificare le voci nel tuo file crontab, digita:
crontab -e
E per visualizzare tutte le voci crontab, digita questo comando (che stamperà semplicemente il file crontab sull'output std):
crontab -l
Tuttavia, se sei un amministratore di sistema e desideri eseguire uno script PHP come un altro utente, devi pianificarlo nel file /etc/crontab o nel file crontab dell'utente root che supporta un file aggiuntivo per specificare il nome utente:
sudo vi /etc/crontab
E pianifica l'esecuzione del tuo script PHP in questo modo, specifica il nome utente dopo la sezione dei tempi.
0 0 * * * tecmint /usr/bin/php -f /var/www/test_site/cronjobs/backup.php
La voce sopra esegue lo script /var/www/test_site/cronjobs/backup.php ogni giorno a mezzanotte come utente tecmint.
Se vuoi eseguire automaticamente lo script sopra ogni dieci minuti, aggiungi la seguente voce al file crontab.
*/10 * * * * tecmint /usr/bin/php -f /var/www/test_site/cronjobs/backup.php
Nell'esempio sopra, */10 * * * *
rappresenta quando dovrebbe avvenire il lavoro. La prima cifra mostra i minuti, in questo scenario ogni "dieci"
minuto. Le altre cifre mostrano rispettivamente l'ora, il giorno, il mese e il giorno della settimana.
Potrebbe interessarti anche leggere i seguenti articoli correlati.
- Utilizzo dello scripting della shell per automatizzare le attività di manutenzione del sistema Linux
- 12 Utilizzo utile della riga di comando PHP che ogni utente Linux deve conoscere
- Come eseguire codici PHP nel terminale Linux
- 30 comandi Linux utili per gli amministratori di sistema
È tutto! Ci auguriamo che questo articolo ti sia utile. Se hai domande o idee extra da condividere su questo argomento, utilizza il modulo dei commenti qui sotto.