- Tham gia
- 13/05/2015
- Bài viết
- 438
- Được Like
- 335
Việc cài đặt Rclone trên linux các bạn google nhé! Mình lười viết quá. Mình chỉa sẻ các bạn một số script backup/restore lên google drive và Ondrive.
1. Script backup nguyên cả thư mục user (có bao nhiêu web của user nó gom hết). Và tất cả SQL (kể cả user khác).
Chú giải vài đoạn cho bạn nào chưa hiểu:
Dòng này là backup all nhưng loại trừ folder thcsductrach.edu.vn.
Mấy dòng này là lên lịch xóa file/folder trên đám mây dành cho bạn nào dung lượng đám mây ít.
2. Backup 1 Data nào đó.
3. Restore SQL từ đám mây
4. Tải file từ đám mây về và unzip
5. Backup 1 thư mục bất kỳ:
Chừng này đã bạn nào thắc mắc hay yêu cầu gì mình sẽ trả lời ở đây. Bài tới mình sẽ chia sẻ script đồng bộ IP động lên Cloudflare.
1. Script backup nguyên cả thư mục user (có bao nhiêu web của user nó gom hết). Và tất cả SQL (kể cả user khác).
Mã:
#!/bin/bash
SERVER_NAME=vietboot
TIMESTAMP=$(date +"%d-%m-%Y")
TIMESTAMP1=$(date +"%m")
TIMESTAMP2=$(date +"%Y")
BACKUP_DIR="/backupfile/$TIMESTAMP"
MYSQL=/usr/bin/mysql
MYSQLDUMP=/usr/bin/mysqldump
SECONDS=0
mkdir -p "$BACKUP_DIR/mysql"
echo "Starting Backup Database";
databases=`$MYSQL -e "SHOW DATABASES;" | grep -Ev "(Database|information_schema|performance_schema|mysql)"`
for db in $databases; do
$MYSQLDUMP --force --opt $db | gzip > "$BACKUP_DIR/mysql/$db.gz"
done
echo "Finished";
echo '';
echo "Starting Backup Website";
# Loop through /home directory
for D in /home//admin/web/*; do
if [ -d "${D}" ]; then #If a directory
domain=${D##*/} # Domain name
echo "- "$domain;
zip -r $BACKUP_DIR/$TIMESTAMP.zip /home/admin/web/ -q -x /home/admin/web/vietboot.com/**\* /home/admin/web/thcsductrach.edu.vn/**\* #Exclude cache
fi
done
echo "Finished";
echo "Starting Backup Sub Website";
# Loop through /home directory
for D in /home//drhoasieuam/web/*; do
if [ -d "${D}" ]; then #If a directory
domain=${D##*/} # Domain name
echo "- "$domain;
zip -r $BACKUP_DIR/hoa.zip /home/drhoasieuam/web/ -q -x /home/admin/web/vietboot.com/**\* #Exclude cache
fi
done
echo "Finished";
size=$(du -sh $BACKUP_DIR | awk '{ print $1}')
echo "Đang upload lên Google Drive";
/usr/sbin/rclone --transfers=1 copy $BACKUP_DIR "vietboot:Backup/all/$TIMESTAMP2/$TIMESTAMP1/$TIMESTAMP" >> /var/log/rclone.log 2>&1
echo "Đang upload lên One Drive";
/usr/sbin/rclone --transfers=1 move $BACKUP_DIR "microsoft:Backup/all/$TIMESTAMP2/$TIMESTAMP1/$TIMESTAMP" >> /var/log/rclone.log 2>&1
# Clean up
rm -rf $BACKUP_DIR
#/usr/sbin/rclone -q --min-age 50w delete "remote:$SERVER_NAME" #Remove all backups older than 2 week
#/usr/sbin/rclone -q --min-age 50w rmdirs "remote:$SERVER_NAME" #Remove all empty folders older than 2 week
#/usr/sbin/rclone cleanup "remote:" #Cleanup Trash
echo "Finished";
echo '';
duration=$SECONDS
echo "Total $size, $(($duration / 60)) minutes and $(($duration % 60)) seconds elapsed."
Mã:
ip -r $BACKUP_DIR/$TIMESTAMP.zip /home/admin/web/ -q -x /home/admin/web/vietboot.com/**\* /home/admin/web/thcsductrach.edu.vn/**\* #Exclude cache
Mã:
#/usr/sbin/rclone -q --min-age 50w delete "remote:$SERVER_NAME" #Remove all backups older than 2 week
#/usr/sbin/rclone -q --min-age 50w rmdirs "remote:$SERVER_NAME" #Remove all empty folders older than 2 week
#/usr/sbin/rclone cleanup "remote:" #Cleanup Trash
2. Backup 1 Data nào đó.
Mã:
SERVER_NAME=vietboot
TIMESTAMP=$(date +"%d-%m-%Y")
TIMESTAMP1=$(date +"%m")
TIMESTAMP2=$(date +"%Y")
BACKUP_DIR="/backupfile/$TIMESTAMP"
SECONDS=0
mkdir -p "$BACKUP_DIR/mysql"
echo "Đang backup SQL";
mysqldump admin_forum | gzip > $BACKUP_DIR/forum.sql.gz
echo "Đang upload lên Google Drive";
/usr/sbin/rclone --transfers=1 copy $BACKUP_DIR "vietboot:Backup/sql/$TIMESTAMP2/$TIMESTAMP1/$TIMESTAMP" >> /var/log/rclone.log 2>&1
echo "Đang upload lên One Drive";
/usr/sbin/rclone --transfers=1 copy $BACKUP_DIR "microsoft:Backup/sql/$TIMESTAMP2/$TIMESTAMP1/$TIMESTAMP" >> /var/log/rclone.log 2>&1
# Clean up
rm -rf $BACKUP_DIR
echo "Hoàn thành"; echo '';
#/usr/sbin/rclone -q --min-age 2m delete "remote:$SERVER_NAME" #Remove all backups older than 2 week /usr/sbin/rclone -q
#--min-age 2w rmdirs "remote:$SERVER_NAME" #Remove all empty folders older than 2 week /usr/sbin/rclone cleanup "remote:"
##Cleanup Trash
duration=$SECONDS
echo "Hoàn thành."
Mã:
SERVER_NAME=vietboot
TIMESTAMP=$(date +"%d-%m-%Y")
TIMESTAMP1=$(date +"%m")
TIMESTAMP2=$(date +"%Y")
BACKUP_DIR="/backup/$TIMESTAMP"
SECONDS=0
#mkdir -p "$BACKUP_DIR/mysql"
echo "Đang tải SQL về";
/usr/sbin/rclone copy "vietboot:Backup/sql/$TIMESTAMP2/$TIMESTAMP1/$TIMESTAMP/sync/forum.sql" /$BACKUP_DIR/
echo "Đang Restore SQL"
mysql admin_forum < $BACKUP_DIR/forum.sql
# Clean up
rm -rf $BACKUP_DIR
echo "Hoàn thành";
Mã:
SERVER_NAME=vietboot
TIMESTAMP=$(date +"%d-%m-%Y")
TIMESTAMP1=$(date +"%m")
TIMESTAMP2=$(date +"%Y")
BACKUP_DIR="/backup/$TIMESTAMP"
SECONDS=0
#mkdir -p "$BACKUP_DIR/mysql"
echo "Đang tải files về";
/usr/sbin/rclone copy "vietboot:/Backup/code22x/2021/09/06-09-2021" /home/admin/web/vietboot.com/public_html
echo "Đang xóa thư mục cũ"
rm -rf /home/admin/web/vietboot.com/public_html/forum
echo "Đang giải nén"
cd /home/admin/web//vietboot.com/public_html
unzip -oq forum.zip
chown -R admin:admin /home/admin/web/vietboot.cm/public_html
# Clean up
rm -rf /home/admin/web/vietboot.com/public_html/forum.zip
Mã:
cd /home/admin/web/vietboot.com/public_html/forum/data
zip -rq /home/admin/web/vietboot.com/public_html/avatars.zip avatars
echo "Đang upload lên Google Drive";
/usr/sbin/rclone --transfers=1 copy /home/admin/web/vietboot.com/public_html/avatars.zip "vietboot:Backup/avatars" >> /var/log/rclone.log 2>&1
/usr/sbin/rclone --transfers=1 move /home/admin/web/vietboot.com/public_html/avatars.zip "microsoft:Backup/avatars" >> /var/log/rclone.log 2>&1
# Clean up
rm -rf /home/admin/web/vietboot.com/public_html/avatars.zip
echo "Hoàn thành";
Bài viết liên quan
Bài viết mới