Trong hướng dẫn này, bạn sẽ học cách thiết lập lịch sao lưu (backup) tự động cho các tệp log trên máy chủ Linux bằng công cụ cron. Việc lên lịch sao lưu định kỳ giúp đảm bảo an toàn cho dữ liệu log, thuận tiện cho việc phân tích lỗi và đáp ứng các tiêu chuẩn bảo mật. Bài viết sẽ sử dụng một script bash đơn giản để thực hiện việc sao lưu và cấu hình cron để tự động chạy theo thời gian đã định.
Yêu cầu
- Máy chủ Linux (Ubuntu, CentOS, hoặc tương tự).
- Quyền root hoặc sudo.
- Một thư mục chứa tệp log cần backup (ví dụ:
/var/log). - Không gian lưu trữ đủ trên máy chủ hoặc dịch vụ lưu trữ từ xa (như AWS S3).
Các bước thiết lập backup log định kỳ bằng Cron
Bước 1: Tạo thư mục lưu trữ backup
Trước tiên, bạn cần tạo một thư mục để lưu trữ các bản sao lưu log.
sudo mkdir -p /backup/logs#!/bin/bash # Định nghĩa các biến LOG_DIR="/var/log" # Thư mục chứa log BACKUP_DIR="/backup/logs" # Thư mục lưu trữ backup DATE=$(date +%Y%m%d_%H%M%S) # Định dạng ngày giờ (VD: 20251016_161803) BACKUP_NAME="logs_$DATE.tar.gz" # Tên file backup # Tạo file nén chứa tất cả log tar -czf "$BACKUP_DIR/$BACKUP_NAME" -C "$LOG_DIR" . # Xóa các bản backup cũ hơn 7 ngày find "$BACKUP_DIR" -name "logs_*.tar.gz" -mtime +7 -delete
Cấp quyền thực thi cho script:
chmod +x /usr/local/bin/backup_logs.sh
Bước 2: Cấu hình cron
Sử dụng crontab để lập lịch chạy kịch bản định kỳ (ví dụ: hàng ngày lúc 3h sáng).
crontab -eThêm dòng sau vào file crontab để chạy script backup hàng ngày vào lúc 3:00 sáng:
0 3 * * * /usr/local/bin/backup_logs.shÝ nghĩa: Lệnh cron này sẽ chạy kịch bản tự động vào lúc 3 giờ sáng (00:03) mỗi ngày.
Sau khi thêm dòng lệnh vào crontab, nhấn Ctrl + O để lưu, rồi Ctrl + X để thoát trình chỉnh sửa.

Bước 3: Kiểm tra và giám sát
Kiểm tra trạng thái cron:
systemctl status cron
Xem log cron để xác minh:
grep CRON /var/log/syslog
Kiểm tra thư mục backup:
ls -lh /backup/logs/
Bước 4: Kiểm tra lịch sử backup
Xem tệp log backup:
cat /backup/logs/backup_log.txtSử dụng Cron để lên lịch backup log định kỳ là một cách hiệu quả để tự động hóa quản lý log trên hệ thống Linux. Với script đơn giản và Cron, bạn có thể tiết kiệm thời gian, giảm nguy cơ mất dữ liệu log và giữ cho hệ thống gọn gàng. Nếu bạn cần thêm hướng dẫn, như cách tích hợp backup với dịch vụ đám mây (AWS S3, Google Drive) hoặc tối ưu hóa script, hãy để lại câu hỏi!
Nếu bạn muốn tôi tạo hình ảnh minh họa cho bài blog (ví dụ: sơ đồ quy trình backup), hãy xác nhận để tôi thực hiện. Để biết thêm thông tin hoặc hỗ trợ, bạn có thể truy cập https://x.ai/grok.
Công Ty TNHH VPSMMOCLOUD
- VP: D19 Đường Số 5, KDC Văn Hóa Tây Đô, Phường Hưng Thạnh, Quận Cái Răng, Thành phố Cần Thơ, Việt Nam
- Mail: info@muavpsgiare.vn
- Tel: 0939.569.415

