Skip to content

Commit 01b51dd

Browse files
committed
full backup and restore
1 parent 60f812d commit 01b51dd

File tree

4 files changed

+168
-139
lines changed

4 files changed

+168
-139
lines changed

bin/v-backup-user

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -300,6 +300,7 @@ then
300300
msg="$msg\n$(date "+%F %T") $domain"
301301
mkdir -p $tmpdir/mail/$domain/conf
302302
mkdir -p $tmpdir/mail/$domain/vesta
303+
domain_idn=$(idn -t --quiet -a "$domain")
303304

304305
# Creating exim config
305306
cd $tmpdir/mail/$domain/
@@ -314,7 +315,7 @@ then
314315
fi
315316

316317
# Packing mailboxes
317-
cd $HOMEDIR/$user/mail/$domain
318+
cd $HOMEDIR/$user/mail/$domain_idn
318319
accounts=$(ls)
319320
if [ ! -z "$accounts" ]; then
320321
tar -cpf $tmpdir/mail/$domain/accounts.tar $accounts
@@ -336,7 +337,7 @@ then
336337
fi
337338

338339

339-
# DataBases
340+
# Databases
340341
if [ ! -z "$DB_SYSTEM" ] && [ "$DB_SYSTEM" != 'no' ] && [ "$DB" != '*' ]; then
341342
echo "-- DB --"
342343
msg="$msg\n-- DB --"
@@ -553,7 +554,6 @@ ftp_backup() {
553554

554555
# Debug info
555556
echo -e "$(date "+%F %T") FTP ftp://$HOST$BPATH/$user.$DATE.tar"
556-
msg="$msg\n$(date "+%F %T") FTP ftp://$HOST$BPATH/$user.$DATE.tar"
557557

558558
# Checking ftp connection
559559
if [ ! -z "$(ftpc)" ]; then

bin/v-rebuild-user

Lines changed: 5 additions & 117 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,10 @@ restart=$2
1616
# Includes
1717
source $VESTA/conf/vesta.conf
1818
source $VESTA/func/main.sh
19+
source $VESTA/func/rebuild.sh
20+
21+
# Export sbin
22+
export PATH=$PATH:/usr/sbin
1923

2024

2125
#----------------------------------------------------------#
@@ -31,131 +35,15 @@ is_object_unsuspended 'user' 'USER' "$user"
3135
#----------------------------------------------------------#
3236
# Action #
3337
#----------------------------------------------------------#
34-
export PATH=$PATH:/usr/sbin
35-
36-
# Get user variables
37-
source $USER_DATA/user.conf
3838

3939
# Rebuild user
40-
shell=$(chsh --list-shells | grep -w "$SHELL" |head -n1)
41-
adduser "$user" -s "$shell" -c "$CONTACT" -m -d "$HOMEDIR/$user" &>/dev/null
42-
43-
# Update user shell
44-
shell_path=$(/usr/bin/chsh --list-shells | grep -w "$SHELL" |head -n1)
45-
/usr/bin/chsh -s "$shell_path" "$user" &>/dev/null
46-
47-
# Update password
48-
shadow='/etc/shadow'
49-
shdw=$(grep ^$user: $shadow)
50-
shdw3=$(echo "$shdw" | cut -f3 -d :)
51-
shdw4=$(echo "$shdw" | cut -f4 -d :)
52-
shdw5=$(echo "$shdw" | cut -f5 -d :)
53-
shdw6=$(echo "$shdw" | cut -f6 -d :)
54-
shdw7=$(echo "$shdw" | cut -f7 -d :)
55-
shdw8=$(echo "$shdw" | cut -f8 -d :)
56-
shdw9=$(echo "$shdw" | cut -f9 -d :)
57-
chmod u+w $shadow
58-
sed -i "/^$user:*/d" $shadow
59-
echo "$user:$MD5:$shdw3:$shdw4:$shdw5:$shdw6:$shdw7:$shdw8:$shdw9" >> $shadow
60-
chmod u-w $shadow
61-
62-
# Building directory tree
63-
mkdir -p $HOMEDIR/$user/conf
64-
chmod a+x $HOMEDIR/$user
65-
chmod a+x $HOMEDIR/$user/conf
66-
chown $user:$user $HOMEDIR/$user
67-
chown root:root $HOMEDIR/$user/conf
68-
chattr +i $HOMEDIR/$user/conf
69-
70-
if [ ! -z "$WEB_SYSTEM" ] && [ "$WEB_SYSTEM" != 'no' ]; then
71-
mkdir -p $HOMEDIR/$user/conf/web
72-
mkdir -p $HOMEDIR/$user/web
73-
mkdir -p $HOMEDIR/$user/tmp
74-
chmod 751 $HOMEDIR/$user/conf/web
75-
chmod 751 $HOMEDIR/$user/web
76-
chmod 771 $HOMEDIR/$user/tmp
77-
chown $user:$user $HOMEDIR/$user/web
78-
$BIN/v-rebuild-web-domains $user $restart
79-
fi
80-
81-
if [ ! -z "$DNS_SYSTEM" ] && [ "$DNS_SYSTEM" != 'no' ]; then
82-
mkdir -p $HOMEDIR/$user/conf/dns
83-
chmod 751 $HOMEDIR/$user/conf/dns
84-
$BIN/v-rebuild-dns-domains $user $restart
85-
fi
86-
87-
if [ ! -z "$MAIL_SYSTEM" ] && [ "$MAIL_SYSTEM" != 'no' ]; then
88-
mkdir -p $HOMEDIR/$user/conf/mail
89-
mkdir -p $HOMEDIR/$user/mail
90-
chmod 751 $HOMEDIR/$user/mail
91-
chmod 751 $HOMEDIR/$user/conf/mail
92-
$BIN/v-rebuild-mail-domains $user
93-
fi
94-
95-
96-
if [ ! -z "$DB_SYSTEM" ] && [ "$DB_SYSTEM" != 'no' ]; then
97-
$BIN/v-rebuild-databases $user
98-
fi
99-
100-
if [ ! -z "$CRON_SYSTEM" ] && [ "$CRON_SYSTEM" != 'no' ]; then
101-
$BIN/v-rebuild-cron-jobs $user $restart
102-
fi
40+
rebuild_user_conf
10341

10442

10543
#----------------------------------------------------------#
10644
# Vesta #
10745
#----------------------------------------------------------#
10846

109-
# Creating configuration files and pipes
110-
chmod 770 $USER_DATA
111-
touch $USER_DATA/backup.conf
112-
chmod 660 $USER_DATA/backup.conf
113-
touch $USER_DATA/history.log
114-
chmod 660 $USER_DATA/history.log
115-
touch $USER_DATA/stats.log
116-
chmod 660 $USER_DATA/stats.log
117-
118-
sed -i "/ $user$/d" $VESTA/data/queue/disk.pipe
119-
echo "$BIN/v-update-user-disk $user" >> $VESTA/data/queue/disk.pipe
120-
121-
if [ ! -z "$WEB_SYSTEM" ] && [ "$WEB_SYSTEM" != 'no' ]; then
122-
mkdir -p $USER_DATA/ssl
123-
chmod 770 $USER_DATA/ssl
124-
touch $USER_DATA/web.conf
125-
chmod 660 $USER_DATA/web.conf
126-
if [ "$(grep -w $user $VESTA/data/queue/traffic.pipe)" ]; then
127-
echo "$BIN/v-update-web-domains-traff $user" \
128-
>> $VESTA/data/queue/traffic.pipe
129-
fi
130-
echo "$BIN/v-update-web-domains-disk $user" >> $VESTA/data/queue/disk.pipe
131-
fi
132-
133-
if [ ! -z "$DNS_SYSTEM" ] && [ "$DNS_SYSTEM" != 'no' ]; then
134-
mkdir -p $USER_DATA/dns
135-
chmod 770 $USER_DATA/dns
136-
touch $USER_DATA/dns.conf
137-
chmod 660 $USER_DATA/dns.conf
138-
fi
139-
140-
if [ ! -z "$MAIL_SYSTEM" ] && [ "$MAIL_SYSTEM" != 'no' ]; then
141-
mkdir -p $USER_DATA/mail
142-
chmod 770 $USER_DATA/mail
143-
touch $USER_DATA/mail.conf
144-
chmod 660 $USER_DATA/mail.conf
145-
echo "$BIN/v-update-mail-domains-disk $user" >> $VESTA/data/queue/disk.pipe
146-
fi
147-
148-
if [ ! -z "$DB_SYSTEM" ] && [ "$DB_SYSTEM" != 'no' ]; then
149-
touch $USER_DATA/db.conf
150-
chmod 660 $USER_DATA/db.conf
151-
echo "$BIN/v-update-databases-disk $user" >> $VESTA/data/queue/disk.pipe
152-
fi
153-
154-
if [ ! -z "$CRON_SYSTEM" ] && [ "$CRON_SYSTEM" != 'no' ]; then
155-
touch $USER_DATA/cron.conf
156-
chmod 660 $USER_DATA/cron.conf
157-
fi
158-
15947
# Logging
16048
log_event "$OK" "$EVENT"
16149

0 commit comments

Comments
 (0)