Linux系統(tǒng)備份及還原全過程
一、Timeshift 是什么?
Timeshift 是一個用于 Linux 系統(tǒng)的開源系統(tǒng)還原工具,其功能類似于 Windows 的“系統(tǒng)還原”或 macOS 的 Time Machine。
它主要用于創(chuàng)建文件系統(tǒng)的快照(snapshots),以便在系統(tǒng)出現(xiàn)問題(如軟件崩潰、配置錯誤、更新失敗等)時,能夠快速回滾到之前正常工作的狀態(tài)。
主要特點(diǎn):
快照類型:
- RSYNC 模式:使用 rsync 和硬鏈接來創(chuàng)建快照,節(jié)省磁盤空間。
- BTRFS 模式(僅限 Btrfs 文件系統(tǒng)):利用 Btrfs 的子卷快照功能,效率更高、占用更少資源。
自動/手動快照:
- 可設(shè)置定時任務(wù)(如每天、每次啟動、每次升級前)自動創(chuàng)建快照。
- 也支持用戶手動觸發(fā)快照。
只備份系統(tǒng)文件:
- 默認(rèn)情況下,Timeshift 不會備份用戶數(shù)據(jù)(如文檔、圖片、下載等),只備份系統(tǒng)目錄等),以避免占用過多空間并專注于系統(tǒng)恢復(fù)。
圖形界面 + 命令行支持:
- 提供直觀的 GUI(基于 GTK),適合普通用戶。
- 也提供命令行工具`,適合高級用戶或腳本自動化。
安全回滾:
- 回滾操作會將整個系統(tǒng)恢復(fù)到快照時的狀態(tài),但保留當(dāng)前用戶的主目錄(除非特別指定)。
使用場景舉例:
- 升級系統(tǒng)后出現(xiàn)驅(qū)動不兼容 → 回滾到升級前的快照。
- 誤刪關(guān)鍵配置文件 → 從最近快照中恢復(fù)。
- 測試新軟件導(dǎo)致系統(tǒng)不穩(wěn)定 → 快速還原到干凈狀態(tài)。
1.安裝Timeshift(適合桌面用戶)
# Ubuntu sudo apt update sudo apt install timeshift # centos sudo yum install timeshift
2.圖形化備份
2.1啟動

快照類型一般選擇RSYNC。

快照位置選擇你的備份盤:

快照等級根據(jù)自己需求來,我一般是有需要才備份,所以禁用了自動備份。

備份目錄的話我是都選了

后面的篩選和Misc我都沒動,默認(rèn)即可


然后點(diǎn)擊創(chuàng)建(Create)即可生成如下快照

3.系統(tǒng)還原-圖形化界面操作
首先選擇要恢復(fù)的快照,然后點(diǎn)擊恢復(fù);

接著跳出界面:默認(rèn)下一步就行
4.系統(tǒng)還原-終端命令操作
# 備份 sudo timeshift --create --comments "快照名" #設(shè)置備份目標(biāo)目錄 #我們可以通過配置 /etc/timeshift/timeshift.json 中的 backup_device_uuid 來確定備份位置。 #通過如下命令可以查看磁盤 UUID : blkid cat /etc/fstab # 查看。查看已存在的快照 sudo timeshift --list # 刪除快照 sudo timeshift --delete --snapshot '2025-12-18_10-43-33' # 恢復(fù)。選擇上面已存在的其中一個快照進(jìn)行恢復(fù),如:快照'2025-12-18_09-32-13'。 # --skip-grub 表示不恢復(fù) GRUB 引導(dǎo)配置(通常推薦,除非你明確知道引導(dǎo)也壞了)。 sudo timeshift --restore --snapshot '2025-12-18_09-32-13' --skip-grub

二、使用rsync進(jìn)行增量和全量備份
rsync 是Linux下高效、靈活的文件同步與備份工具,支持本地和遠(yuǎn)程備份,適合定期增量備份。
操作步驟:
- 安裝rsync(如未安裝):
sudo apt install rsync(Debian/Ubuntu) sudo yum install rsync (CentOS/RHEL)
- 執(zhí)行全量備份到外部目錄或掛載設(shè)備:
sudo rsync -aAXv / --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /backup/location/
說明參數(shù)含義:
- -a:歸檔模式,保留權(quán)限、鏈接等
- -A:保留ACL屬性
- -X:保留擴(kuò)展屬性
- -v:顯示詳細(xì)過程
- –exclude:排除不必要的系統(tǒng)目錄
后續(xù)可配合cron定時執(zhí)行,實(shí)現(xiàn)自動增量備份。
三、使用tar打包系統(tǒng)鏡像
tar 是最基礎(chǔ)的歸檔工具,適合創(chuàng)建完整的系統(tǒng)快照,可用于緊急恢復(fù)。
操作步驟:
- 掛載一個外部存儲設(shè)備用于存放備份文件,例如掛載U盤到 /mnt/backup
- 進(jìn)入根目錄并運(yùn)行tar命令:
sudo tar -cvpzf /mnt/backup/system-backup-$(date +%Y%m%d).tar.gz \ --exclude=/proc \ --exclude=/lost+found \ --exclude=/sys \ --exclude=/dev \ --exclude=/backup* \ --exclude=/mnt \ --exclude=/media \ /
恢復(fù)時,將備份文件放在新系統(tǒng)中解壓:
sudo tar -xvpzf system-backup-20250405.tar.gz -C /restore/location/
注意:恢復(fù)前需確保目標(biāo)分區(qū)結(jié)構(gòu)已準(zhǔn)備就緒。
四、使用dd進(jìn)行磁盤級備份
dd 可以對整個磁盤或分區(qū)進(jìn)行位級復(fù)制,適用于創(chuàng)建完全一致的鏡像。
操作步驟:
- 查看磁盤信息:
lsblk 或 fdisk -l 找到源磁盤(如 /dev/sda)
- 將整個磁盤備份為鏡像文件:
sudo dd if=/dev/sda of=/mnt/backup/sda-backup.img bs=64K conv=noerror,sync
- 壓縮鏡像節(jié)省空間:
gzip /mnt/backup/sda-backup.img
- 恢復(fù)時反向操作:
sudo dd if=/path/to/sda-backup.img of=/dev/sda
注意:dd操作不可逆,務(wù)必確認(rèn)輸入輸出設(shè)備正確。
總結(jié)
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Ubuntu16.04環(huán)境下搭建FTP服務(wù)器的教程
這篇文章主要介紹了Ubuntu16.04搭建FTP服務(wù)器的教程,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-12-12
ubuntu環(huán)境下安裝memcache及啟動的方法
這篇文章主要介紹了ubuntu環(huán)境下安裝memcache及啟動的方法,結(jié)合實(shí)例形式簡單分析了ubuntu環(huán)境下memcache的安裝、啟動及簡單測試方法,需要的朋友可以參考下2018-03-03
安裝CentOS 6.x報錯"Disk sda contains BIOS RAID metadata"解決方法
今天在安裝CentOS6.2的時候,當(dāng)進(jìn)到檢測硬盤的時候,總是過不去,報錯如下: Disk sda contains BIOS RAID metadata, but is not part of any recognized BIOS RAID sets. Ignoring disk sda,真是不知如何解決,下面小編把我的思路分享到腳本之家平臺,需要的朋友參考下2019-11-11
在Ubuntu中如何查看網(wǎng)絡(luò)路由表詳解
這篇文章主要給大家介紹了關(guān)于在Ubuntu中如何查看網(wǎng)絡(luò)路由表的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用ubuntu具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-12-12
如何確保Apache?Flink流處理的數(shù)據(jù)一致性和可靠性
Apache?Flink通過其先進(jìn)的狀態(tài)管理、檢查點(diǎn)機(jī)制、時間語義和容錯策略,確保了在流處理中的高數(shù)據(jù)一致性和可靠性,本文詳細(xì)介紹了Flink中保證數(shù)據(jù)一致性和可靠性的機(jī)制,感興趣的朋友一起看看吧2024-08-08
apache啟用gzip壓縮的實(shí)現(xiàn)方法
對于部署在Linux服務(wù)器上的PHP程序,在服務(wù)器支持的情況下,我們建議你開啟使用Gzip Web壓縮,以前腳本之家介紹了iis中的開啟方法,這篇文章主要介紹了linux中apache的開啟方法2013-06-06
詳解firewall的規(guī)則設(shè)置與命令(白名單設(shè)置)
這篇文章主要介紹了詳解firewall的規(guī)則設(shè)置與命令(白名單設(shè)置),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11

