Комментарии

Галерея

Опрос

Из каких стран идет больше всего спама, попыток взлома на ваши серверы?:

бэкап wget+cpanel+http+ssl+виртуальный хостинг

Аватар пользователя maximum
     

Замучался каждый день вручную через cpanel забирать бэкапы с хостинга, решил как то упростить это муторное занятие. Набросал несколько строк скрипта, может будет кому нибудь полезен
В самом скрипте достаточно все разжовано, так что лишних комментариев не будет

#!/bin/sh
#дата бекапа, далее будет подставляться в имя директории бекапа $date
date=`date "+%Y_%m_%d"`;
#вот тут идет извращение с датой, т.к. нам предстоит забирать бекапы которые будут содержать, число, месяц, год бекапа, пример (backup-1-2-2009.tar.gz)
#!подсказал xeen! долго решал вопрос с гребанным 0 в дате или месяце, но все таки нашел решение sed 's/^[ ]*//'` - вырезает пробел в начале строки,
#sed 's/^[0]*//'` - вырезает 0 (сцуко) вначале строки
d=`date "+%e" | sed 's/^[ ]*//'`;
m=`date "+%m" | sed 's/^[0]*//'`;
y=`date "+%Y"`;
echo "-=BackUp script starting [$date]=-";
#создаем директории для резервирования копий
mkdir /data/Files/backup/hosting_backup/$date
sync
#переходим в нужную директорию
#гы-гы, по другому я хз как это делается...
if cd /data/Files/backup/hosting_backup/$date ; then : 
fi
sync
#теперь мы заюзаем wget
#Обратите внимание, файлы будут забираться через HTTP SSL с cpanel, пишем команду --no-check-certificate (не проверять подлинность сертификата)
#далее идет авторизация через (!)HTTP
#так же следует обратить внимание на пароль, в моем случае в пароле содержатся спецсимволы, например (_-#;!&?), мы заключим их в \\
#т.е. это будет выглядеть примерно так --http-password=pass\;\word
#тут тоже изврат, как это сделать проще я не знаю, -i указываем файл с нужными нам урл'ами
#--wait указываем сколько секунд ждать после загрузки файла (полезно если сервер настроен на ограниченное кол-во скачиваний с одного ip адреса)
wget -i /data/Files/backup/hosting_backup/urls.txt --wait=10 --no-check-certificate --http-user=логин --http-password=пароль https://site.ru:порт/getbackup/backup-site.ru-$m-$d-$y.tar.gz
sync
sleep 1
echo "-=BackUp script stopping [$date]=-";
exit 0 

содержимое файла urls.txt

https://site.ru:порт/getsqlbackup/forum.sql.gz
https://site.ru:порт/getsqlbackup/site.sql.gz
https://site.ru:порт/getsqlbackup/wiki.sql.gz
https://site.ru:порт/getaliasbackup/aliases-site.ru.gz
https://site.ru:порт/getaliasbackup/aliases-wiki.site.ru.gz
https://site.ru:порт/getaliasbackup/aliases-forum.site.ru.gz
https://site.ru:порт/getfilterbackup/filter-site.ru.gz
https://site.ru:порт/getfilterbackup/filter-wiki.site.ru.gz
https://site.ru:порт/getfilterbackup/filter-forum.site.ru.gz

P.S Первый вариант скрипта был неудачным, после выполнения которого мне пришлось общаться с технической поддержкой насчет разбана меня на сервере Ламер
Скрипт немного заморочен на мой взгляд, может кто то подскажет как можно сделать иначе...

Хороший скрипт =)

Аватар пользователя porese

Макси, так тебя из за этого скрипта забанили? LOL LOL LOL LOL LOL LOL

Аватар пользователя maximum

да Гитара