--=XliN=-- пишет:tar -czf ${BACKUP_DATABASE}parus-"$date".tar.gz $SOURCE_DATABASE
ну тут я-бы всё в кавычки заключил "${BACKUP_DATABASE}parus-$date.tar.gz"
но это мелочь - хуже, что код ошибки не проверяется - на устройстве может кончится место и т.д.. Тут есть смысл дописать || return $? в конец строки. Читается "или бекап создался успешно, или мы выходим с кодом $?"
--=XliN=-- пишет:cp ${BACKUP_DATABASE}parus-"$date".tar.gz $COPY_DIR
это копия на удалённом диске? логично. Только тоже может не получится. Я тут проверяю, есть-ли вообще этот второй диск? может я его под подушку положил? с другой стороны, если я могу его положить под подушку, у меня могут его и украсть. Потому бекап нужно зашифровать программой GnuPG, публичным ключём. При этом проверяяя коды ошибок конечно.
--=XliN=-- пишет:echo "`date` Backup Parus database in $COPY_DIR successfully" >> $log_file
тут `date` не соответствует $date. лучше-бы
`date -d"$date" +%Y-%m-%d`
--=XliN=-- пишет:if [[ ! -d $BACKUP_DATABASE || ! -d $COPY_DIR ]]; then echo "`date` WARNING: Папки для резервного копирования не найдены и будут созданы автоматически!" >> $log_file mkdir -p $BACKUP_DATABASE mkdir -p $COPY_DIR fi
я так пишу:
[ -d $BACKUP_DATABASE ] || mkdir -p $BACKUP_DATABASE
или
[ -d $BACKUP_DATABASE ] || mkdir -pv $BACKUP_DATABASE >>$log_file
--=XliN=-- пишет:if [[ ! $(date +%w) = 6 && ! $(date +%w) = 0 ]]; then
тут тоже дата не согласована. но это намного хуже - она может изменится. и рано или поздно эта мина рванёт...
ЗЫЖ не вижу проверки от повторного входа. 2 скрипта сразу - это гарантированный баг.
Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)