Hướng dẫn

Sao lưu máy chủ lên Object Storage bằng rclone: hướng dẫn từng bước

Sao lưu máy chủ lên Object Storage bằng rclone: hướng dẫn từng bước
Chia sẻ

Bản sao lưu để cùng chỗ với dữ liệu gốc thì mất là mất cả hai. Bài này hướng dẫn đẩy bản sao lưu từ máy chủ sang một kho tách biệt bằng rclone, công cụ dòng lệnh phổ biến nhất cho việc này.

Bản sao lưu để cùng chỗ với dữ liệu gốc thì mất là mất cả hai. Bài này hướng dẫn đẩy bản sao lưu từ máy chủ sang một kho tách biệt bằng rclone, công cụ dòng lệnh phổ biến nhất cho việc này, với dịch vụ Object Storage của Cloudzone.

Mọi câu lệnh trong bài đều chạy được nguyên văn. Quý khách chỉ cần thay tên bucket và đường dẫn thư mục cho đúng với máy của mình.

1. Vì sao bản sao lưu phải nằm ngoài máy chủ

Rất nhiều hệ thống có sao lưu, nhưng để bản sao lưu ngay trên ổ đĩa của chính máy chủ đó. Cách này chỉ cứu được đúng một trường hợp: xóa nhầm tệp. Nó không cứu được khi:

  1. Ổ đĩa hỏng hoặc máy chủ không khởi động lại được.
  2. Mã độc tống tiền mã hóa toàn bộ ổ đĩa, kể cả thư mục sao lưu.
  3. Một thao tác nhầm xóa cả máy ảo.

Đẩy bản sao lưu sang một kho tách biệt, có khóa truy cập riêng, là lớp bảo vệ rẻ nhất mà hiệu quả nhất. Đó cũng là việc Object Storage sinh ra để làm.

2. Chuẩn bị: một gói Object Storage và cặp khóa

Đặt một gói trong Portal Cloudzone. Thanh toán xong hệ thống cấp tài khoản và sinh cặp khóa ngay, không phải chờ.

Vào mục dịch vụ, bấm Khoá kết nối, quý khách sẽ thấy ba thứ cần dùng:

Thông tinGiá trị
Endpointhttps://object.cloudzone.vn
Access Keychuỗi hiện sẵn, bấm để sao chép
Secret Keybấm hình con mắt để hiện

Giữ kín Secret Key. Ai có cặp khóa là có toàn quyền trên dữ liệu. Nghi ngờ bị lộ thì bấm Cấp khoá mới ngay trong Portal, khóa cũ mất hiệu lực lập tức.

Hộp thoại kết nối Object Storage trong Portal Cloudzone với endpoint, access key và secret key

Thông tin kết nối nằm sẵn trong Portal. Ảnh chụp trên tài khoản thử, khóa truy cập đã được che.

3. Cài rclone

Trên Ubuntu hoặc Debian, cách nhanh nhất:

sudo apt update && sudo apt install -y rclone

Bản trong kho của hệ điều hành đôi khi cũ. Muốn bản mới nhất thì dùng bộ cài chính thức của rclone:

curl -fsSL https://rclone.org/install.sh -o cai-rclone.sh
less cai-rclone.sh        # đọc qua trước khi chạy
sudo bash cai-rclone.sh

Kiểm tra đã cài xong:

rclone version

4. Khai cấu hình kết nối

Cách nhanh nhất là viết thẳng tệp cấu hình. Thay hai dòng khóa bằng giá trị lấy từ Portal:

mkdir -p ~/.config/rclone
cat > ~/.config/rclone/rclone.conf <<'EOF'
[cloudzone]
type = s3
provider = Ceph
endpoint = https://object.cloudzone.vn
access_key_id = KHOA_LAY_TRONG_PORTAL
secret_access_key = KHOA_BI_MAT_LAY_TRONG_PORTAL
acl = private
EOF
chmod 600 ~/.config/rclone/rclone.conf

Dòng chmod 600 không được bỏ. Tệp này chứa khóa, phải để chỉ chủ tệp đọc được.

Quý khách quen thao tác hỏi đáp thì dùng rclone config rồi chọn s3, chọn nhà cung cấp Ceph, dán endpoint và hai khóa. Kết quả giống hệt.

Endpoint nhận cả hai kiểu địa chỉ, dạng đường dẫn và dạng tên miền con, nên không phải chỉnh thêm tùy chọn nào.

5. Thử một lượt trước khi tin

Tạo một bucket và đẩy thử một thư mục nhỏ:

rclone mkdir cloudzone:sao-luu
rclone copy /etc/nginx cloudzone:sao-luu/thu-nghiem --progress

Xem lại những gì vừa lên:

rclone ls cloudzone:sao-luu/thu-nghiem

Và đối chiếu để chắc chắn không thiếu tệp nào:

rclone check /etc/nginx cloudzone:sao-luu/thu-nghiem

Lệnh check so từng tệp hai bên. Không báo lỗi nghĩa là bản trên kho khớp với bản gốc.

6. Cho chạy tự động mỗi đêm

Viết một tệp kịch bản, ví dụ /root/sao-luu.sh:

#!/bin/bash
set -euo pipefail

NGAY=$(date +%F)
NGUON=/var/www
DICH=cloudzone:sao-luu/web/$NGAY

rclone copy "$NGUON" "$DICH" \
    --transfers 8 \
    --checkers 16 \
    --log-file /var/log/sao-luu-rclone.log \
    --log-level INFO

# Dọn bản cũ hơn 30 ngày để khỏi phình dung lượng
rclone delete cloudzone:sao-luu/web --min-age 30d
rclone rmdirs cloudzone:sao-luu/web --leave-root

Cấp quyền chạy rồi hẹn giờ:

chmod +x /root/sao-luu.sh
crontab -e

Thêm một dòng, chạy lúc 2 giờ sáng mỗi ngày:

0 2 * * * /root/sao-luu.sh

Dùng copy chứ đừng dùng sync nếu chưa chắc tay. sync làm cho kho giống hệt nguồn, nghĩa là tệp nào nguồn không còn thì trên kho cũng bị xóa. Sao lưu mà dùng nhầm sync thì một lần xóa nhầm ở nguồn sẽ lan sang cả bản sao lưu.

7. Kiểm tra bản sao lưu có dùng được không

Đây là bước hay bị bỏ qua nhất, và cũng là bước khiến nhiều hệ thống phát hiện ra bản sao lưu vô dụng đúng lúc cần tới nó.

Mỗi tháng một lần, tải thử một phần về máy khác và mở ra xem:

rclone copy cloudzone:sao-luu/web/2026-10-02 /tmp/kiem-thu --progress
ls -la /tmp/kiem-thu

Với bản sao lưu cơ sở dữ liệu thì phải khôi phục thử vào một máy trống rồi mở lên xem dữ liệu có đủ không. Một tệp tải về được không có nghĩa là nội dung bên trong dùng được.

8. Vài tùy chọn đáng biết

Tùy chọnTác dụng
--bwlimit 20MGiới hạn tốc độ để việc sao lưu không chiếm hết đường truyền của website
--transfers 8Số tệp chuyển song song. Tệp nhỏ và nhiều thì tăng lên, tệp lớn thì giữ thấp
--exclude "*.log"Bỏ qua tệp không cần sao lưu, tiết kiệm dung lượng và băng thông
--dry-runChạy thử, in ra những gì sẽ làm mà không đụng vào dữ liệu. Nên dùng mỗi khi sửa kịch bản
--log-fileGhi nhật ký ra tệp. Cron chạy lúc nửa đêm, không có nhật ký thì không biết đêm qua có chạy không

Một lưu ý về hạn mức: băng thông của gói Object Storage tính cả chiều tải lên và chiều tải xuống. Lượt sao lưu hằng đêm cũng nằm trong hạn mức đó. Sao lưu một thư mục 50 GB mỗi ngày thì một tháng đã dùng khoảng 1,5 TB băng thông, nên hãy chọn gói có hạn mức tương xứng, hoặc dùng copy để chỉ đẩy phần thay đổi thay vì đẩy lại toàn bộ.

9. Câu hỏi thường gặp

rclone có chạy trên Windows không?
Có. Tải bản Windows từ trang chủ rclone, cấu hình y hệt, chỉ khác đường dẫn tệp cấu hình nằm ở %APPDATA%\rclone\rclone.conf và dùng Task Scheduler thay cho cron.

Tôi đang dùng phần mềm sao lưu khác, có kết nối được không?
Được, miễn là phần mềm đó nói được giao thức S3. Khai endpoint là https://object.cloudzone.vn kèm cặp khóa lấy trong Portal.

Dữ liệu trên kho có được mã hóa không?
Đường truyền đi qua HTTPS. Muốn nội dung tệp được mã hóa trước khi rời khỏi máy chủ, quý khách dùng thêm lớp crypt của rclone, khi đó Cloudzone chỉ thấy tệp đã mã hóa.

Hết dung lượng thì sao?
Mua thêm addon 50 GB ngay trong Portal, hoặc nâng lên gói lớn hơn. Cả hai cách đều giữ nguyên dữ liệu và khóa truy cập, không phải cấu hình lại rclone.

Xem thêm: trang dịch vụ Object Storage và dịch vụ sao lưu Backup as a Service nếu quý khách muốn Cloudzone lo trọn khâu sao lưu thay vì tự dựng.

Chia sẻ

Bài viết liên quan

Hướng dẫn xuất hóa đơn điện tử khi sử dụng dịch vụ Cloudzone

Hướng dẫn xuất hóa đơn điện tử khi sử dụng dịch vụ Cloudzone

Khách hàng cá nhân, doanh nghiệp, hộ kinh doanh khi sử dụng dịch vụ cần khai thông tin một lần trong Cloudzone Portal để được xuất hóa đơn đúng với nhu cầu, hệ thống hỗ trợ tra cứu và tải hóa đơn điện tử bất cứ lúc nào.

Lộ trình tự học quản trị VPS Linux: từ lúc nhận máy đến lúc ngủ ngon

Lộ trình tự học quản trị VPS Linux: từ lúc nhận máy đến lúc ngủ ngon

Vấn đề của người mới nhận VPS Linux không phải là thiếu hướng dẫn, mà là không biết đọc cái nào trước. Đây là con đường sáu bước: mỗi bước nói vì sao cần làm, bỏ qua thì vấp gì, rồi dẫn thẳng sang bài chi tiết.

Cấu hình bảo mật UltraViewer: 6 bước cần làm | Cloudzone

Cấu hình bảo mật UltraViewer: 6 bước cần làm | Cloudzone

Hướng dẫn cấu hình bảo mật UltraViewer: tắt mật khẩu ngẫu nhiên, đặt mật khẩu riêng, bật whitelist. Checklist đầy đủ cho máy công ty và máy cá nhân.

Cài đặt và cấu hình Linux server (Ubuntu/AlmaLinux) cơ bản

Cài đặt và cấu hình Linux server (Ubuntu/AlmaLinux) cơ bản

Hướng dẫn cấu hình ban đầu cho Linux server Ubuntu/AlmaLinux: cập nhật, đặt hostname, múi giờ, swap và chuẩn hóa cấu hình cho người mới

Các câu lệnh Linux cần biết để quản trị VPS

Các câu lệnh Linux cần biết để quản trị VPS

Tổng hợp nhóm lệnh Linux thiết yếu cho quản trị VPS: file, quyền, gói phần mềm, mạng và tiến trình, kèm mẹo kết hợp lệnh cho người mới

Cài LEMP/LAMP stack để chạy website trên Linux

Cài LEMP/LAMP stack để chạy website trên Linux

Hướng dẫn cài LEMP (Nginx) hoặc LAMP (Apache) với PHP và MySQL/MariaDB để chạy website trên VPS Linux, kèm lưu ý tối ưu và bảo mật