Bài này hướng dẫn đẩy bản sao lưu của cPanel hoặc DirectAdmin sang Object Storage, để bản sao lưu không nằm cùng ổ đĩa với dữ liệu nó đang bảo vệ.
1. Bài này dành cho ai
Dành cho quý Khách hàng thuê VPS hoặc máy chủ riêng và tự cài cPanel/DirectAdmin, tức có quyền quản trị máy chủ: WHM với cPanel, hoặc tài khoản admin và quyền SSH với DirectAdmin.
Quý Khách hàng đang dùng hosting dùng chung của Cloudzone thì không làm theo bài này được, vì thiết lập nơi chứa bản sao lưu nằm ở mức quản trị máy chủ. Hai bài dưới đây mới là đường của quý Khách hàng:
2. Chuẩn bị
Cần một gói Object Storage và một cặp khoá, lấy trong Portal theo bài Bắt đầu với Object Storage.
Tạo một bucket riêng cho việc sao lưu, đừng dùng chung với bucket chứa ảnh hay tệp tĩnh của website. Tách ra thì sau này đặt quy tắc dọn riêng được, và xoá nhầm một bên không đụng bên kia.
3. cPanel: dùng đích “S3 Compatible” có sẵn trong WHM
WHM có sẵn kiểu đích S3 Compatible, không phải cài thêm gì. Đường đi: WHM → Backup → Backup Configuration → thẻ Additional Destinations, chọn S3 Compatible rồi bấm Create New Destination.
Điền như sau:
| Ô | Điền |
|---|---|
| Destination Name | tên tự đặt, ví dụ Cloudzone Object Storage |
| S3 Endpoint | object.cloudzone.vn |
| Bucket | tên bucket vừa tạo, ví dụ abc-sao-luu-hosting |
| Access Key ID | lấy trong Portal |
| Secret Access Key | lấy trong Portal |
| Folder | để trống, hoặc đặt tên máy chủ nếu nhiều máy đẩy chung một bucket |
| Timeout | nhận từ 30 tới 300 giây. Máy nhiều dữ liệu nên để 300 |
Ô Only use this destination for log file transfers thì không bật – bật là nó chỉ gửi nhật ký, không gửi bản sao lưu.
Về ô S3 Endpoint. WHM yêu cầu đây là tên miền đủ, khớp với chứng chỉ TLS, và nó gọi theo kiểu tên miền con – tức tên-bucket.object.cloudzone.vn. Chứng chỉ của Cloudzone có phủ dạng đó: đo ngày 25/10/2026, chứng chỉ ghi cả object.cloudzone.vn lẫn *.object.cloudzone.vn, và gọi thử theo kiểu tên miền con thì chứng chỉ hợp lệ. Nên chỉ cần điền tên miền trần, không thêm https://, không thêm tên bucket.
Điền xong bấm Save and Validate Destination. Nút này lưu rồi thử kết nối thật, nên nếu khoá sai hoặc tên bucket sai thì biết ngay tại chỗ, không phải chờ tới đêm.
4. 🔴 Chỗ sai hay gặp nhất: kiểu sao lưu Incremental
Ở thẻ chính của Backup Configuration có ba kiểu: Compressed, Uncompressed và Incremental.
Kiểu Incremental chỉ gửi được tới đích Rsync. Đang để Incremental mà khai đích S3 thì bản sao lưu vẫn chạy, vẫn nằm trên ổ đĩa máy chủ, nhưng không bao giờ sang kho – và không có cảnh báo nào nói rằng nó không sang.
Dùng Object Storage thì chọn Compressed (nén, tốn CPU lúc chạy nhưng tiết kiệm dung lượng kho) hoặc Uncompressed.
5. Lịch chạy và số bản giữ lại
Cũng ở Backup Configuration:
- Backup Daily / Weekly / Monthly – chọn nhịp và số bản giữ cho từng nhịp. Nếp thường dùng: giữ 7 bản ngày, 4 bản tuần, 3 bản tháng.
- Retention áp cho cả bản trên kho, không riêng bản trên ổ đĩa. WHM tự xoá bản cũ trên đích từ xa theo đúng số bản đã đặt.
- Maximum Backup Restoration Timeout và giờ chạy – đặt vào lúc máy rảnh nhất, thường 2 tới 4 giờ sáng.
Ước lượng dung lượng kho cần có: dung lượng một bản nén nhân với tổng số bản giữ lại của cả ba nhịp. Thiếu chỗ thì mua thêm trong Portal Cloudzone, dữ liệu và khoá giữ nguyên.
6. DirectAdmin: không có đích S3 sẵn, dùng móc sau sao lưu
Khác cPanel, DirectAdmin chưa có kiểu đích S3 trong phần sao lưu của quản trị viên – tài liệu chính thức chỉ có nơi chứa cục bộ và FTP. Cách gọn nhất là để DirectAdmin sao lưu vào thư mục cục bộ như bình thường, rồi dùng móc chạy sau khi sao lưu xong để đẩy lên kho bằng rclone.
Cài và khai cấu hình rclone theo bài Sao lưu máy chủ Linux lên Object Storage bằng rclone, phần khai remote tên cloudzone.
Trong DirectAdmin, đặt nơi chứa bản sao lưu là thư mục cục bộ, mặc định /home/admin/admin_backups. Rồi tạo tệp móc:
mkdir -p /usr/local/directadmin/scripts/custom
cat > /usr/local/directadmin/scripts/custom/user_backup_post.sh <<'EOF'
#!/bin/bash
set -euo pipefail
NGUON=/home/admin/admin_backups
KHO=cloudzone:abc-sao-luu-hosting/$(hostname -s)
NHAT_KY=/var/log/day-sao-luu-da.log
rclone copy "$NGUON" "$KHO" \
--log-file "$NHAT_KY" --log-level INFO \
--transfers 4 --retries 5
EOF
chmod 700 /usr/local/directadmin/scripts/custom/user_backup_post.sh
Hai điều cần biết về móc này:
user_backup_post.shchạy kể cả khi lượt sao lưu có lỗi. Muốn chỉ đẩy khi sao lưu sạch thì dùng thư mục móc/usr/local/directadmin/scripts/custom/user_backup_success/– móc đó chỉ chạy khi không có lỗi nào.- Còn có
user_backup_pre.shchạy trước, dừng được lượt sao lưu – hữu ích khi muốn chặn chạy lúc ổ đĩa gần đầy.
Dùng copy chứ không dùng sync: sync sẽ xoá trên kho những gì không còn trong thư mục cục bộ, mà thư mục cục bộ thì bị dọn liên tục.
7. Kiểm tra lượt chạy đầu tiên
Đừng chờ tới đêm. Chạy tay một lượt rồi nhìn tận mắt trên kho:
rclone ls cloudzone:abc-sao-luu-hosting | tail -20
rclone size cloudzone:abc-sao-luu-hosting
Đây là phép kiểm thật, vì nó đọc trên kho chứ không đọc nhật ký ở máy chủ. Thấy tệp mang ngày hôm nay và dung lượng đúng tầm thì lượt chạy đã sang đủ.
Với cPanel, nhật ký sao lưu nằm trong thư mục nhật ký của cPanel, tìm bằng:
ls -lt /usr/local/cpanel/logs/cpbackup/ | head
Với DirectAdmin, xem tệp nhật ký đã khai trong móc ở mục 6.
8. Khôi phục
Bản sao lưu chỉ có giá trị khi khôi phục được. Tải một bản về rồi khôi phục thử, trên máy khác chứ không phải máy đang chạy:
rclone copy cloudzone:abc-sao-luu-hosting/backup-10.25.2026_02-00-00_nguoidung.tar.gz /home/
Với cPanel, nạp tệp đó qua WHM → Backup → Backup Restoration. Với DirectAdmin, đặt tệp vào thư mục sao lưu rồi khôi phục trong Admin Backup/Transfer.
Mỗi quý nên thử một lần. Chưa khôi phục thử lần nào thì chưa biết mình có bản sao lưu hay không.
9. Câu hỏi thường gặp
Khai một đích cho nhiều máy chủ được không? Được, dùng chung một gói và một bucket, nhưng đặt ô Folder của mỗi máy một tên khác nhau, hoặc thêm $(hostname -s) vào đường đích như ví dụ DirectAdmin ở trên. Không tách thì các máy ghi đè lên nhau.
Bản sao lưu có được mã hoá không? Đường truyền thì có, vì endpoint chạy HTTPS. Còn tệp nằm trên kho thì không tự mã hoá. Cần mã hoá tại máy chủ trước khi đẩy thì xem mục 9 của bài rclone, phần rclone crypt – nhưng cách đó chỉ dùng được với đường DirectAdmin dùng rclone, không áp vào đích S3 Compatible của WHM.
WHM báo lỗi khi bấm Save and Validate Destination? Kiểm theo thứ tự: ô S3 Endpoint có để trần object.cloudzone.vn không, bucket đã tạo chưa và gõ có đúng không, cặp khoá còn hiệu lực không. Mã lỗi cụ thể thì xem bài Lỗi thường gặp khi kết nối Object Storage và cách xử lý.
Kho đầy thì sao? Lượt chuyển kế tiếp bị từ chối ghi, còn bản sao lưu cục bộ vẫn chạy. Giảm số bản giữ lại, hoặc mua thêm dung lượng trong Portal. Cách theo dõi dung lượng theo tháng có ở bài Dọn dữ liệu và giữ dung lượng Object Storage trong tầm kiểm soát.
Quý Khách hàng cần Cloudzone hỗ trợ dựng đường sao lưu cho máy chủ của mình, vui lòng nhắn qua ô chat trên trang Cloudzone.
Bài liên quan trong chuyên mục Object Storage
- Bắt đầu với Object Storage: lấy khoá kết nối và tạo bucket đầu tiên
- Tải lên, tải về và quản lý dữ liệu trên Object Storage
- Lỗi thường gặp khi kết nối Object Storage và cách xử lý
- Dọn dữ liệu và giữ dung lượng Object Storage trong tầm kiểm soát
- Sao lưu máy chủ Linux lên Object Storage bằng rclone
- Nối NAS Synology hoặc QNAP vào Object Storage
- Dùng Object Storage trong ứng dụng: PHP, Laravel, Python và Node.js
- Chuyển dữ liệu từ AWS S3, Wasabi hoặc kho S3 khác về Object Storage Cloudzone