LinuxForum.Fans
Тема

Помогите разобраться с cron

Автор: dm2003 11 сообщений 1372 просмотров
22.01.2015 22:43 #410789

Решил познать всю мощь cron, но перелопатив кучу информации уперся в стену. Теперь по-порядку.

К примеру я решил использовать редактор Gedit для редактирования файла crontab. Выполняю команду:

[console]export EDITOR=gedit[/console]

далее:

[console]crontab -e[/console]

Открывается файл crontab с таким содержанием:

Показать
# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h dom mon dow command

Даже если ничего не записываю, то при сохранении файла в Gedit появляется сообщение:

Не удалось найти файл «/tmp/crontab.oRL2mc/crontab».

Что я делаю не так?

22.01.2015 23:26 · отредактировано #410798

dm2003, Попробуйте перед crontab -e выполнить:
[console=root]touch /var/spool/cron/$USER_NAME[/console]
UPD
Очяпятка... не `whoami`, а вместо $USER_NAME вставить имя пользователя, для которого нужен планировщик =)

23.01.2015 00:42 #410812

[console]touch /var/spool/cron/dm
touch: невозможно выполнить touch для «/var/spool/cron/dm»: Отказано в доступе[/console]

Не совсем разобрался для чего нужна команда touch.

23.01.2015 00:53 #410813

"dm2003" написал:
Не совсем разобрался для чего нужна команда touch.
Чтобы создать пустой файл...

"dm2003" написал:
невозможно выполнить touch для «/var/spool/cron/dm»: Отказано в доступе
Запускать нужно от рута)
23.01.2015 00:56 #410814

Файл пользователя должен же быть в /var/spool/cron/crontabs, а не в /var/spool/cron. Ведь так?

23.01.2015 00:58 · отредактировано #410815

dm2003,

"man cron" написал:
Cron searches /var/spool/cron for crontab files which are named after accounts in /etc/passwd

ЗЫ
Хммм.... Может быть в бубунте\минте и не так.....
ЗЗЫ
Проверил у себя (openSUSE + Kwrite) так как gedit нету и в помине =)
При отсутствии хотябы пустого конфига - действительно вымахнулось....
Создал пустой файл - заработало....

23.01.2015 01:14 #410816

Ок, попробую - отпишусь. Спасибо за помощь.

23.01.2015 17:34 #410955

"dm2003" написал:
Что я делаю не так?
может вы под рутом работаете?

Для пользователя свой crontab предусмотрен.

почитайте man crontab в своей системе.

Ну и используйте консольный редактор.
24.01.2015 00:51 #410997

Таки да. Попробовал консольный редактор и все получилось. Странно))).

24.01.2015 08:12 #411009

Ничего странного, графика слабо приспособлена для администрирования системы, так как слабо связана с командной оболочкой. Например, в графике не действуют алиасы.

24.01.2015 09:11 #411020

"yars" написал:
Например, в графике не действуют алиасы.
на самом деле действуют, но у них действие зависит от инициализации самих иксов, и очень специфическое в каждом дистрибутиве.

Как и всё остальное.

В некотором дистре некоторые действия имеют один эффект, в некотором — другой.

Жаль, что одмины локалхоста этого не понимают…
Войдите или зарегистрируйтесь, чтобы ответить.