📖 SUSE Linux 伺服器備份與還原

分類:伺服器管理 | 作者:pake | 發布時間:2024-09-13 14:17

SUSE Linux 伺服器備份與還原機制

伺服器備份與還原是確保系統可靠性與資料安全的重要策略。SUSE Linux (openSUSE / SLE) 可透過 tarrsyncSnapperBacula 等工具,並結合 Btrfs 快照實現完整、差異與增量備份,以及 Snapshots 基於檔案系統的快速還原。


目錄

  1. 備份概述
  2. 完整備份 (Full Backup)
  3. 差異備份 (Differential Backup)
  4. 增量備份 (Incremental Backup)
  5. 使用 rsync 進行高效能備份
  6. Btrfs Snapper 快照備份
  7. 使用 Bacula 自動化備份
  8. 資料庫備份
  9. 備份還原測試
  10. 結語

備份概述

為何需要備份?

備份類型

  1. 完整備份 (Full Backup):備份所有指定資料
  2. 差異備份 (Differential Backup):備份自上次完整備份後有變更的檔案
  3. 增量備份 (Incremental Backup):備份自上次任何備份後變更的檔案

完整備份 (Full Backup)

使用 tar

sudo tar -cvpzf /backup/full_backup_$(date +%F).tar.gz   --exclude=/backup --one-file-system /

使用 rsync

sudo rsync -a --delete / /backup/full_backup/

差異備份 (Differential Backup)

sudo tar -cvpzf /backup/differential_$(date +%F).tar.gz   --newer-mtime="$(date -d '7 days ago' +%F)" /

或:

sudo rsync -a --compare-dest=/backup/full_backup/ / /backup/differential_backup/

增量備份 (Incremental Backup)

sudo tar -cvpzf /backup/incremental_$(date +%F_%H%M%S).tar.gz   --listed-incremental=/backup/incremental.snar /

或:

sudo rsync -a --backup --backup-dir=/backup/incremental_$(date +%F)   / /backup/full_backup/

使用 rsync 進行高效能備份


Btrfs Snapper 快照備份

openSUSE 預設 Btrfs 作為根檔案系統,可利用 Snapper 建立和管理快照。

  1. 安裝 Snapper
    sudo zypper install snapper
  2. 初始化快照配置
    sudo snapper -c root create-config /
  3. 建立手動快照
    sudo snapper -c root create --description "Pre-upgrade snapshot"
  4. 列出快照
    sudo snapper -c root list
  5. 還原資料檔案
    sudo snapper -c root undochange <snapshot_id> -- /path/to/file
  6. 自動快照策略 (/etc/snapper/configs/root 可設定 hourly, daily, weekly)

使用 Bacula 自動化備份

Bacula 是企業級備份解決方案。

  1. 安裝
    sudo zypper install bacula-server bacula-client
  2. 配置 Director (bacula-dir.conf)
  3. 配置 Storage (bacula-sd.conf)
  4. 啟動服務
    sudo systemctl enable --now bacula-dir bacula-sd bacula-fd
  5. 執行備份
    bconsole
    run job=BackupClient1

資料庫備份

MariaDB / MySQL

sudo mysqldump -u root -p --all-databases > /backup/mysql_$(date +%F).sql

PostgreSQL

sudo pg_dumpall -U postgres > /backup/pgsql_$(date +%F).sql

備份還原測試


結語

本指南介紹 SUSE Linux 上多種備份與還原機制:tarrsync、Btrfs Snapper、Bacula 以及資料庫備份。建議結合快照與備份排程,確保系統與資料的可靠性與安全性。

⬅ 上一篇 下一篇 ➡
🔙 返回 伺服器管理 📚 返回教學列表 🏠 返回首頁