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


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

Автор Тема: Вопросы по Crontab: создание,расположение, запуск программ  (Прочитано 11688 раз)

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

Оффлайн CALL|KA

  • Участник
  • *
  • Сообщений: 100
  • Водитель НЛО
    • Просмотр профиля
Прошу помощи в работе с cron'ом. ОС debian jessy, запускаю sudo crontab -e, прописываю строки

5 * * * * /bin/cp /var/log/auth.log /tmp/a.log && /bin/chmod 777 /tmp/a.log
0 3 * * * /bin/эрэм эрэф /home/valera/backup/*
1 3 * * * /usr/bin/mysqldump -v -u root -1111111 --add-drop-table --add-locks --create-options --single-transaction --extended-insert --all-databases | gzip -c  > /home/valera/backup/forum_database_backup_`date "+\%Y-\%m-\%d"`.gz
2 3 * * * /usr/tar -cpvf /home/valera/backup/forum_files_backup_`date "+\%Y-\%m-\%d"`.tar /var/www


1) Копируем лог и даем права всем на чтение.
2) Очищаем папку.
3) Сохраняем дамп БД.
4) Архивируем файлы форума.

Отрабытавает только первая команда, и то раз в час 0_о
Дальнейшие не работают.
Уже и пути к приложениям полные прописал, строку пустую после последней комманды оставил, не работает. Хотя с консоли вручную выполняется все нормально. Пробовал в /etc/crontab добавлять вышеприведенные комманды, все рано не работает.

С первой разобрался, чтоб запускалась каждые 5 мин необхожимо вместо 5 * * * * писать */5 * * * *, как можно было так ошибиться...Если бы в лог не глянул, что раз в час отрабатывает, так бы и маялся))
« Последнее редактирование: 05 Января 2016, 14:07:38 от CALL|KA »

Оффлайн CALL|KA

  • Участник
  • *
  • Сообщений: 100
  • Водитель НЛО
    • Просмотр профиля
---------------------
При добавлении в /etc/crontab команды не выполнялись.
После использования sudo crontab -e все работает.

Оффлайн piyavking

  • Активист
  • *
  • Сообщений: 743
  • никогда так не было, чтобы никак не было
    • Просмотр профиля
    • Пиявкин
CALL|KA,
Да, там какая-то заморока с прямым редактированием кронтаба.
крайний LTS Netboot, awesomeWM, urxvtd, firefox, vim/gvim, mpv/smplayer, linux-lowlatency, jack, guitarix, lmms, ardour, mednafen, dsda-doom

Оффлайн bagfinder

  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Господа, я, видимо, люто туплю и не вижу очевидного. Буду рад, если подскажете.

Простейшая задача - ребутать машину по расписанию.

1.Создал файл shutdown.sh в /etc
2.echo "shutdown -r now" >shutdown.sh
3.chmod +x shutdown.sh
4.crontab -e добавил 41 22 * * * /etc/shutdown.sh (для теста, было 22:39), кронтаб сохранился, не ругнулся

В 22:41 ничего не произошло.

cat /var/log/syslog
Mar 15 22:39:57 190 crontab[2019]: (cto) END EDIT (cto)
Mar 15 22:40:01 190 cron[528]: (cto) RELOAD (crontabs/cto)
Mar 15 22:41:01 190 CRON[2032]: (cto) CMD (root /etc/shutdown.sh)
Mar 15 22:41:01 190 CRON[2031]: (CRON) info (No MTA installed, discarding output)

Давал 777 на скрипт, добавлял root перед путём в кронтабе, указывал полный путь до shutdown (/sbin/shutdown), ничего не заставило задание работать.

В чем же косяк?

Оффлайн piyavking

  • Активист
  • *
  • Сообщений: 743
  • никогда так не было, чтобы никак не было
    • Просмотр профиля
    • Пиявкин
4.crontab -e добавил 41 22 * * * /etc/shutdown.sh (для теста, было 22:39), кронтаб сохранился, не ругнулся

может быть, раз уж речь о ребуте, не "crontab -e", а "sudo crontab -e"?
крайний LTS Netboot, awesomeWM, urxvtd, firefox, vim/gvim, mpv/smplayer, linux-lowlatency, jack, guitarix, lmms, ardour, mednafen, dsda-doom

Оффлайн bagfinder

  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Ну естественно  :uglystupid2:
Благодарю, работает.

Пользователь решил продолжить мысль 15 Марта 2016, 23:16:13:
Если уж на то пошло, вопрос вдогонку.
Как можно безопасно добавлять задания без использования crontab -e?
Дело в том, что нужна однострочная команда, чтоб расшарить ее на множество машин. Нужно ли добавлять в файл задания EOF или перевод строки? Если пользоваться echo с перенаправлением вывода на файл крона, например. Или все можно сделать проще?
« Последнее редактирование: 15 Марта 2016, 23:16:13 от bagfinder »

Оффлайн piyavking

  • Активист
  • *
  • Сообщений: 743
  • никогда так не было, чтобы никак не было
    • Просмотр профиля
    • Пиявкин
крайний LTS Netboot, awesomeWM, urxvtd, firefox, vim/gvim, mpv/smplayer, linux-lowlatency, jack, guitarix, lmms, ardour, mednafen, dsda-doom

Оффлайн AndreyNag

  • Новичок
  • *
  • Сообщений: 45
    • Просмотр профиля
Здравствуйте.
Ломаю голову в поиске причины почему не отрабатывает скрипт из cron.
sudo crontab -l (до этого безуспешно пытался организовать периодический запуск от имени пользователя)
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h  dom mon dow   command
30,32,34,36,38,40 * * * * root2pool /home/root2pool/start.sh
#
start.sh
#!/bin/bash
echo `start date "+%Y-%m-%d %H:%M:%S"` >> start.log
exit 0
В журнале записи об успешных стартах в назначенные моменты времени есть, но результатов в виде файлов нет. В cron`e менял root2pool на root, но безуспешно. Вручную скрипт выполняется на ура.
/var/log/syslog
Mar 29 21:38:01 che2pool CRON[9265]: (root) CMD (root2pool /home/root2pool/start.sh)
Mar 29 21:38:01 che2pool CRON[9264]: (CRON) info (No MTA installed, discarding output)
Спасибо за внимание.

Оффлайн piyavking

  • Активист
  • *
  • Сообщений: 743
  • никогда так не было, чтобы никак не было
    • Просмотр профиля
    • Пиявкин
echo `start date "+%Y-%m-%d %H:%M:%S"` >> start.log

для start.log надо указать путь.

echo `start date "+%Y-%m-%d %H:%M:%S"` >> /путь/к/start.log
« Последнее редактирование: 29 Марта 2016, 22:06:54 от piyavking »
крайний LTS Netboot, awesomeWM, urxvtd, firefox, vim/gvim, mpv/smplayer, linux-lowlatency, jack, guitarix, lmms, ardour, mednafen, dsda-doom

Оффлайн AndreyNag

  • Новичок
  • *
  • Сообщений: 45
    • Просмотр профиля
для start.log надо указать путь.
echo `start date "+%Y-%m-%d %H:%M:%S"` >> /путь/к/start.log
Не помогло.
Mar 29 22:22:01 che2pool CRON[10020]: (root) CMD (root2pool /home/root2pool/start.sh)
Mar 29 22:22:01 che2pool CRON[10019]: (CRON) info (No MTA installed, discarding output)
а результата нет.

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6739
  • 20% Cooler
    • Просмотр профиля
AndreyNag,
в кроне, в конце команды добавьте 2> /tmp/error.cron
и смотрите, что в этот файл прилетело.

то есть, ваша запись в кронтаб должна выглядеть так
30,32,34,36,38,40 * * * * root2pool /home/root2pool/start.sh 2> /tmp/error.cron
ну а потом смотрите, что есть в файле
cat /tmp/error.cron

« Последнее редактирование: 30 Марта 2016, 02:10:35 от ALiEN175 »
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн Azure

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
echo `start date "+%Y-%m-%d %H:%M:%S"`
А что это по Вашему должно выполнить? У меня например в stderr пишетstart: Unknown job: date
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн piyavking

  • Активист
  • *
  • Сообщений: 743
  • никогда так не было, чтобы никак не было
    • Просмотр профиля
    • Пиявкин
кстати да.

может быть не "start date", а просто "date".
крайний LTS Netboot, awesomeWM, urxvtd, firefox, vim/gvim, mpv/smplayer, linux-lowlatency, jack, guitarix, lmms, ardour, mednafen, dsda-doom

Оффлайн AndreyNag

  • Новичок
  • *
  • Сообщений: 45
    • Просмотр профиля
echo `start date "+%Y-%m-%d %H:%M:%S"`
А что это по Вашему должно выполнить? У меня например в stderr пишетstart: Unknown job: date
У меня, в случае ручного запуска, в журнал пишет текст: "start дата и время в формате".

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6739
  • 20% Cooler
    • Просмотр профиля
AndreyNag,
c кавычкой ошиблись
echo start `date "+%Y-%m-%d %H:%M:%S"`
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

 

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