banner
Jan 28, 2023
104 Views

Cách tôi backup blog hàng ngày tự động

Written by
banner

Nói xấu hổ chứ làm tech cũng 10 năm rồi nhưng vẫn backup blog hơi bị chán (xin tổ nghề tha thứ cho con). Nhưng được cái phương pháp này nhanh, không cần code.

Mình có 2 máy chủ tạm gọi như sau:

  • Máy A, host chính cái blog này trên mây, dùng gói rất basic 2 core CPU/ 2GB ram/ 20GB SSD.
  • Máy B là nơi chứa các bản backup theo ngày, vốn là con Raspberry Pi 4 cắm ở nhà, hệ điều hành cài trên SSD 512GB qua cổng USB 3.0.

Yêu cầu:

  • Cứ 2h sáng máy A backup 1 bản cả code và sql.
  • Cứ 4h sáng máy B tự động copy bản backup về lưu lại.
Máy B

Ở máy A

crontab -e và thêm 2 dòng này vào

0 2 * * * mysqldump -u <DB_USERNAME> -p<DB_PASSWORD> <DB_NAME> > /root/backup_haonheo/database.sql

0 2 * * * zip -r /root/backup_haonheo/blog.haonheo.com.zip /var/www/blog.haonheo.com/

Note: lo xa có thể máy B ở nhà tuy nhiều SSD nhưng lỡ chết hoặc lý do gì đó bị tắt dài ngày, máy A host trên cloud vốn cũng không có nhiều SSD lắm nên mình không đặt tên theo ngày mà để nó ghi đè hàng ngày. Biết là dở nhưng... kệ, blog thôi mà.

Ở máy B

Cài sshpass

sudo apt-get install sshpass -y

crontab -e và thêm vào dòng sau

0 4 * * * sshpass -p <MÁY_A_SSH_PASSWORD> scp -r <MÁY_A_SSH_USERNAME>@<MÁY_A_IP>:/root/backup_haonheo /root/backup_haonheo/$(date +\%Y-\%m-\%d)

Article Tags:
·
Article Categories:
config
banner

Leave a Reply

Your email address will not be published. Required fields are marked *