Биллинговая система Nodeny

Главная категория => Nodeny Plus => Тема начата: Redmen от 29 Декабря 2014, 18:08:29



Название: Backup DropBox Sync
Отправлено: Redmen от 29 Декабря 2014, 18:08:29
Чисто случайно нашёл пример синхронизации с DropBox
Расскажу Вам и себе на память

и так по порядку:
1) регистрируемся на https://www.dropbox.com (https://www.dropbox.com) + логинимся + создадим папку для бекапов /backups
2) на https://www.dropbox.com/developers (https://www.dropbox.com/developers) создаём своё приложение:
   а) App Console => create app
   б) What type of app do you want to create? = >  Dropbox API app
   в) What type of data does your app need to store on Dropbox? = > Files and datastores
   г) Can your app be limited to its own folder? => No My app needs access to files already on Dropbox.
   д) What type of files does your app need access to? =>
      All file types My app needs access to a user's full Dropbox. Only supported via the Core API.
   э) Provide an app name, and you're on your way. => Вводим уникальное имя для приложения => create app
   е) на следуюшей страничке переписываем себе App key *************** и App secret ***************
   щ) приложение не нужно создавать каждый раз! Достаточно перейти по
      https://www.dropbox.com/developers (https://www.dropbox.com/developers) => App Console => имя_вашего_приложения и посмотреть App key и App secret

3)   заходим по SSH на ваш сервак и установим прогу #pkg install net/dropbox-api-command
   запускаем #dropbox-api и вводим ранее сохраненне App key жмак Enter и App secret жмак Enter  вводим  f  жмак Enter
   копируем сгенерированый url, вставляем в браузер и разрешаем ваше приложение
   возвращаемся в SSH и жмакаем Enter
   прога настроена

4)   запускаем #dropbox-api help
   запускаем #dropbox-api help sync изучаем
   запускаем #dropbox-api sync /var/backups dropbox:/backups -d
   радуемся

5)Профит!

Для себя подправил скрипт backup_nodeny.sh >> backup_nodeny2.sh
Код:
#!/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin
passwd='хардпасс'
mysql_cmd='/usr/local/bin/mysql'
mysqldump_cmd='/usr/local/bin/mysqldump'

file=`date "+%d-%m-%Y"`
mkdir -p /var/backups/nodeny
cd /var/backups/nodeny
echo show tables | $mysql_cmd -u root --password=$passwd nodeny | \
    grep -v '^[ZX]2' | grep -v 'traflost' | grep -v '^Tables' | \
    xargs $mysqldump_cmd -R -Q --add-locks -u root --password=$passwd nodeny $1 > nodeny_${file}.sql
tar -c -z -f nodeny_${file}.tar.gz nodeny_${file}.sql
rm -f nodeny_${file}.sql
rm -f nodeny_last.tar.gz
cp nodeny_${file}.tar.gz nodeny_last.tar.gz
chmod 400 nodeny_${file}.tar.gz

find . -name "??-??-20??.tar.gz" -mtime +30 -type f -delete
/usr/local/bin/dropbox-api sync /var/backups/nodeny dropbox:/backups -d

для загрузки из dropbox
Код:
#/usr/local/bin/dropbox-api sync dropbox:/backups /var/backups/nodeny


добавим в крон
Код:
20 4 * * * root sh /usr/local/nodeny/backup_nodeny2.sh

источник:
https://github.com/s-aska/dropbox-api-command/blob/master/README.md (https://github.com/s-aska/dropbox-api-command/blob/master/README.md)



Название: Re: Backup DropBox Sync
Отправлено: k291 от 13 Января 2015, 06:10:30
При запуске #dropbox-api, могут быть ошибки из за отсутствия необходимых модулей:
1) Can't locate DateTime.pl in @INC, решение: #perl -MCPAN -e 'install Bundle::DateTime::Complete'
2) Can't locate Encode/Locale.pm in @INC, решение: #cpan -i Encode::Locale
3) Can't locate URI.pm in @INC, решение: #perl -MCPAN -e 'install Bundle::LWP'
4) Can't locate Mozilla/CA.pm in @INC, решение: cpan -i Mozilla::CA


Название: Re: Backup DropBox Sync
Отправлено: k291 от 13 Января 2015, 06:33:34
Переустановил perl5.14 на perl5.16, после этого в билинге на странице клиента в области Услуги, ip адреса, и ниже перед секцией с текстом смс, пишет Error.
Подскажите как починить? Я предполагаю, что в perl не запустились какие та модуля.


Название: Re: Backup DropBox Sync
Отправлено: sov от 13 Января 2015, 12:12:25
Храню резервные копии на Amazon Simple Storage Services (Amazon S3). Делал по этой статье: Нttp://habrahabr.ru/post/90244/.
Год после регистрации бесплатно, затем - какие-то смешные деньги (на моих объёмах меньше 20 центов в месяц).
Синхронизация - аналогично, одной строкой в скрипте бэкапа.


Название: Re: Backup DropBox Sync
Отправлено: k291 от 13 Января 2015, 19:17:10
Переустановил perl5.14 на perl5.16, после этого в билинге на странице клиента в области Услуги, ip адреса, и ниже перед секцией с текстом смс, пишет Error.
Подскажите как починить? Я предполагаю, что в perl не запустились какие та модуля.
Помогло
Код:
portupgrade -afb
forum.nodeny.com.ua/index.php?topic=2348.0


Название: Re: Backup DropBox Sync
Отправлено: k291 от 19 Января 2015, 23:42:44
Вот команды для резервирования всех необходимых файлов. Если чтото пропустил, прошу дополнить. 
Пока без скрипта. Была задача быстро все сбросить в DropBox.
Код:
/usr/local/bin/dropbox-api sync /usr/local/nodeny dropbox:/backups/server_nodeny/usr/local/nodeny -d	//билинг
/usr/local/bin/dropbox-api put /usr/local/www/apache22/data  dropbox:/backups/server_nodeny/usr/local/www/apache22/ -d //сим линк
/usr/local/bin/dropbox-api put /usr/local/www/apache22/cgi-bin  dropbox:/backups/server_nodeny/usr/local/www/apache22/ -d //сим линк
/usr/local/bin/dropbox-api sync /usr/local/udpxy-1.0.23-9/  dropbox:/backups/server_nodeny/usr/local/ -d
/usr/local/bin/dropbox-api put /usr/local/udpxy.1.0.23-9-prod.tar.gz  dropbox:/backups/server_nodeny/usr/local/ -d
/usr/local/bin/dropbox-api put /usr/local/etc/ipcad.conf  dropbox:/backups/server_nodeny/usr/local/etc/ -d

/usr/local/bin/dropbox-api put /etc/hosts.allow  dropbox:/backups/server_nodeny/etc/ -d
/usr/local/bin/dropbox-api put /etc/pf.conf  dropbox:/backups/server_nodeny/etc/ -d
/usr/local/bin/dropbox-api put /etc/rc.conf  dropbox:/backups/server_nodeny/etc/ -d
/usr/local/bin/dropbox-api put /etc/rc.firewall  dropbox:/backups/server_nodeny/etc/ -d
/usr/local/bin/dropbox-api put /etc/resolv.conf  dropbox:/backups/server_nodeny/etc/ -d
/usr/local/bin/dropbox-api put /etc/unbound  dropbox:/backups/server_nodeny/etc/ -d
/usr/local/bin/dropbox-api put /etc/make.conf  dropbox:/backups/server_nodeny/etc/ -d
/usr/local/bin/dropbox-api put /etc/my.cnf  dropbox:/backups/server_nodeny/usr/local/etc/ -d

/usr/local/bin/dropbox-api sync /var/cron/  dropbox:/backups/server_nodeny/var/ -d

/usr/local/bin/dropbox-api put /tmp/dhcp.cfg  dropbox:/backups/server_nodeny/tmp/ -d

/usr/local/bin/dropbox-api put /boot/loader.conf  dropbox:/backups/server_nodeny/boot/loader.conf -d


Название: Re: Backup DropBox Sync
Отправлено: Redmen от 20 Января 2015, 12:29:44
я для этого сделал в папке /var/backups/ иерархию папок и симлинков;
потом это всё сжал ТАРом и сливаю одной командой в дропбокс

 


Название: Re: Backup DropBox Sync
Отправлено: Andrey Zentavr от 10 Февраля 2015, 00:29:05
mega.co.nz :)


Название: Re: Backup DropBox Sync
Отправлено: ux0qt от 26 Февраля 2015, 15:01:47
А зачем эти команды :
rm -f nodeny_${file}.sql
rm -f nodeny_last.tar.gz
cp nodeny_${file}.tar.gz nodeny_last.tar.gz

Лишняя копия?


Название: Re: Backup DropBox Sync
Отправлено: Redmen от 26 Февраля 2015, 16:17:12
rm -f nodeny_${file}.sql - удалили  sql т.к. он уже в архиве
rm -f nodeny_last.tar.gz - удаляем, потому что щас создадим новый
cp nodeny_${file}.tar.gz nodeny_last.tar.gz - создали новый

дело в том что есть желание сделать скрипт автоустановки Nodeny+,
и чтоб он не искал последнюю РК он скачает nodeny_last.tar.gz и nodeny_files_last.tar.gz
 


Название: Re: Backup DropBox Sync
Отправлено: ser970 от 26 Февраля 2015, 16:25:01
дело в том что есть желание сделать скрипт автоустановки Nodeny+,
и чтоб он не искал последнюю РК он скачает nodeny_last.tar.gz и nodeny_files_last.tar.gz

так что ли ?

правда под 50
кроме серверов (файлы которые указаны в конфиге бекапа+ базы)
еще и со всего остального сливается...


Название: Re: Backup DropBox Sync
Отправлено: ux0qt от 27 Февраля 2015, 18:06:23
mega.co.nz :)
  Солидно 50 гиг бесплатно!


Название: Re: Backup DropBox Sync
Отправлено: ux0qt от 27 Февраля 2015, 18:31:25
rm -f nodeny_${file}.sql - удалили  sql т.к. он уже в архиве
rm -f nodeny_last.tar.gz - удаляем, потому что щас создадим новый
cp nodeny_${file}.tar.gz nodeny_last.tar.gz - создали новый

дело в том что есть желание сделать скрипт автоустановки Nodeny+,
и чтоб он не искал последнюю РК он скачает nodeny_last.tar.gz и nodeny_files_last.tar.gz
 

Уразумел! Спасибо.
У меня проблема: вручную запускаю скрипт все работает, делает копии базы и отправляет на Dropbox. При выполнении через  crontab архивы базы делаются в папке /var/backups/nodeny присутствуют, но почему то не отправляются на dropbox?
В  протоколе cron
Код:
Feb 27 18:15:00 hostik /usr/sbin/cron[91663]: (****) CMD (sh /usr/local/nodeny/backup_nodeny2.sh)
FreeBSD:
Код:
FreeBSD hostik.org 9.3-RELEASE FreeBSD 9.3-RELEASE #0 r268512: Thu Jul 10 23:44:39 UTC 2014     root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64


Название: Re: Backup DropBox Sync
Отправлено: ux0qt от 01 Марта 2015, 14:40:08
Вопрос снят, проблема решена.


Название: Re: Backup DropBox Sync
Отправлено: k291 от 01 Марта 2015, 19:54:08
Вопрос снят, проблема решена.
Как?


Название: Re: Backup DropBox Sync
Отправлено: ux0qt от 01 Марта 2015, 23:06:21
Во первых правильно сформировал задание для крона:
Создал файл backup и поместил в него следующий код:
Код:
SHELL=/usr/local/bin/bash
PATH=/usr/local/bin:/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/nodeny
40<---->2<---->*<----->*<----->*<----->bash<-->/root/backup_nodeny2.sh
Сформировал задание крону командой crontab backup
Проверил создалось ли задание crontab -l
И последнее поместил скрипт backup_nodeny2.sh  в папку root ,как видно из задания.
 После этих манипуляций все стало четко обрабатываться  и выполняться.