Nội dung

Script backup toàn bộ website trên vps Ubuntu

1 năm trước, Cài đặt VPS, Ubuntu, 830 Lượt xem

Đăng ký cập nhập video từ netweb.vn

Tạo file backup.sh ở thư mục /root/

Full script backup vps

nano /root/backup.sh
# Backup plugin netweb.vn - Backup Server

#!/bin/bash

SERVER_NAME=VPS

TIMESTAMP=$(date +"%Y-%m-%d_%H-%M")
BACKUP_DIR="/var/backup/$TIMESTAMP"
MYSQL_USER="userMYSQL"
MYSQL=/usr/bin/mysql
MYSQL_PASSWORD=passMYSQL
MYSQLDUMP=/usr/bin/mysqldump
SECONDS=0

mkdir -p "$BACKUP_DIR/mysql"

echo "Starting Backup Database";
databases=`$MYSQL --user=$MYSQL_USER -p$MYSQL_PASSWORD -e "SHOW DATABASES;" | grep -Ev "(Database|information_schema|performance_schema|mysql)"`

for db in $databases; do
	$MYSQLDUMP --force --opt --user=$MYSQL_USER -p$MYSQL_PASSWORD $db | gzip > "$BACKUP_DIR/mysql/$db.gz"
done
echo "Finished";
echo '';

echo "Starting Backup Website";
#Loop through /home directory
for D in /var/www/*; do
	if [ -d "${D}" ]; then #If a directory
		domain=${D##*/} # Domain name
		echo "- "$domain;
		zip -r $BACKUP_DIR/$domain.zip /var/www/$domain/ -q -x /var/www/$domain/wp-content/cache/**\* #Exclude cache
	fi
done
echo "Finished";
echo '';

echo "Starting Backup ngin Configuration";
cp -r /etc/nginx/sites-enabled/ $BACKUP_DIR/nginx/
echo "Finished";
echo '';

echo "Starting Compress Files";
zip -r /var/backup/$SERVER_NAME-$TIMESTAMP.zip $BACKUP_DIR -q
rm -rf $BACKUP_DIR
size=$(ls -lah /var/backup/$SERVER_NAME-$TIMESTAMP.zip | awk '{ print $5}')
echo "Finished";
echo '';

#Remove older backups (5 days)
find /var/backup/ -mindepth 1 -mtime +5 -delete

duration=$SECONDS
echo "Total $size, $(($duration / 60)) minutes and $(($duration % 60)) seconds elapsed."

– Phân quyền cho script

chmod +x /root/backup.sh


– Vậy là xong rồi đó, giờ bạn có thể test lại bằng cách chạy lệnh /root/backup.sh

Xong, kiểm tra trong thư mục /var/backup có file backup .ZIP chưa nhé

  1. Tạo cronjob tự động backup hàng ngày
    Giờ mình sẽ cho script tự động chạy lúc 2h00 sáng

vào tạo crontab

crontab -e

Dán nội dung sau vào cửa sổ Terminal

0 2 * * * /root/backup.sh

Bài viết mới cập nhập

  • Quản lý mẫu web phòng khám

    Quản lý mẫu web phòng khám

    2 tháng trước, 125 Lượt xem

    Xin chào tất cả các khách hàng dùng mẫu web công ty bên netweb, sau đây netweb.vn xin hướng dẫn các bạn quản lý mẫu…

  • Quản lý mẫu web công ty

    Quản lý mẫu web công ty

    5 tháng trước, 191 Lượt xem

    Xin chào tất cả các khách hàng dùng mẫu web công ty bên netweb, sau đây netweb.vn xin hướng dẫn các bạn quản lý mẫu…

Bình luận trên facebook netweb.vn

Đam mê thiết kế web, kinh nghiệm 9 năm trong nghề thiết kế website, đang thiết kế web dạo tại netweb.vn, Callme: 08.9898.2526 (Mr Hải)