@lolowin32

Как организовать автоматическое резервное копирование баз PostgreSQL через cron?

Добрый день, для создания бэкапа баз Postgres использую команду
pg_dump gitlab > /DATA/backups/gitlab`date +%d-%m-%Y`

Все отрабатывает желаемым образом, но если я помещаю эту команду в cron, то по исполнению этой команды падает письмо с информацией в /var/mail/postgres, с текстом ошибки

/bin/sh: 1: Syntax error: EOF in backquote substitution

Я понимаю что что-то не верно в синтаксисе, но как исправить эту ошибку? Заранее благодарю всех за помощь
  • Вопрос задан
  • 402 просмотра
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега PostgreSQL
Седой и строгий
Читаем man 5 crontab и видим там
Percent-signs (%) in the command, unless escaped with backslash \, will be changed into newline characters, and all data after the first % will be sent to the command as standard input.

То есть знак процента в конфигурационном файле cron воспринимается как символ перевода строки. Чтобы этого не происходило его надо экранировать обратным слэшем.
pg_dump gitlab > /DATA/backups/gitlab`date +\%d-\%m-\%Y`
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы