Создать бэкап в zip

Для восстановления sql mysql --user="root" --password='123' --database="your_database_name" < path/to/your/file.sql #! /bin/bash # sh /root/create_backup.sh # exit 0 # Файл для периодического создания бэкапов в zip project_name="pr" max_old_backups=5 sql_bd_name="" sql_login="" sql_password="" project_dir="/var/www/pr" backups_dir="/root/backups_${project_name}" datetime=$(date +"%Y-%m-%d_%H-%M-%S") new_backup="${backups_dir}/${datetime}.zip" tmp_sql="${backups_dir}/tmp_${datetime}.sql" # Если нет этой папки, то создаём if [ ! -d $backups_dir ]; then mkdir -p $backups_dir fi # Очистка от старых # Получаем количество файлов в папке file_count=$(ls -1 $backups_dir | wc -l) if [ $file_count -gt $max_old_backups ]; then # Если файлов больше # Сортируем файлы по времени изменения и берём только последние files_to_delete=$(ls -1t $backups_dir | tail -n $(($file_count - $max_old_backups))) # Удаляем старые файлы for file in $files_to_delete; do rm "${backups_dir}/${file}" done fi echo "Create tmp_sql" && mysqldump -u $sql_login -p$sql_password $sql_bd_name > $tmp_sql && echo "tmp_sql in zip" && zip -q $new_backup $tmp_sql && echo "remove tmp_sql" && rm $tmp_sql && #echo "project in zip" && #zip -qr $new_backup $project_dir -x /var/www/pr/public/storage/* -x /var/www/pr/public/uploads/* -x /var/www/pr/storage/app/* && du -h $new_backup && echo "ready ${new_backup}"