Ubuntu系统全盘备份,解决了恢复系统后开机引导丢失的问题。
现在有很多关于ubuntu备份的博客,但是通过测试直接能用的不多,很多都会遇到各种问题。本人参考科大一小僧的博客,再加上自己解决了备份过程中的一些问题,在这里把这种完整可用的备份ubuntu16.04的方法提供给大家。
由于ubuntu系统的特点,用户对几乎全部的系统文件都有访问和更改的权限。在实际使用过程中,需要进行各种环境的配置,经常需要更改系统文件。有时候我们可能会误删文件导致系统崩溃,此外我们还有可能把代码或者其一些重要的资源误删。因此我们有备份系统的需要,遇到解决不了的问题,可以通过这种方式避免重装系统时繁琐的环境配置。此方法还适用于需要快速配置系统的情况,例如同样的系统环境配置需要应用于多台相同功能的机器人。
第一步:备份系统
$cd /
$sudo su
$tar cvpzf backup.tgz --exclude=/proc --exclude=/lost+found --exclude=/backup.tgz --exclude=/mnt --exclude=/sys --exclude=/media /
如果出现:
tar: Error exit delayed from previous errors
忽略即可。
$cp /backup.tgz <U盘dir>
等待执行完毕。
这里在打包的过程中排除了一些不需要备份,或者与新系统文件冲突的文件,不需要了解这些文件的具体作用。我们会得到一个名为backup.tgz的压缩文件,这个文件包含我们需要备份的系统的全部内容。
第二步:重装干净的Ubuntu系统
使用ubuntu启动盘重新安装系统,这一步的目的是自动分配存储空间和挂载,如果你会手动完成这两个任务则不需要重装系统,对于Ubuntu不太熟悉的朋友可以照做即可,这个系统在安装后会被我们删除,因此不需要连接网络,也不需要在安装时安装第三方程序。
第三步:系统恢复
1.开机按F10进入boost,选择启动盘启动,再选择try ubuntu without installing。
2.终端输入:
<span style="color:#ffffff">$ cd /media/(U盘)
在tryUbuntu根目录下有media文件夹,里面是U盘文件夹和新安装的系统文件夹,在在里分别用(U盘)和(UBUNTU)表示
$ sudo su
# mount -o remount rw ./
# sudo cp /media/(Ubuntu)/boot/grub/grub.cfg ./
将新系统根目录下/boot/grub/grub.cfg文件备份到U盘中
# sudo cp /media/(UBUNTU)/etc/fstab ./
将新系统根目录下/etc/fstab文件备份到U盘中
fstab是与系统开机挂载有关的文件,grub.cfg是与开机引导有关的文件,所以这一步至关重要
# cd /media/(UBUNTU)
# sudo rm -rf ./*
这一步删除新装ubuntu全部的系统文件,有用的fstab及grub.cfg已经备份
# cp /media/(U盘)/backup.tgz ./
将U盘中backup.tgz复制到该目录下
# sudo tar xvpfz backup.tgz
解压缩
# sudo mkdir proc lost+found mnt sys media
创建打包系统时排除的文件</span>
这一步完成后,在用我们在新系统中备份的fatab及grub.cfg文件去替换压缩包中解压出来的同名文件,sudo reboot 重启后就发现系统已经恢复到备份时的状态,包括各种框架,环境,系统设置..................