backup_restore.sh
1.92 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#!/bin/sh
##---------------------------------------
# Variaveis Utilizadas
##----------------------------------------
DIR_BACKUP="/var/backup/colab-sei"
LOCALHOST="localhost"
DATABASE_REDMINE="redmine"
PORT_POSTGRES=5432
REDMINE_USER="redmine"
PASSWORD_REDMINE_USER="redmine"
REDMINE_DIRECTORY="/opt/redmine"
#make dirs
sudo mkdir -p $DIR_BACKUP
#---------------------------------------
COMMAND=$1
if [ "$COMMAND" == "backup" ];then
echo "BACKUP"
# #backup ldap
sudo slapcat -v -l $DIR_BACKUP/ldap-backup.ldif
#backup redmine postgres
export PGPASSWORD=$PASSWORD_REDMINE_USER
/usr/pgsql-9.3/bin/pg_dump -i -h $LOCALHOST -p $PORT_POSTGRES -U $REDMINE_USER -Fc -b -v -f $DIR_BACKUP/redmine.dump $DATABASE_REDMINE
#backup redmine files
sudo rsync -bvza $REDMINE_DIRECTORY/files $DIR_BACKUP/files_backup --delete
exit 0
fi
if [ "$COMMAND" == "restore" ] ; then
echo "RESTORE"
#restore ldap
#remove old users
sudo service slapd stop
sudo rm /var/lib/ldap/alock /var/lib/ldap/log* /var/lib/ldap/*db* -f
sudo service slapd start
sudo service slapd stop
#adicionar os usuários antigos
sudo slapadd -l $DIR_BACKUP/ldap-backup.ldif
sudo slapindex -v
sudo chown ldap:ldap /var/lib/ldap/*
service slapd start
# reset database redmine
PID_REDMINE_UNICORN=`cat $REDMINE_DIRECTORY/pids/unicorn.pid `
sudo kill -9 $PID_REDMINE_UNICORN
sudo -u postgres psql -c "DROP DATABASE $DATABASE_REDMINE;"
sudo -u postgres psql -c "CREATE DATABASE $DATABASE_REDMINE WITH ENCODING='UTF8' OWNER=$REDMINE_USER;"
# restore database redmine
export PGPASSWORD=$PASSWORD_REDMINE_USER
/usr/pgsql-9.3/bin/pg_restore --host=$LOCALHOST --port=$PORT --dbname=$DATABASE_REDMINE --username=$REDMINE_USER $DIR_BACKUP/redmine.dump -n public -v
sudo rsync -bvza $DIR_BACKUP/files_backup/files $REDMINE_DIRECTORY --delete
sudo /usr/local/bin/unicorn_rails -c /opt/redmine/config/unicorn.rb -E production -p 80 -D
fi