Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> 關於 Linux

Linux 網站備份新選擇:Bup (Git 為基礎) 增量備份、去重、還原與遠端同步完整教學

編輯:關於 Linux

Bup (Backup) 基於 Git 封包格式,支援增量備份、全域去重、壓縮、加密、遠端 SSH 推送、掛載瀏覽、Web 介面。比 rsync 更省空間,比 tar 更靈活。本文從安裝、初始化、備份、還原、遠端同步、掛載瀏覽、定時自動化完整示範。

安裝 (CentOS 7/8、RHEL、Rocky、Alma)

# 啟用 EPEL
yum install -y epel-release
# 安裝依賴
yum install -y git python3 python3-devel fuse3-libs libacl-devel \
    python3-pyxattr python3-llfuse perl-Time-HiRes \
    gcc make automake autoconf libtool
# 編譯安裝 (或 yum install bup 若倉庫有新版)
git clone https://github.com/bup/bup.git
cd bup
./configure && make && make test && make install
# 驗證
bup version

初始化倉庫與首次備份

# 1. 初始化 (預設 ~/.bup,可用 BUP_DIR 變更)
export BUP_DIR=/mnt/backup/bup-repo
bup init

# 2. 建立索引 (掃描檔案屬性、計算 SHA1)
bup index /var/www/html

# 3. 儲存快照 (命名為 web-YYYYMMDD)
bup save -n web-$(date +%Y%m%d) /var/www/html

# 4. 查看備份列表
bup ls
bup ls web-20240115

增量備份與去重原理

  • bup index 比對檔案 mtime/size/inode,僅針對變更檔案計算新 blob。
  • bup save 將 blob 打包成 Git packfile,自動去重 (同內容不同路徑/時間只存一份)。
  • 空間效率極高:每日備份僅增量佔用空間。

遠端備份 (SSH 推送)

# 遠端需同樣安裝 bup,且 SSH 免密碼登入
bup index /var/www/html
bup save -r user@backup-server:/mnt/bup-repo -n web-$(date +%Y%m%d) /var/www/html

還原與瀏覽

需求指令
還原最新快照到當前目錄bup restore -C ./restore web/latest
還原指定日期快照bup restore -C /tmp/old web-20240115
還原單一檔案bup restore -C /tmp/web-20240115/var/www/html/index.php
掛載倉庫瀏覽 (FUSE)mkdir /mnt/bup-fuse && bup fuse /mnt/bup-fuse
Web 介面 (預設 8080)bup web 或 bup web :8181

自動化腳本 /root/bup_backup.sh

#!/bin/bash
set -euo pipefail
export BUP_DIR=/mnt/backup/bup-repo
export BUP_REMOTE=user@offsite:/mnt/bup-repo

bup index /var/www/html
bup save -n web-$(date +%Y%m%d) /var/www/html
# 同步到遠端
bup save -r "$BUP_REMOTE" -n web-$(date +%Y%m%d) /var/www/html

# 可選:清理超過 30 天的快照 (需手動實作,bup 無內建保留策略)
# bup ls | grep '^web-' | sort | head -n -30 | xargs -r bup rm -r
chmod +x /root/bup_backup.sh
# /etc/cron.d/bup_backup
30 2 * * * root /root/bup_backup.sh >> /var/log/bup_backup.log 2>&1

優缺點總結

優點缺點
全域去重、增量極省空間單檔還原需掛載或 restore 稍慢
Git 格式開放、可驗證完整性無內建保留策略/刪除快照指令 (需手動)
支援遠端 SSH、FUSE 掛載、Web UI大倉庫 (TB 級) 索引耗時較久
可跨平台 (Linux/macOS/WSL)Windows 原生支援較弱

Bup 將 Git 的版控能力延伸至備份領域,是追求空間效率與版本追溯的優秀選擇。

Copyright © Windows教程網 All Rights Reserved