Я пытаюсь автоматизировать обновление awstats для своего веб-сервера и понимаю, что мне нужно использовать cron для его настройки. Таким образом, у каждого пользователя есть файл crontab?
Я следовал инструкциям здесь community / AWStats
И он говорит, чтобы перейти к файлу по адресу: /etc/crontab
Этот файл уже содержит некоторую информацию. Это основной файл crontab
или что-то еще? Я видел некоторые инструкции в Интернете, чтобы использовать файл, который появляется с crontab -e
.
Как правильно использовать файл и как лучше всего это сделать?
Если я планирую задачу как мой пользователь без полномочий root, будет ли он запускаться сам по себе в указанный промежуток времени без проблем?
Нужно ли будет перезапускать сервер после сохранения задания cron в файле crontab
до его запуска? работает?
, Что надлежащий файл должен использовать и лучший способ сделать это?
crontab -e
лучший способ сделать это - это позволит Вам легкому редактированию crontabs в расчете на пользователя.
, Если я планирую задачу как свой некорневой пользователь, она будет работать отдельно в то время интервал, как указано без проблем?
Да, и это будет работать с полномочиями той учетной записи пользователя.
Как принцип, лучше выполнять запланированные задачи с самыми низкими полномочиями, которые можно сойти с рук, поэтому если то, что Вы делаете, не потребует корня, не используйте корень. Если Вы не должны даже мочь получить доступ Ваш файлы и папки учетной записи, то можно создать нового пользователя и использовать ту учетную запись пользователя только для той задачи. С другой стороны, если Ваша задача делает , требуют корня, используют crontab корня (su
/ sudo su
для укоренения, затем используют crontab -e
).
я должен буду перезапустить сервер после сохранения рабочего места крона в crontab файле, прежде чем это начнет работать?
No это начнет работать немедленно (хорошо, в следующий возможный запланированный раз).
Каждый пользователь имеет свой собственный crontab
.
Для наблюдения его просто тип
crontab -l
и да Вы видели его правильный, когда Вы хотите добавить crontab
, затем просто делают
crontab -e
впервые, Вас спросят о редакторе для использования с crontab
. Поскольку Вы - новичок, как Вы говорите, я рекомендовал бы использовать нано, это - самый простой редактор для использования.
сам crontab работает как это
MIN = Minute 0-60
HOUR = Hour [24-hour clock] 0-23
MDAY = Day of Month 1-31
MON = Month 1-12 OR jan,feb,mar,apr ...
DOW = Day of Week 0-6 OR sun,mon,tue,wed,thu,fri,sat
COMMAND = Command to be run Any valid command-line
Так, например, инициировать задание каждые 15 минут только в понедельник, Вы делаете это как так
*/15 * * * mon /home/me/yourscript.sh
, и ДА очень важно, чтобы Вы поместили свой cronjob в crontab пользователя, который имеет достаточно прав выполнить его.
Поэтому, если Ваш сценарий должен быть корнем или специальным пользователем, удостоверьтесь к su тому пользователю и добавьте cronjob там.
Также очень важный!
cronjob является немым! Да я сказал это. Всегда удостоверяйтесь, что ввели полный путь в application/command/script
, Вы используете, потому что crontab не будет работать с .bashrc
или подобный. Всегда необходимо удостоверяться, что Вы говорите крон, где он может найти файлы и каталоги.
Для ответа на остальную часть вопросов:
, Конечно, это будет работать свой собственный, это - то, для чего это там. Но необходимо проверить, что cronjob действительно делает это, или если это пропускает что-то. Например, войдите в файл журнала, чтобы видеть, работает ли он действительно.
И нет, перезапуск не нужен. Перезапуск с Linux обычно только необходим при установке нового ядра. Чтобы это использовало, необходимо было бы перезагрузить. Почти все остальное может быть сделано без перезагрузки в Linux. , Конечно, существуют исключения, но в целом этот оператор корректен.