RockyLinux9 By SystemArch_Alex

Rocky Linux 9 基礎教學 (27):檔案壓縮、歸檔與遠端同步技術

數據管理的藝術:從 Tar 到 Rsync

在日常維運中,檔案的打包與傳輸是最頻繁的操作。無論是備份配置檔、遷移網站資料,還是分發部署包,掌握高效的歸檔與同步技術能節省大量的磁碟空間與網路頻寬。Rocky Linux 9 支援多種壓縮演算法,每種都有其適用的場景。

1. Tar 歸檔工具:Linux 的標準規範

tar 本身只負責「打包」而不壓縮,通常會搭配 gzipxz 使用:

# 使用 gzip 壓縮 (速度快,壓縮比一般)
tar -czvf backup.tar.gz /etc/nginx

# 使用 xz 壓縮 (速度慢,壓縮比極高,適合長期存放)
tar -cjvf backup.tar.xz /var/log/httpd

# 解壓縮到指定目錄
tar -xzvf backup.tar.gz -c /tmp/restore
2. Zip 格式:跨平台的最佳選擇

如果你需要將檔案傳送給 Windows 使用者,zip 是最保險的選擇:

sudo dnf install zip unzip -y
zip -r project.zip /home/hank/project
unzip project.zip
3. Rsync:強大的遠端同步利器

相比於 scprsync 的優勢在於「增量備份」,它只會傳輸有變動的部分,並支援斷點續傳:

# 將本地目錄同步到遠端伺服器,並保持權限與時間戳記
rsync -avz --progress /data/ user@remote_ip:/backup/data/

# 鏡像同步 (刪除遠端有但本地已刪除的檔案)
rsync -avz --delete /data/ user@remote_ip:/backup/data/
4. 壓縮演算法的效能對比
  • Gzip:平衡性最好,適合大多數日常備份。
  • Bzip2:壓縮比優於 Gzip,但 CPU 消耗較大。
  • XZ:提供極致的壓縮率,常用於發佈軟體原始碼包,但壓縮過程非常耗時。
5. 實戰建議:自動化備份腳本

建議結合 find 指令與 tar 進行過期檔案清理。例如,只備份過去 24 小時內修改過的檔案:

find /var/www/html -mtime -1 -type f | xargs tar -cvzf daily_update.tar.gz

透過 rsync 搭配 SSH 金鑰,你可以輕鬆建立一個跨機房的自動化備份機制,確保數據在 Rocky Linux 9 上的絕對安全。