Ubuntu / Centos 系统备份及还原
*** 操作需谨慎。
最近使用Ubuntu系统做Docker部署实验,使用Centos系统做Kubernetes部署实验,每次安装后都会产生大量的安装记录和日志文件,如果想完全卸载重做又是一个非常麻烦的事,于是想是不是能像Windows那样,有个还原精灵?每次想要一个干净的机器只需要一把还原即可。
方案一(文件备份),手动归档根目录的所有必要目录到一个新的文件,如果太大可以拷贝到U盘:
cd /
sudo tar zcvpf backup.tar.gz --exclude=/proc --exclude=/lost+found --exclude=/mnt --exclude=/soft --exclude=/run/media --exclude=/data --exclude=/sys --exclude=backup.tar.gz /data/
命令解析: 先进入根目录,tar 用于文件打包压缩操作;z 表示使用gzip方式处理 ;c 表示创建一个文件;v 表示显示文件处理详情;p 表示保持文件的原权限;f 表示文件归档,后面紧跟文件名; --exclude表示排除项。最后放到/data/下面。
当系统需要还原时,再把该文件放回系统解压:
tar zxvpf backup.tar.gz -C/
命令解析:在backup文件同级目录,解压。z 表示使用gzip方式处理; x 表示解压; v 表示显示文件处理详情;p 表示保持文件的原权限;f 表示文件归档,后面紧跟文件名;-C 如果解压目标目录和当前目录不是同一目录,需要用-C指定一下,不然会报错。
sudo reboot
命令解析:待覆盖完成后,确保在你做其他任何事情之前,重新创建你剔除的目录,重启机器。
方案二(使用成熟的还原工具),使用TimeShift工具
安装:
Ubuntu系统:
sudo add-apt-repository -y ppa:teejee2008/ppa
sudo apt-get update
sudo apt-get install timeshift
命令解析:添加源码库的配置;更新本地配置;安装工具。
Centos系统:
下载压缩包,选择一个版本,如果是32位系统选择 timeshift*i386.run 格式的,如果是64位系统选择timeshift*amd64.run下载。或者使用我已经下载好的版本
链接:https://pan.baidu.com/s/1ahgi06s1hVbNtf9e8Xk9cQ
提取码:q9mr
安装压缩包
sudo sh ./timeshift*amd64.run # 64-bit
sudo sh ./timeshift*i386.run # 32-bit
卸载:
sudo apt-get remove timeshift
# 或
sudo timeshift-uninstall
使用:
安装完成后可以在应用列表中找快捷方式打开,或者直接执行timeshift-launcher打开应用。
下一步
选择一块存备份数据的硬盘,下一步
自定义备份策略,下一步
如果硬盘允许,建议勾选 “包含一切”,下一步
设置完成。
使用界面,点击创建
创建一个即时的快照
创建完成
还原到指定快照:
选定指定快照,点击恢复,一路next即可。