Удаление предыдущих Crontabs

Я думаю, что у меня есть конкурирующие cronjobs. Когда я запускаю "suron service cron status", я получаю следующий вывод:

Основной PID: 31130 (cron)

CGroup: /system.slice/cron.service

    |-11690 /usr/sbin/CRON -f
      |-11691 /usr/sbin/CRON -f
      |-11692 /bin/sh -c /usr/bin/curl http: //myDomain/cron.php?cron_key=
      |-11693 /usr/bin/curl http: //myDomain/cron.php?cron_key=
      |-11695 /bin/sh -c wget -O - -q -t 1 http:// myDomain/sites/all/modules/contrib/elysia_cron/cron.php?cron_key=
      |-11696 wget -O - -q -t 1 http:// myDomain/sites/all/modules/contrib/elysia_cron/cron.php?cron_key=
      |-11713 /usr/sbin/CRON -f
      |-11714 /bin/sh -c /usr/bin/curl http: //myDomain/cron.php?cron_key=
      |-11715 /usr/bin/curl http: //myDomain/cron.php?cron_key=
      |-31130 /usr/sbin/cron -f

Различные задания cron были введены и отредактированы с помощью crontab -e. Я думал, что редактирование перезапишет предыдущую запись, но когда я просматриваю "системный журнал", они отображаются следующим образом:

3 февраля 11:03:01 Сайт TMC CRON[12082]: (root) CMD (usr/bin/curl http: //myDomain/cron.php?cr$
3 февраля 11:04:01 Сайт TMC CRON[12092]: (root) CMD (usr/bin/curl http: //myDomain/cron.php?cr$
3 февраля, 11:04:01 Сайт TMC CRON[12095]: (ubuntu1) CMD (wget -O - -q -t 1 http: //myDomain/Site$
3 февраля 11:05:01 Сайт TMC CRON[12112]: (root) CMD (usr/bin/curl http: //myDomain/cron.php?cr$
3 февраля 11:06:01 Сайт TMC CRON[12126]: (root) CMD (usr/bin/curl http: //myDomain/cron.php?cr$
3 февраля, 11:06:01 Сайт TMC CRON[12129]: (ubuntu1) CMD (wget -O - -q -t 1 http: //myDomain/Site$
3 февраля, 11:07:01 Сайт TMC CRON[12137]: (root) CMD (usr/bin/curl http: //myDomain/cron.php?cr$
3 февраля, 11:08:01 Сайт TMC CRON[12146]: (root) CMD (usr/bin/curl http: //myDomain/cron.php?cr$
3 февраля, 11:08:01 Сайт TMC CRON[12149]: (ubuntu1) CMD (wget -O - -q -t 1 http: //myDomain/Site$

Таким образом, вы можете увидеть шаблон. Я не знаю, является ли это проблемой, или как удалить все, кроме cron, запущенного под пользователем "ubuntu1".

Любая помощь будет оценена.

1 ответ

Чтобы удалить задания cron, принадлежащие другому пользователю:

$ sudo su [-l] other-user-name  # if other-user-name is a login user (option -l)
        # ^  ^ brackets indicate that you can just as well not use the option -l
$ crontab -e
... suppress the cronjobs that you identify as dupes or superfluous
... quit your crontab editor.

Чтобы удалить задания root cron:

$ sudo -i crontab -e 
... suppress the cronjobs that you identify as dupes or superfluous
... quit your crontab editor.

Чтобы удалить cron jobs текущего пользователя (для завершения):

$ crontab -e
... suppress the cronjobs that you identify as dupes or superfluous
... quit your crontab editor.

НОТА: cron автоматически примет во внимание новых crontabs.

ПРИМЕЧАНИЕ. Вместо того, чтобы прямо удалять строки, соответствующие тому, что вы идентифицируете как ложные cron jobs, вы можете сначала просто закомментировать их. Через неделю, после того как вы успели проверить, что "все хорошо", вы можете приступить к фактическому удалению, повторно посетив crontabs, как показано выше.

Другие вопросы по тегам