В логах /var/log/cron есть запись, что крон вроде бы и запускает этот скрипт:
Код: Выделить всё
Apr 14 10:10:00 store /usr/sbin/cron[1501]: (root) CMD (/scripts/archivelog.sync)
Код: Выделить всё
*/5 * * * * root /scripts/archivelog.sync
Вручную все нормально отрабатывает.
Делал вот так, чтобы посмотреть что он выкидывает при запуске скрипта:
Код: Выделить всё
*/5 * * * * root /scripts/archivelog.sync >> /var/log/archive.log
Отправлено спустя 9 минут 35 секунд:
Вот сам скрипт:
Код: Выделить всё
#!/bin/sh
echo "--sync with srv01--"
rsync -avz -e "ssh -i /root/.ssh/cert -l oracle" 10.10.54.8:/opt/ora10g/archive /data/backup/archivelogs/srv01/
echo "--sync with srv02--"
rsync -avz -e "ssh -i /root/.ssh/cert -l oracle" 10.10.54.9:/opt/ora10g/archive /data/backup/archivelogs/srv02/
echo "--sync with srv03--"
rsync -avz -e "ssh -i /root/.ssh/cert -l oracle" 10.10.54.10:/opt/ora10g/archive /data/backup/archivelogs/srv03/
chown -R backup:backup /data/backup/archivelogs
Вопрос решился, я не обратил внимание, что rsync устанавливается в /usr/local/bin, про который cron не знает.
Поэтому просто в скрипте прописал полный путь вида /usr/local/bin/rsync и все заработало.