Подтвердить что ты не робот

Подробности последней работы cron в Unix-подобных системах?

Я хочу получить информацию о последнем запуске задания cron. Если задание прерывается из-за некоторых внутренних проблем, я хочу повторно запустить задание cron.

Примечание. У меня нет привилегии суперпользователя.

4b9b3361

Ответ 1

Вы можете видеть дату, время, пользователь и команду ранее выполненных заданий cron, используя:

grep CRON /var/log/syslog

Это покажет все задания cron. Если вы хотите видеть только задания, выполняемые определенным пользователем, вы должны использовать что-то вроде этого:

grep CRON.*\(root\) /var/log/syslog

Обратите внимание, что cron регистрирует в начале задания, чтобы вы могли иметь длительные задания, сохраняя свои собственные журналы завершения; если система опустилась на полпути через задание, она все равно будет в журнале!

Изменить: Если у вас нет доступа root, вам придется оставить свои собственные журналы работы. Это можно сделать просто, применив следующее к концу вашей команды:

&& date > /home/user/last_completed

Файл /home/user/last_completed всегда будет содержать последнюю дату и время выполнения задания. Вы бы использовали >> вместо >, если хотите добавить даты завершения в файл.

Вы также можете добиться того же, поставив свою команду в небольшом bash или sh script, и cron выполнит этот файл.

#!/bin/bash
[command]
date > /home/user/last_completed

Кронтаб для этого будет:

* * * * * bash /path/to/script.bash

Ответ 2

/var/log/cron содержит журналы работы cron. Но вам нужна привилегия root.