Проблема с cron

Тема в разделе "*nix", создана пользователем ionoff, 7 авг 2009.

  1. ionoff Активный участник

    Регистрация:
    23 сен 2007
    Сообщения:
    244
    Симпатии:
    114
    Провайдер:
    Дом.ru
    Подскажите кто знает в чем проблема.
    команда
    mysqldump -uLOGIN -pPASS -f --databases NAME | gzip -c > ~/`date "+%Y-%m-%d"`.gz
    из командной строки выполняется нормально и создает бекап базы

    а если тоже самое вставить в cron то вылетают ошибки при выполнении

    /bin/sh: -c: line 0: unexpected EOF while looking for matching ``'
    /bin/sh: -c: line 1: syntax error: unexpected end of file
     
  2. papenkin Администратор Команда форума

    Регистрация:
    27 фев 2008
    Сообщения:
    1.344
    Симпатии:
    414
    Провайдер:
    Энлинк
    Скорее всего проблема в интерпретаторе.Попробуй так:
    Код:
    #!/bin/sh
    mysqldump -uLOGIN -pPASS -f --databases NAME | gzip -c > ~/$(date +%Y-%m-%d).gz 
    
    Но я бы на твоем месте сделал бы так:
    Код:
    #!/bin/sh
    DATE=$(date +%Y%m%d)
    BASE=/path/to/backup
    FILE="$BASE/${DATE}.sql.gz"
    export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/root/bin
    mkdir -p "$BASE"
    mysqldump --password='PASS' --opt forum | gzip -9 > "$FILE"
    
     
  3. ionoff Активный участник

    Регистрация:
    23 сен 2007
    Сообщения:
    244
    Симпатии:
    114
    Провайдер:
    Дом.ru
    Да проблема была в интерпритаторе.

    сделал

    #! /bin/bash
    mysqldump -uLOGIN -pPAS -f --databases NAME | gzip -c > ~/`date +%Y-%m-%d`.gz
     
  4. WTakET Местный

    Регистрация:
    13 июл 2009
    Сообщения:
    1.775
    Симпатии:
    822
    Провайдер:
    Энлинк
    да и не понятно зачем вообще, формат даты, надо было в кавычки брать :)
    кстати, "полная дата" %Y-%m-%d , также %F
     
  5. radiow Гость

    Не пойму в чем прикол. Поставил Centos 6.2, начал настраивать, дошел до добавления задач в крон и тут опа..... /etc/crontab отсутствует. Как так?
    Вот что показывает find:

    [root@host ~]# find / -name cron*
    /var/log/cron
    /selinux/class/passwd/perms/crontab
    /selinux/booleans/cron_can_relabel
    /usr/share/selinux/devel/include/services/cron.if
    /usr/share/vim/vim72/syntax/crontab.vim
    /etc/cron.daily
    /etc/cron.d

    На систему кроме всяких PHP, апачей и БД из стандартных репозиториев ничего не ставилось, ковыряния не производились...
     
  6. WTakET Местный

    Регистрация:
    13 июл 2009
    Сообщения:
    1.775
    Симпатии:
    822
    Провайдер:
    Энлинк
    radiow, ну man crond же
     
  7. radiow Гость

    [root@host ~]# man crond
    No manual entry for crond
    :biggrin:
     
  8. WTakET Местный

    Регистрация:
    13 июл 2009
    Сообщения:
    1.775
    Симпатии:
    822
    Провайдер:
    Энлинк
    radiow, ну а он у вас установлен?
    rpm -qa | grep -i cron
     
  9. radiow Гость

    WTakET, блин, не установлен, хотя проверял и был уверен что установлен. Теперь понятно.
     

Пользователи просматривающие тему (Пользователей: 0, Гостей: 0)