Tạo file auto-backup tại thư mục /bin bằng câu lệnh sau:
vi /bin/auto-backup
#!/bin/bash
echo "Backup website demo1.com"
mkdir /home/backup/$(date +"%Y-%m-%d")/ ## Tạo đường dẫn chứa File Backup
mkdir /home/backup/$(date +"%Y-%m-%d")/demo1.com/
echo "Starting backup database for demo1.com..." ## Backup Database
mysqldump --single-transaction --routines --triggers --add-drop-table --extended-insert -u admin_demo1 -p'OTHBleuc6QUt' admin_demo1 | gzip -9 > /home/backup/$(date +"%Y-%m-%d")/demo1.com/Database_$(date +"%Y-%m-%d").sql.gz
echo "Starting backup files for demo1.com..." ## Backup Source
zip -r /home/backup/$(date +"%Y-%m-%d")/demo1.com/Source_$(date +"%Y-%m-%d").zip /www/wwwroot/demo1.com/ -q
echo "BACKUP Database & Source thanh cong vao luc $(date +"%Y-%m-%d")!"
echo "File backup da duoc luu tai: /home/backup/demo1.com"
Đoạn lệnh trên mô tả các thành phần sau:
chmod +x /bin/auto-backup
auto-backup
File đã backup khi vào đường dẫn /home/backup/
Bên trong có cả file source code và database.
cron
Thêm dòng lệnh để thực hiện backup định kỳ. Ví dụ, backup hàng ngày vào lúc 2AM:
Thiết lập Cron Backup chạy vào 02:00 giờ sáng hàng ngày, và log sẽ được ghi lại tại đường dẫn /home/backup/log-backup.txt
(crontab -u root -l ; echo "0 2 * * * auto-backup >> /home/backup/log-backup.txt")
Khởi động lại dịch vụ Crond
systemctl restart crond
cat /var/spool/cron/root
Tác giả: Master
Những tin mới hơn
Những tin cũ hơn