Come posso interrompere un lavoro cron attualmente in esecuzione?
Come posso interrompere un lavoro cron attualmente in esecuzione?
Risposte:
Puoi farlo nello stesso modo in cui fermeresti qualsiasi processo.
Per interrompere un cron
lavoro attualmente in esecuzione , è possibile effettuare una delle seguenti operazioni:
pkill process-name
o se conosci il PID (puoi determinarlo eseguendo ps
):
kill 1234
(sostituendo il PID effettivo)
pgrep
o grep
l'output di ps
. Non c'è niente di speciale in un processo eseguito da cron
. Dovresti semplicemente cercare il processo con il suo nome. Puoi anche fare ps fauxww | grep -A 1 '[C]RON'
e le linee sotto le linee mostreranno i lavori in corso cron
. È possibile regolare il numero 1 in alto per vedere eventuali sottoprocessi.
ps fauxww | grep -A 1 '[C]RON'
. Questo elenca gli attuali lavori cron in esecuzione, quindi in seguito puoi annotare il PID ed eseguirlo # kill -9 PID
. Grazie!
-9
dovrebbe essere usato solo come ultima risorsa perché impedisce al processo di eseguire qualsiasi ripulitura all'uscita.
Per interrompere l'esecuzione di cron job. Prima ottenere l'ID processo del comando con
top -p $(pgrep -d',' your_command)
per esempio:-
top -p $(pgrep -d',' httpd)
e corri
kill PID
sostituire PID
con ID processo
Strano, nessuno ha menzionato questo metodo:
$ crontab -e
Nell'editor aperto, eliminare la riga dell'attività che si desidera interrompere o inserire un #
segno, salvare ed uscire
per esempio
prima
* * * * * some_script1
* * * * * some_script2
dopo
* * * * * some_script1
#* * * * * some_script2
o
* * * * * some_script1
riavviare il servizio dopo aver apportato le modifiche entro
sudo service cron reload
Se stai usando Redhat (RHEL) / Fedora Core / Cent OS Linux usa il seguente comando:
/etc/init.d/crond stop
Se stai usando Debian o Ubuntu Linux il seguente comando:
/etc/init.d/cron stop
PS: dovresti essere root per fare queste cose
Primo tipo ps aux
per vedere quali sono tutti i processi in esecuzione.
Quindi annotare PID
ogni processo che si desidera interrompere
Quindi digitare
kill {PID
} per ogni processo.
Dai anche un'occhiata a questi link (link superutente):
È possibile modificare la tabella cron e commentare l'attività in questione. Passa all'utente che controlla l'attività, esporta il tuo editor preferito nell'ambiente, quindi usa crontab -l
:
$ su - root
...
# EDITOR=vi; export EDITOR
# crontab -l
crontab -e
per modificarlo. Per i sistemi che lo hanno, è preferibile usare sudo
invece di su
. Inoltre, crontab -e
funzionerebbe per l'utente (o root) crontab, ma non per il sistema crontab (ad es /etc/cron*
.).