Hướng dẫn tự động backup dữ liệu VPS lên Dropbox

Trong bài viết trước mình có giới thiệu cách Hướng dẫn tự động backup code và database sang một server/VPS khác. Cách đó thực hiện rất tốt nhưng nếu bạn không muốn bỏ tiền ra mua một VPS để backup thì bạn có thể tận dụng tài khoản Dropbox để backup dữ liệu cho VPS của mình. Dữ liệu ở đây bao gồm cả code và database .

Trước tiên ta tìm hiểu Dropbox là gì nhé:

Dropbox là dịch vụ sao lưu, lưu trữ dữ liệu trực tuyến với khả năng đồng bộ theo thời gian thực và tự động thực hiện sao lưu.

Khi đăng ký một tài khoản free, chúng ta sẽ có 2 GB để lưu trữ dữ liệu. Và chúng ta có thể tăng dung lượng miễn phí này thành 20 GB bằng cách giới thiệu bạn bè sử dụng này qua link của mình.

Sau đây mình sẽ hướng dẫn các bạn tận dụng tài khoản Dropbox để sao lưu dữ liệu cho VPS của mình. Cách thực hiện rất đơn giản, chúng ta mất mấy phút để hoàn thành việc cài đặt và thiết lập thôi.  :D

 

 

 Chúng ta cần có một tài khoản Dropbox.

Bạn có thể đăng ký ở : http://dropbox.com

 

 Cài đặt Dropbox trên VPS

Tùy theo phiên bản hệ điều hành Linux của VPS bạn là bản 32 bit hay 64 bit mà ta dùng lệnh dưới để cài đặt:

Lệnh cài Dropbox  dành cho 64 bit:

 wget -O dropbox.tar.gz "http://www.dropbox.com/download/?plat=lnx.x86_64"

Lệnh cài Dropbox  dành cho 32 bit:

wget -O dropbox.tar.gz "http://www.dropbox.com/download/?plat=lnx.x86"

Sau khi download Dropbox về VPS hoàn thành. Ta tiếp tục lệnh giải nén :

tar -xvzf dropbox.tar.gz

và chạy  dropbox

./.dropbox-dist/dropboxd

sau khi chạy dropbox, bạn sẽ thấy một đoạn text với nội dung sau:

This computer isn't linked to any Dropbox account...
Please visit https://www.dropbox.com/cli_link?host_id=abcxyz to link this device.

Bây giờ bạn copy link tương tự như

https://www.dropbox.com/cli_link?host_id=abcxyz

vào trình duyệt, đăng nhập bằng tài khoản Dropbox để xác thực kết nối VPS và Dropbox. đăng nhập xong bạn sẽ được thông báo:

Đăng nhập trên trình duyệt thành công thì trên của sổ dòng lệnh SSH sẽ xuất hiện :

This computer is now linked to Dropbox. Welcome mr ABC

Ta thoát ra bằng lệnh Ctrl + C

Sau khi bạn thực hiện xong bước này, toàn bộ dữ liệu giữa VPS và tài khoản Dropbox sẽ được kết nối hai chiều. Nghĩa là bạn thay đổi nội dung file trong folder Dropbox
trên VPS thì trên VPS cũng thay đổi theo và ngược lại.

 Thực hiện backup VPS tới Dropbox

Các folder và file nằm trong /root/Dropbox trên VPS sẽ được backup lên Dropbox.

Nhưng do đường dẫn của các file website và database của chúng ta nằm ở các thư mục khác. Vì vậy chúng ta cần symlink các folder này tới folder của Dropbox.  Trong bài viết này mình dùng đường dẫn các folder website và database theo VPSSIM. Trên các VPS của bạn, nếu đường dẫn khác bạn thay thế tương đương nhé.

Trước tiên ta tạo folder BackupVPS chứa sao lưu VPS

mkdir /root/Dropbox/BackupVPS

Tiếp theo symlink folder home chứa tất cả code các website:

ln -s /home/ /root/Dropbox/BackupVPS/home

Bây giờ trong tài khoản Dropbox cuả bạn, sẽ có folder BackupVPS , trong đó có toàn bộ các bản sao lưu của /home trên VPS.

Vậy là xong phần backup code. Tiếp theo đến phần backup database.

I. Trường hợp database của bạn dùng MyISAM làm engine mặc định.

( Nếu bạn sử dụng VPSSIM trên VPS thì database được đặt MyISAM làm engine mặc định)

Với trường hợp này, bạn chỉ cần symlink folder mysql trên VPS vô BackupVPS là được. Khi cần phục hồi, copy luôn cả folder sang chỗ cũ là phục hồi xong.

ln -s /var/lib/mysql /root/Dropbox/BackupVPS/mysql

 II . Trường hợp database bạn dùng engine khác như INNODB

Tạo file backup_database.sh trong /home với nội dung sau:

#!/bin/bash
mysqldump -u [mysqlusername] -p[pass] mysqldatabasename > /root/BackupVPS/mysql/mydatabasename_`data ' %m-%d-%Y'`.sql

tiếp theo tạo một cronjob cho bash script này auto run lúc 3h30 hàng ngày bằng lệnh:

crontab -l > file; echo '30 3 * * *  /home/backup_database.sh >/dev/null 2>&1' >> file; crontab file

Chạy Dropbox

Ta chạy Dropbox bằng cách thực hiện lần lượt 3 lệnh sau:

wget -O ~/dropbox.py "http://www.dropbox.com/download?dl=packages/dropbox.py"
chmod 755 ~/dropbox.py
~/dropbox.py start

Tạo Cronjob để chắc chắn Dropbox luôn chạy trong bất cứ trường hợp nào

( như restart lại VPS, tắt VPS rồi bật lại, crash phần mềm nào đó )

Bạn tạo một cronjob bằng lệnh sau:

crontab -l > file; echo '@reboot ~/dropbox.py start >/dev/null 2>&1' >> file; crontab file

Chạy lệnh xong, bạn gặp “no crontab for root ” thì không vấn đề gì nhé.

Chú ý: Bước này cực kỳ quan trọng, vì sau khi bạn khởi động lại VPS,  Dropbox sẽ bị tắt và không tự động bật lại.

Các lệnh Kiểm Tra .

Để kiểm tra xem cronjob để Dropbox luôn chạy đã add thành công chưa. Ta dùng lệnh

crontab -l

Kiểm tra trạng thái Dropbox

~/dropbox.py status

Để stop Dropbox backup ta dùng lệnh

~/dropbox.py stop

About admin

Nhiều bạn chỉ biết mình là kỹ thuật viên chuyên ngành điện tử công nghiệp, điện tử dân dụng, nhưng đồng thời mình cũng là 1 Webmaster điều hành 1 số web và blog... Mình muốn đem những kiến thức mình biết để chia sẻ cho những anh em không biết, chưa biết... Hãy cùng nhau chia sẻ những gì chúng ta có, hãy chia sẻ thoải mái nếu nó không làm bạn nghèo đi nhé!

Theo dõi
Thông báo về
guest
1 Comment
Cũ nhất
Mới nhất Bình chọn nhiều nhất
Phản hồi nội tuyến
Xem tất cả các ý kiến
Đạt Phít Đẹp Zai
Đạt Phít Đẹp Zai
1 Năm Trước đây

thiếu meta description rồi đại ca