Скрипт Crontab не сохраняет результат в файл

Я хочу сделать резервную копию базы данных каждый день, и я написал сценарий

my.cnf

[client]
host=locahost
user=root
password='pw'

script.sh

#!/bin/bash
/bin/mysqldump --defaults-file=/home/wasifkhalil/my.cnf --set-gtid-purged=OFF testing_dump > /home/wasifkhalil/db_backups/$(date +"%Y-%m-%d_%H%M")_crm_backup.sql
exit

теперь, когда я запускаю этот скрипт

[root@instance-main db_backups]# /home/wasifkhalil/script.sh

он работает идеально, и я вижу файл sql в папке, но когда я запускаю его в crontab он не работает, что я делаю неправильно? (для тестирования я установил 16-ю минуту каждого часа)

16 * * * * root /home/wasifkhalil/script.sh

это версия Cent OS im на

centos-release-7-3.1611.el7.centos.x86_64
20
задан Wasif Khalil
19.04.2023 11:01 Количество просмотров материала 3198
Распечатать страницу

1 ответ

Если вы хотите запустить скрипт bash от имени root, вам нужно отредактировать crontab root вот так: 16 * * * * /bin/bash /path/to/script.sh

пояснение:

16 * * * * = At minute 16th of every hour.
/bin/bash = shell interpretor.
/path/to/script.sh = path to the script that you need to schedule.
2
отвечен Alex 2023-04-20 18:49

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх