Скрипт бэкапа на любое облако


Скрипт бэкапа на любое облако

Сообщение k0ttee »

Гляжу на Яндекс-диск и вижу 110 ГБ доступных, которые никогда не заполнялись даже на треть. Туда подсасываются данные с компа и смартфона, но взгляните на диск компа. За вычетом ОС и софта, это получается немного.
как сделать бесплатный бэкап VDS - место.png
как сделать бесплатный бэкап VDS - место.png (9.71 КБ) Просмотров: 847

Бэкап хостера VS свой бэкап

Цена бэкапов у хостера форума начинается 628р в месяц (за 100 ГБ резервного места). Если бы я был новичком, который тратит на блог $12 в год, годовая цена в размере 7536р была бы немедленно названа дичь-птицей взлетающей в космос.

Вам не кажется, коллеги, что 7536р потянет на бюджет для еще одного сайта?

Бэкап хостера - даешь бабло, нажимаешь кнопку, едешь дальше
Свой бэкап - как хочешь, так и изголяешься, хоть бери сразу два VDS и зеркалируй

Нужно ли делать резервные копии сайтов?


Говорят сисадмины делятся на тех, кто делает бэкап и на тех кто уже делает бэкап. Есть и альтернативное мнение - бэкапы для трусов.

А вы видели кто и как обслуживает серверные стойки?
RuSeo [media]


А что же Яндекс-диск?


Яндекс дает терминальный клиент, который можно освоить за пару часов. Но делать дампы баз данных он не умеет, только синхронизировать файлы из указанной директории.

В общем, даже используя официальный клиент, все равно придется колхозить.

Я предлагаю налабать скрипт, который:
- создаст архивы выбраннаых вами директорий
- создаст архив со всеми базами данных
- зальет архивы на любое облачное хранилище

Скрипт для бэкапов на любое облачное хранилище


А много ли кода придется написать? 15 строчек. :D
А если базы данных не нужны? тогда 11 строчек. :-D

Код уже написан, осталось самое главное - прокомментировать код.

как сделать бесплатный бэкап VDS - код.png
как сделать бесплатный бэкап VDS - код.png (28.27 КБ) Просмотров: 847


Код: Выделить всё
#!/bin/bash
#облако (будет работать не только для яндекса)
THE_CLOUD="https://webdav.yandex.ru/"
#логин и пароль к облаку
CLOUD_USER="login"
CLOUD_PASS="password"

#логин и пароль для MySql
MYSQL_USER="root"
MYSQL_PASS="password"

#какие директории архивировать
FS_FOLDERS="/etc /root /home /var/www"

#имя сервера
SERVER_NAME="server1" #имя сервера = вписать ручками
#или-или
SERVER_NAME=$(hostname -s) #имя сервера = взять имя машины

TIME=`date +%Y-%m-%d` #время создания копии: год-месяц-день
#куда локально архивировать файлы
FS_FILE=/tmp/$SERVER_NAME-files.$TIME.tar.gz
#куда локально архивировать базы данных
MYSQL_FILE=/tmp/$SERVER_NAME-mysql.$TIME.sql.gz

#архивирование директорий
tar -czf $FS_FILE $FS_FOLDERS
#архивирование баз данных
mysqldump -u $MYSQL_USER --password=$MYSQL_PASS --all-databases | gzip > $MYSQL_FILE

#заливка в облако
curl --user $CLOUD_USER:$CLOUD_PASS -T "{$FS_FILE,$MYSQL_FILE}" $THE_CLOUD

#удаление локальных архивов
unlink $FS_FILE
unlink $MYSQL_FILE

Сбор на вискас
btc: 3Hq7X9CosVftRFPqWis1Dkk5MdtM1u6jj9
ltc: LTsZ8f261j5qS5QUjn7ihzr37hziTvXeA4

За это сообщение автора k0ttee поблагодарили: 2
Aman, birds
Аватара пользователя
k0ttee

 
Группа: Специалист ruSEO
Сообщения: 12039
Рефералы: 2
Зарегистрирован: 02 май 2014
Средств на руках: 5.95
Re: Скрипт бэкапа на любое облако

Сообщение Aman »

В данном случае запаска будет браться из папки www ? Типа можно указать конкретный адрес сайта .
Аватара пользователя
Aman

 
Группа: Специалист ruSEO
Сообщения: 4360
Зарегистрирован: 13 июл 2011
Откуда: Федерация
Средств на руках: 0.00
Статус: Оптимист
Спонсор
 
Re: Скрипт бэкапа на любое облако

Сообщение k0ttee »

из папки www ?

Это для копирования "всего куда направить".

Пример в шапке бэкапит файлы из директорий:
- где конфиги /etc
- директория /root
- домашняя пользовательская директория /home
- директория с сайтами (у FreeBSD по умолчанию она не там) /var/www

И все базы данных дампит в один архив.

Добавлено спустя 14 часов 36 минут 22 секунды:
Чтобы повесить это на Cron, сначала выставляем на сервере часовй пояс.
Код: Выделить всё
sudo dpkg-reconfigure tzdata

И проверить текущее время командой.
Код: Выделить всё
date


Теперь можно вешать задачу на Cron.
Сбор на вискас
btc: 3Hq7X9CosVftRFPqWis1Dkk5MdtM1u6jj9
ltc: LTsZ8f261j5qS5QUjn7ihzr37hziTvXeA4

За это сообщение автора k0ttee поблагодарил:
birds
Аватара пользователя
k0ttee

 
Группа: Специалист ruSEO
Сообщения: 12039
Рефералы: 2
Зарегистрирован: 02 май 2014
Средств на руках: 5.95
Re: Скрипт бэкапа на любое облако

Сообщение Tehnik »

Я обычно делаю бекап на флешку, в ноуте втыкаю сд карточку и нормально.
Карта маленькая, не мешается, а бекап на автомате или ручками делаю.

Облакам не доверяю, яндексу особенно.
Аватара пользователя
Tehnik

 
Группа: Супермодераторы
Сообщения: 7110
Рефералы: 3
Зарегистрирован: 08 май 2015
Откуда: Русь
Средств на руках: 35.40
Статус: Писатель
Re: Скрипт бэкапа на любое облако

Сообщение k0ttee »

делаю бекап на флешку

Так речь про бэкап сервера, а не домашнего компа... Впрочем, если дома Mac/Linux/FreeBSD, любая unix-подобная система сможет бэкапить данные точно так же.
Сбор на вискас
btc: 3Hq7X9CosVftRFPqWis1Dkk5MdtM1u6jj9
ltc: LTsZ8f261j5qS5QUjn7ihzr37hziTvXeA4
Аватара пользователя
k0ttee

 
Группа: Специалист ruSEO
Сообщения: 12039
Рефералы: 2
Зарегистрирован: 02 май 2014
Средств на руках: 5.95
Re: Скрипт бэкапа на любое облако

Сообщение Tehnik »

Пардон, не всё прочитал верно.
Аватара пользователя
Tehnik

 
Группа: Супермодераторы
Сообщения: 7110
Рефералы: 3
Зарегистрирован: 08 май 2015
Откуда: Русь
Средств на руках: 35.40
Статус: Писатель
Re: Скрипт бэкапа на любое облако

Сообщение k0ttee »

Проходя по "местам былой славы" (в прошлом году дело было) заметил одну очень щекотливую особенность - не хочется держать в тексте скрипта пароль от... всего что на яндексе.

Искал варианты чтобы изолировать это безобразие - нашел только возможность запиливать общие папки. В итоге - завел я отдельный акк на яндексе для бэкапов (с другим паролем).

Как будет настроение, попробую попинать окружающих на эту тему. Если решение найдется - переселюсь обратно на основной.

P.S: вот неспроста на скрине в шапке такое выражение морды лица ;)
Сбор на вискас
btc: 3Hq7X9CosVftRFPqWis1Dkk5MdtM1u6jj9
ltc: LTsZ8f261j5qS5QUjn7ihzr37hziTvXeA4
Аватара пользователя
k0ttee

 
Группа: Специалист ruSEO
Сообщения: 12039
Рефералы: 2
Зарегистрирован: 02 май 2014
Средств на руках: 5.95
Re: Скрипт бэкапа на любое облако

Сообщение k0ttee »

Больше года прошло, а ежедневные бэкапы так и льются...
Кстати, я храню картинки на GitHub - поэтому все мои сайты с конфигами сервера так и не превышают сотни мегабайт.

Скрипт бэкапа на любое облако.png
Скрипт бэкапа на любое облако.png (5.28 КБ) Просмотров: 642
Сбор на вискас
btc: 3Hq7X9CosVftRFPqWis1Dkk5MdtM1u6jj9
ltc: LTsZ8f261j5qS5QUjn7ihzr37hziTvXeA4

За это сообщение автора k0ttee поблагодарил:
birds
Аватара пользователя
k0ttee

 
Группа: Специалист ruSEO
Сообщения: 12039
Рефералы: 2
Зарегистрирован: 02 май 2014
Средств на руках: 5.95
Re: Скрипт бэкапа на любое облако

Сообщение Zevss »

как запустить всё это добро из под Винды?
Сдается место в подписи.
Аватара пользователя
Zevss

 
Группа: Новичок
Сообщения: 135
Зарегистрирован: 27 сен 2015
Средств на руках: 58.14
Статус: не указан
Re: Скрипт бэкапа на любое облако

Сообщение Ershik »

Zevss, так скрипт то вроде ж на сервере? не? А там UNIX системы обычно, под виндой как правило дороже? да и зачем на винде брать?
Аватара пользователя
Ershik

 
Группа: Бывалый
Сообщения: 605
Зарегистрирован: 15 мар 2011
Средств на руках: -1.80
След.

Вернуться в Железо и софт

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 29

cron