Загрузка бэкапов по ftp

Вопросы касающиеся настройки, функционирования виртуальных серверов
Правила форума
1. Один вопрос - одна тема. Не надо задавать в той же теме другие вопросы.
2. Не пишите в чужих темах, если ваша проблема не имеет отношения к обсуждаемой.
3. Давайте полное описание проблемы - имя сайта, имя сервера, учётная запись, способ воспроизведения, скриншот ошибки.
4. Пароли выкладывать в форум - НЕ НАДО
lissyara
Site Admin
Сообщения: 6340
Зарегистрирован: 2009-09-19, 22:04:41

Загрузка бэкапов по ftp

Сообщение lissyara » 2020-09-01, 18:28:26

простейший скрипт бэкапа с загрузкой по ftp

Код: Выделить всё

cat /root/scripts/backup.sh
#!/bin/sh

dir="/home/backup"

# ftp functions
. /root/scripts/ftp.sh

# delete old
rm -rf $dir/`date -v-22d +%Y-%m-%d`
# new
dir="$dir/`date -v-1d +%Y-%m-%d`"
# create
mkdir -p $dir
# dump db's
mysql --execute="SHOW DATABASES;" | grep -v Database |
{
while read db
do
        mysqldump --skip-extended-insert $db 2>/dev/null| gzip > $dir/$db.sql.gz
        cd $dir && ftp_upload $db.sql.gz

done
}
# archive files, saturday only (too long archivation process)
if [ `date +%w` = 6 ]
then
        cd $dir && tar -czf user_name.tar.gz /home/user_name
        #cd $dir && ftp_upload user_name.tar.gz
fi
функции

Код: Выделить всё

cat /root/scripts/ftp.sh
#!/bin/sh

ftp_host=bkp1.host-food.ru
ftp_user=bkp123456
ftp_pass=SuperMegaSecretPassword 

# now, date is
year=`date +%Y`
month=`date +%m`
day=`date +%d`

# functions
ftp_upload(){
        backup_file=$1
        /usr/bin/ftp -inv -P 21 <<EOF
        open $ftp_host
        user $ftp_user $ftp_pass
        binary
        mkdir $year
        cd $year
        mkdir $month
        cd $month
        mkdir $day
        cd $day
        put $backup_file $new_file_name
        bye
EOF
}
удаления бэкапов на ftp не предусмотрено - если нужен подобный функционал - лучше Bacula использовать
Убей их всех! Бог потом рассортирует...

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги нашей хостинговой компании

Хостинг HostFood.ru

Тарифы на хостинг, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM), от 189 рублей: https://www.host-food.ru/tariffs/virtualny-server-vps/
Тарифы на выделенные сервера (Dedicated Server), от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU): https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах, от 110 рублей: https://www.host-food.ru/domains/
Часто задаваемые вопросы по хостингу: https://www.host-food.ru/faq/
Вопросы по доменам: https://www.host-food.ru/faq/domains.questions/