В этой статье я приведу пример резервного копирования Phabricator.
Экспортировать базы данных Phabricator можно следующей командой:
./bin/storage dump --compress --output backup.sql.gz
Восстановить базы данных из резервных копий можно командой:
gunzip -c backup.sql.gz | mysql
Также сделаем резервную копию файла конфигурации:
phabricator/conf/local/local.json
Для примера я сделал такой скрипт:
#!/bin/bash
mkdir /backups/`date +%Y-%m-%d`
cd /backups/`date +%Y-%m-%d`
tar -cvpzf /backups/`date +%Y-%m-%d`/phabriator_`date +%Y-%m-%d`.tar.bz2 /home/phd/
/home/phd/phabricator/bin/storage dump --compress --output /backups/`date +%Y-%m-%d`/phabriator_`date +%Y-%m-%d`.sql.gz
# remove old data
find /backups/`date +%Y-%m-%d`/ -type d -mtime +4 -exec rm -rfv {} \;
И добавим в /etc/crontab
0 2 * * * root /backups/scripts/backup_phabricator.sh >/dev/null 2>&1
Если репозитории не большие, то можно их тоже добавить в скрипт:
tar -cvpzf /backups/`date +%Y-%m-%d`/phabriator_repo_`date +%Y-%m-%d`.tar.bz2 /var/repo/
Смотрите также мои статьи:
Установка Phabricator в Ubuntu
Использование и настройка CRON
nice и ionice. Приоритеты процессов