Rclone để backup VPS lên Google Drive

Bước 1: Cài đặt Rclone

Ở đây mình sẽ tải Rclone bản mới nhất tại thời điểm viết. Sau đó giải nén và copy vào thư mục /usr/sbin/.
Với bản Ubuntu 64 bit bạn chạy nhóm lệnh sau:
Bản Ubuntu 32 bit bạn sử dụng nhóm lệnh sau:
Bây giờ bạn có thể sử dụng lệnh rclone ở terminal rồi. Chi tiết các câu lệnh bạn xem ở đây.

Bước 2: Backup VPS lên Google Drive

Kết nối với Rclone với Google Drive

Bước này bạn chỉ làm một lần. Những lần sau thì bỏ qua.
Chạy lệnh sau:
Bạn sẽ nhận được thông báo no remotes found. Gõ n để tạo mới remote:
Tiếp theo bạn nhập vào tên cho remote. Tên này bạn sẽ sử dụng để dại diện cho kết nối tới dịch vụ lưu trữ đám mây ở script backup bên dưới.
Tiếp theo bạn chọn dịch vụ lưu trữ nào bạn muốn. Nhập vào số 8 để chọn Google Drive rồi Enter.
hướng dẫn sử dụng rclone 3
Client Id và Client Secret bạn để trống bằng cách ấn Enter.
Phần use auto config, bạn gõ n rồi Enter.
hướng dẫn sử dụng rclone 5
Bây giờ bạn copy cái đường dẫn loằng ngằng trong terminal và paste vào trình duyệt.
Trong trình duyệt, bạn click nut Allow để cho phép Rclone truy cập tới tài khoản Google Drive của bạn:
hướng dẫn sử dụng rclone 7
Google sẽ sinh ra cho bạn một đoạn mã. Nhiệm vụ của bạn là copy nó và paste vào terminal rồi Enter.
Nếu được hỏi Configure this is a team drive thì gõ n rồi enter. Tiếp theo gõ y để confirm mọi thứ OK.
hướng dẫn sử dụng rclone 9
Cuối cùng gõ q để thoát config của Rclone:
hướng dẫn sử dụng rclone 10
Bây giờ bạn test thử với câu lệnh sau (thay remote_name bằng tên remote bạn tạo khi kết nối với Google Drive): rclone lsd remote_name: 
Nếu thành công câu lệnh trên sẽ liệt kê các thư mục trong Google Drive của bạn.

Script backup VPS và upload lên Google Drive

Tạo một file script có tên là backup.sh trong thư mục /root/: ​
Nếu nano chưa được cài thì bạn sử dụng lệnh sau để cài đặt: apt-get install nano
Copy toàn bộ file script bên dưới vào file backup.sh. Một số chỗ bạn cần thay đổi như sau:
SERVER_NAME: tên thư mục chứa backup trên GoogleDrive.
Password: bạn thay bằng password của bạn. Đối với EasyEngine bạn sử lệnh này để lấy mật khẩu tài khoản root MySQL: cat /etc/mysql/conf.d/my.cnf
Đoạn này a2hostingvps:$SERVER_NAME: a2hostingvps là tên remote của mình bạn thay bằng tên remote bạn đã tạo ở bước kết nối Google Drive.
Lưu ý: script có sử dụng lệnh zip để nén. Bạn cài đặt zip với lệnh sau trước khi chạy script:apt-get install zip
Cấp quyền thực thi cho file backup.sh
Bây giờ bạn chỉ chạy lệnh sau để backup:
Để kiểm tra xem backup đã thành công thực sự hay chưa bạn có thể vào Google Drive check lại.
Tạo cron job tự động chạy backup
Chạy câu lệnh sau để mở cron job: ​
Paste dòng sau vào cron job
Câu lệnh sau có nghĩa: 2h sáng hàng ngày sẽ backup VPS và lưu trên Google Drive.

Bước 3: Tải backup từ Google Drive và khôi phục lại website

Trong trường hợp bạn muốn khôi phục lại website, bạn làm như sau:
Đầu tiên bạn tải toàn bộ backup về thư mục /root (nhớ thay tên remote bằng tên remote của bạn và diretory_name bằng thư mục trên Google Drive bằng tên của bạn).
Ví dụ phía dưới là các file backup trên Google Drive của mình:
hướng dẫn sử dụng rclone 12
File khamphaso.com.zip sẽ chứa source code của website. Thư mục mysql sẽ chứa file sql nén ở định dạng .gz.
Khi bạn tải về thư mục /root. Đầu tiên bạn giải nén source code bằng lệnh unzip:
Sau đó copy đè vào thư mục website:
Tiếp theo bạn khôi phục db. Đầu tiên bạn giải nén file sql bằng lệnh sau:
Di chuyển tới thư mục gốc của website và sử dụng lệnh import của WP CLI (cái này đã được cài đặt khi bạn cài đặt EasyEngine theo hướng dẫn của mình):
Thế là xong. Bạn đã restore thành công website.

Lời kết

Qua bài viết bạn đã biết thêm một cách backup website trên VPS sử dụng EasyEngine.
Nếu bạn gặp khó khăn gì hãy để lại bình luận bên dưới.

Đăng nhận xét

Mới hơn Cũ hơn
QA TRUOC CONTENT
QA SAU CONTENT