LINUX.ORG.RU
ФорумAdmin

не работает cron


0

0

Добавил в конец /etc/crontab запись

0-59 * * * * root /root/test.sh

перезапустил /etc/rc.d/cron restart

cat /root/test.sh #!/bin/sh echo `date` >> /var/log/test

tail /var/log/test

Сижу жду уже час, в test ничего нет.

anonymous

1. Не трогай system-wide файл (/etc/crontab) -- при апгрейде можешь потерять его.

2. Используй команду
   crontab -e
внеси строку
0-59 * * * * /root/test.sh

Кстати 0-59 тоже самое что и *

3. Убедись что файл исполняемый
   chmod +x /root/test.sh

4. в файле запускаемом из cron желательно исп. полные пути или позаботиться о переменной PATH
#!/bin/sh

# PATH=/bin:/usr/bin   # это cron'овское значение по умолчанию
echo $PATH >> /var/log/test
/bin/date  >> /var/log/test

sdio ★★★★★
()

Да, что касается последней строки в файле crontab, там должен быть символ конца строки. Если редактировал vi'ем, то ОК, если же другим редактором, например из mc, то добавь в конце пустую строку.

sdio ★★★★★
()
Ответ на: комментарий от sdio

>Если редактировал vi'ем, то ОК, если же другим редактором, например >из mc, то добавь в конце пустую строку.

О, спасибо! Никогда бы не догадался про пустую строку )

anonymous
()
Ответ на: комментарий от sdio

фича, согласен.
за пробелы в именах файлах надо ...ну вы поняли ))

dreamer ★★★★★
()
Ответ на: комментарий от sdio

есть такое, сам в свое время долго не мог понять, но потом подумал о что может ему пустой строки нехватает и в итоге заработало

prizident ★★★★★
()
Ответ на: комментарий от prizident

Пустая строка не нужна.
Пустая строка и \n в конце строки, несколько разные вещи.

sdio ★★★★★
()
4 февраля 2008 г.
Ответ на: комментарий от prizident

Помимо проблемы с "вводами", с которой я разобрался, была еще одна проблема, после решения которой crontab лично у меня заработал:

После установки LINUXa время в БИОСе, часы пользователя и часы root-a --- показывают разное время. Для того, чтобы выровнять все эти часы я по правой кнопке мыши захожу в "Параметры" и выставляю галочку "показывать время по Гринвичу (UTC)". После чего время в БИОСЕ становится равно часам пользователя и равно часам root-a. Однако часы в "Центре Управления Мандрива Линукс"(это: "Система" ----> "Администрирование" ----> "Настройка компьютера" "Система" ----> "Настройка даты и времени") продолжают показывать неверное время, и crontab ориентируется почему-то по ним. Для того, чтобы crontab заработал, выставите время в crontab-е по часам из "Центра Управления Мандрива Линукс". И crontab нормально заработает. Причина происходящего в том, что при установке LINUXa был указан часовой пояс EUROPE/MOSCOW. Ну или же приведите все эти разные часы к нужному Вам, правильному состоянию. =============================================

Коноваленко Сергей Викторович Kony г. Томск Mandriva Linux 2007.0 -- Gnome 2.16.0

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.