Jak mogę zatrzymać aktualnie uruchomione zadanie CRON?
Jak mogę zatrzymać aktualnie uruchomione zadanie CRON?
Odpowiedzi:
Możesz to zrobić w taki sam sposób, jak zatrzymać każdy proces.
Aby zatrzymać aktualnie uruchomione cron
zadanie, możesz wykonać jedną z następujących czynności:
pkill process-name
lub jeśli znasz PID (możesz go ustalić, uruchamiając ps
):
kill 1234
(zastępując rzeczywisty PID)
pgrep
lub grep
danych wyjściowych ps
. Nie ma nic specjalnego w uruchamianiu procesu cron
. Po prostu wyszukaj proces pod własną nazwą. Możesz także zrobić, ps fauxww | grep -A 1 '[C]RON'
a wiersze poniżej wierszy pokażą zadania wykonywane przez cron
. Możesz ustawić cyfrę 1 wyżej, aby zobaczyć ewentualne podprocesy.
ps fauxww | grep -A 1 '[C]RON'
. Lista bieżących uruchomionych zadań cron, dzięki czemu można zanotować PID w dół i wykonać # kill -9 PID
. Dzięki!
-9
powinien być używany tylko w ostateczności, ponieważ uniemożliwia procesowi czyszczenia po wyjściu.
Aby zatrzymać uruchamianie zadania cron. Najpierw pobierz identyfikator procesu swojego polecenia za pomocą
top -p $(pgrep -d',' your_command)
na przykład:-
top -p $(pgrep -d',' httpd)
i biegnij
kill PID
zamień na PID
id procesu
Dziwne, nikt nie wspomniał o tej metodzie:
$ crontab -e
W otwartym edytorze usuń wiersz zadania, które chcesz zatrzymać lub wstaw #
znak, zapisz i wyjdź
na przykład
przed
* * * * * some_script1
* * * * * some_script2
po
* * * * * some_script1
#* * * * * some_script2
lub
* * * * * some_script1
uruchom ponownie usługę po wprowadzeniu zmian przez
sudo service cron reload
Jeśli używasz systemu Redhat (RHEL) / Fedora Core / Cent OS Linux, użyj następującego polecenia:
/etc/init.d/crond stop
Jeśli używasz systemu Debian lub Ubuntu Linux, następujące polecenie:
/etc/init.d/cron stop
PS: Powinieneś być rootem, aby robić te rzeczy
Pierwszy typ, ps aux
aby zobaczyć, jakie są uruchomione wszystkie procesy.
Następnie zanotuj PID
każdy proces, który chcesz zatrzymać
Następnie wpisz
kill {PID
} dla każdego procesu.
Zobacz również te linki (linki superużytkownika):
Możesz edytować tabelę cron i komentować dane zadanie. Przejdź do użytkownika, który kontroluje zadanie, wyeksportuj wybrany edytor do środowiska, a następnie użyj crontab -l
:
$ su - root
...
# EDITOR=vi; export EDITOR
# crontab -l
crontab -e
do edycji. W systemach, które go mają, lepiej jest używać sudo
zamiast su
. Działa również crontab -e
dla crontab użytkownika (lub root), ale nie crontab systemowy (np /etc/cron*
.).
crontab -r
usunie wszystkie uruchomione tabele crontab, lub możesz po prostu skomentować polecenia crontab, które należy zatrzymać.