Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Cron - неработает.  (Прочитано 907 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Genal

  • Автор темы
  • Новичок
  • *
  • Сообщений: 16
    • Просмотр профиля
Cron - неработает.
« : 15 Январь 2012, 15:57:42 »
Почемуто неисполняеться крон. Запускаю кронтаб будучи рутом таким образом:  sudo crontab -u root -e

В файле вписал следующее (єто все что есть помимо закоментированого)

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

17 *    * * *   root    cd / && run-parts –report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts –report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts –report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts –report /etc/cron.monthly )

*/3 * * * * ./test
20 * * * * echo "hello warld"
*/2 * * * * echo "hello worls"
*/2 * * * * /home/genal/test

Че делать?


Оффлайн truegeek

  • FPGA Designer
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4214
  • аЦкий схемотехник
    • Просмотр профиля
Re: Cron - неработает.
« Ответ #1 : 15 Январь 2012, 16:24:18 »
Во-первых, вопрос по крону не относится к разделу программирования.
Во-вторых, 1, 2, 3 задания заданы некорректно.
В-третьих, что у вас написано в файле test?

Оффлайн Genal

  • Автор темы
  • Новичок
  • *
  • Сообщений: 16
    • Просмотр профиля
Re: Cron - неработает.
« Ответ #2 : 16 Январь 2012, 18:38:52 »
1)Во первых извиняюсь, а в кокую тему идти?
2) Во вторых что некоректно? (если можно пожалуйста напишите)
3)В третьих, в тесте у меня скрипт проверки пинга, сам по себе запускаеться ./test
но ехо то тоже невыполняеться, что сделал нетак?

Спасибо

Оффлайн truegeek

  • FPGA Designer
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4214
  • аЦкий схемотехник
    • Просмотр профиля
Re: Cron - неработает.
« Ответ #3 : 16 Январь 2012, 19:27:25 »
1) Я уже перенес
2) */3 * * * * ./test
 Тут нужно указывать полный путь, либо добавлять переменную в PATH
20 * * * * echo "hello warld"
Тут ты выводишь текст "hello warld", но куда? Это тоже нужно указывать. Как это делается можно узнать в гугле или в описании крона
*/2 * * * * /home/genal/test
будет работать если скрипт исполняемый, иначе нужно добавить
*/2 * * * * /bin/bash /home/genal/test

3) И таки хочется посмотреть что у вас внутри скрипта.

Оффлайн Genal

  • Автор темы
  • Новичок
  • *
  • Сообщений: 16
    • Просмотр профиля
Re: Cron - неработает.
« Ответ #4 : 16 Январь 2012, 21:58:03 »
*/2 * * * * /home/genal/test
будет работать если скрипт исполняемый, иначе нужно добавить
*/2 * * * * /bin/bash /home/genal/test

Попробовал оба варианта, ниче невыдает.
Может этого ненандо было дописывать:
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

17 *    * * *   root    cd / && run-parts –report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts –report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts –report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts –report /etc/cron.monthly )


Но тогда в кронтабе б ничего и небыло.

Скрипт теста:
#!/bin/sh
ping -q -c5 google.com > /dev/null
if [ $? -eq 0 ]
then
echo "ok"
else ./expect
fi;
Сдер с нета, но работает все, если запускать ./test - непойму только что значит $?, читал что переменная которая хранит результат выполнения , в данном случае пинга, но как она привязалась к пингу и почему именно к 0% packet loss, а не к количесвто пакетов, или наименьшому времени, непонятно (но єт наверное потому что я  влинуксе Лох :))

-rwxr-xr-x  1 root  root     99 2012-01-14 09:36 test
Делал его chmod +rx

Про то как нужно правильно записать эхо непонял что нужно сделать, везде в примерах в нете так и написано.

Спасибо.

Оффлайн ArcFi

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 15194
    • Просмотр профиля
    • aetera.net
Re: Cron - неработает.
« Ответ #5 : 16 Январь 2012, 22:09:48 »

Оффлайн truegeek

  • FPGA Designer
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4214
  • аЦкий схемотехник
    • Просмотр профиля
Re: Cron - неработает.
« Ответ #6 : 16 Январь 2012, 22:10:58 »
Ну ты перенаправь эхо хотя бы в файл. Хотя бы что-то будет видно.
$? - код завершения
-eq - оператор сравнения

Твой скрипт пингует гугл и если код завершения этого пинга удачный, то "OK", иначе ./expect

Цитировать
Может этого ненандо было дописывать:
только не говори, что ты это руками дописывал...

Что у тебя сейчас в /etc/crontab?
« Последнее редактирование: 16 Январь 2012, 22:13:21 от truegeek »

Оффлайн Karl500

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2240
    • Просмотр профиля
Re: Cron - неработает.
« Ответ #7 : 16 Январь 2012, 22:19:09 »
Формат файлов /etc/cron.d/* и файла, редактируемого по команде crontab -e различны. Вы это учитываете?

Оффлайн truegeek

  • FPGA Designer
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4214
  • аЦкий схемотехник
    • Просмотр профиля
Re: Cron - неработает.
« Ответ #8 : 16 Январь 2012, 22:23:01 »
Учитываем, я хочу понять для начала - где чего правлено)

Оффлайн Karl500

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2240
    • Просмотр профиля
Re: Cron - неработает.
« Ответ #9 : 16 Январь 2012, 22:29:02 »
Просто в первом посте ТС писал, что файл редактировал командой crontab -e, а содержимое было не в том формате...

Оффлайн truegeek

  • FPGA Designer
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4214
  • аЦкий схемотехник
    • Просмотр профиля
Re: Cron - неработает.
« Ответ #10 : 16 Январь 2012, 22:35:08 »
Я почему-то решил что ТС сделал cat /etc/crontabНо потом меня смутили его слова, я поэтому и переспросил, посмотрим, что ТС скажет.

Оффлайн Karl500

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2240
    • Просмотр профиля
Re: Cron - неработает.
« Ответ #11 : 16 Январь 2012, 22:37:13 »
Посмотрим, да. Но судя по первому посту у него в файл смесь обоих вариантов.

Оффлайн truegeek

  • FPGA Designer
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4214
  • аЦкий схемотехник
    • Просмотр профиля
Re: Cron - неработает.
« Ответ #12 : 16 Январь 2012, 22:37:46 »
Чего я и ожидаю )))

Оффлайн Genal

  • Автор темы
  • Новичок
  • *
  • Сообщений: 16
    • Просмотр профиля
Re: Cron - неработает.
« Ответ #13 : 17 Январь 2012, 11:36:49 »
Так, люди Ваш диалог меня запутал.
truegeek:
Кстати, что делает скрипт и "eq" я знаю, я ж его для этого и делал не от балды, я просто написал что непонял как $? вытягивает именно количество потеряных пакетов в пинге, ведь выдаеться нетолько это.

truegeek
Да єто я дописал руками. Как сделал: открыл sudo crontab -u root -e - оно сразу открываеться в редакторе, там закоментировано только обьяснение, никаких $PATH SHell небыло, ну вначале я прописал просто под свой скипт и под Эхо так: */2 * * * * /bin/bash /home/genal/test

Оно неисполняеться, смотрю, пишеться (везде в интернете, в примерах) что файл должен иметь такой вид:
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

17 *    * * *   root    cd / && run-parts –report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts –report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts –report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts –report /etc/cron.monthly )

Ну, я дописал это еще. Подругому как sudo crontab -u root -e - я ничего нередактировал, в директории незаходил (хотя я думаю в файле кронтаб именно так и запомнилось)

Ок, эхо попробую седня вечером перенаправить, я думал все же что на екран выпадет текст с эхо)

После внесения изменений и выхода с редактора пишеться что в кроне новый инстал какойто, также про крон пишеться что job running - он запущен.

Спасибо.

Оффлайн ArcFi

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 15194
    • Просмотр профиля
    • aetera.net
Re: Cron - неработает.
« Ответ #14 : 17 Январь 2012, 12:41:56 »
Оно неисполняеться, смотрю, пишеться (везде в интернете, в примерах) что файл должен иметь такой вид:
Вы путаете пользовательский crontab с системным /etc/crontab.
Их форматы несколько отличаются.
Пользовательский crontab по дефолту пуст.

 

Страница сгенерирована за 0.065 секунд. Запросов: 24.