Crontab для резервного копирования каталога

Итак, у меня это в моем crontab -e

0 0 * * * /opt/www/backup.sh

И в файле у меня есть следующее:

 #!/bin/bash FILENAME=$(date +%Y%m%d).tar.gz tar zcf backups/$FILENAME f 

Файл находится в /opt/www

Но резервная копия вообще не создается. Если я запустил backup.sh вручную, тогда он запустится и создаст резервную копию каталога f как он должен это сделать.

Я запускаю Debian 7.8.

  • Что означает '> / dev / null 2> & 1' в этой статье основы crontab?
  • Как запустить скрипт вне домашнего каталога через cron
  • Когда будет запущен этот cron
  • Cron не работает со сценарием оболочки
  • Значение записи «* * / 1 * * *» cron?
  • Выполнять параллельные параллельные параллели
  • Можно ли планировать выполнение задания cron каждые две недели?
  • cron найдет определенные команды на PATH, но не другие
  • 2 Solutions collect form web for “Crontab для резервного копирования каталога”

    Текущий (рабочий) каталог, вероятно, не установлен в / opt / www при запуске cronjob. Вы можете установить его в своем скрипте backup.sh перед тир tar... по:

     cd /opt/www 

    или вы можете использовать полный путь в линии tar:

     tar zcf backups/$FILENAME /opt/www/f 

    Я также могу посоветовать использовать полный путь для backups/$FILENAME

    Когда corntab запускает код, он запускает его из относительного пути, начиная с вашего домашнего каталога.

    Простое исправление: вы можете использовать абсолютный путь к каталогу (начиная с / ) в вашем скрипте.

    Другой метод: используйте «path_dir» в вашем коде для переносимости.

     path=$(readlink -f $0) path_dir=${path%/*} 
    Interesting Posts

    Существует ли типичный способ передачи пароля в файл Systemd Unit?

    Клавиша USB не распознается в разделе «Использование устройства»

    В чем разница в получении команды get командой `commandand` и $ (команда) в Shell?

    Создание субдомена для Samba для использования url вместо ip-адреса

    Подскажите пароль sudo и программно повысите привилегию в скрипте bash?

    Как определить, установлен ли AIX 5.3 perl?

    Linux Создать пользователя со специальными параметрами входа в систему

    Многоплатформенный веб-эмулятор терминала

    Как найти и заменить текст во всех открытых файлах с помощью geany?

    Резервное копирование и восстановление учетной записи пользователя системы

    В чем разница между bcl и expr?

    Как создать маршрутизатор для беспроводных сетей?

    Как подключиться из одного экземпляра гостевой комнаты VM к другому экземпляру виртуальной машины VM

    Как применить патч в OpenBSD?

    Доверенная файловая система для отказа автомонтирования

    Linux и Unix - лучшая ОС в мире.