(ㄧ)壓縮資料夾
Step1)建立完整備份與快照檔,備份資料夾data,快照檔為data.snar,備份後壓縮檔為data0701.tgz
$ gtar -g data.snar -zcvf data0701.tgz data
Step2)複製基礎快照,保護data.snar不被寫入新紀錄
$ cp data.snar today.snar
Step3)執行差異性備份(gtar 會比對 today.snar,並把刪除的檔案標記起來),備份檔為data_diff_$(date +%F).tgz
$ gtar -g today.snar -zcvf data_diff_$(date +%F).tgz data
Step4)刪除暫存快照檔
$ rm today.snar
(二)還原資料夾
Step1)建立還原資料夾bak
$ mkdir bak
Step2)解壓完整備份到資料夾bak,並啟用增量還原機制
$ gtar -g /dev/null -zxvf data0701.tgz -C bak
Step3)疊加最新的差異備份(gtar 讀到刪除標記,會自動把已刪除檔案刪掉)
$ gtar -g /dev/null -zxvf data_diff_2026-07-01.tgz -C bak
(三)建立shell script進行差異性備份
(四)還原到指定的時間
Step1)建立還原目錄
$ mkdir data_restore
Step2)先解壓完整備份
$ gtar -g /dev/null -zxvf backupdata/backup_full.tgz -C data_restore
Step3) 再疊加指定時間點的差異備份(已被刪除的檔案在此步會自動消失)
$ gtar -g /dev/null -zxvf backupdata/backup_diff_2026-07-01_120000.tgz -C data_restore