首先准备一个Live CD,就是Ubuntu的安装盘。

  备份原理就是将系统文件压缩打包。由于Linux系统所有都是文件,故,只需要将系统打包即可。当然,必须除了当前系统运行中的文件以及临时文件。

  打包有两种方式:a)直接需要打包的Linux系统下压缩打包(亲测,发现在打包最后会报错,不知会不会有问题),反正我是没有成功。b).使用Live USB

  接下来就是步骤了

  1、使用U盘启动,进入Live USB界面,点击试用。

  2、进入试用Ubuntu后,先获取root权限。

     sudo su

  在根目录下新建一个文件夹backup,用来挂载系统硬盘(/dev/sdb2,这是我的"/"主分区,应该也是系统所在的地方吧)。

     mount dev/sdb2 /backup/

  注意:sda1,sdb1按照fdisk -l查看的的实际情况替换。

  进入backup文件夹下查看是否挂载成功。如果挂载成功,文件夹下应该是要备份的Linux系统文件。

  压缩格式有很多,如果你的硬盘够大,建议使用低压缩格式,这样速度会很快。

  进入到backup备份系统目录下:

     tar cvpzf /backup/mnt/backup.tgz --exclude=./proc --exclude=./lost+found --exclude=./mnt --exclude=./sys --exclude=media ./

tar 是用来备份的程序
c - 新建一个备份文档
v - 详细模式, tar程序将在屏幕上实时输出所有信息。
p - 保存权限,并应用到所有文件。
z - 采用‘gzip’压缩备份文件,以减小备份文件体积。
f - 说明备份文件存放的路径

  解释:--exclude ,是排除压缩的文件。就是将不需要的文件排除。

  等待压缩完成。

  如果不是在本机上的话,要备份原始系统的配置文件,以及新安装系统的启动文件。

进入backup原始系统下,备份系统配置文件fstab fstab.d

cd /backup/etc/

cp -pdr fstab fstab.d /restore/backsrc/

进入restore/还原目录下,备份系统启动文件grub.cfg.主要是用来获取新硬盘的UUID号,替换备份系统的内的UUID,不然在新硬盘上系统无法启动!

cd /restrore/boot/

cp -pdr grub.cfg /restore/backsrc/

G.解压缩,还原系统到新硬盘下.

tar -xvpzf /restore/backsrc/backup.tgz -C /restore/

H.替换刚刚备份的系统配置文件,以及修改启动文件中的UUID:

替换:

cp -fdr /restore/backsrc/fstab fstab.d /restore/etc/

修改:

打开/restore/backsrc/grup.cfg

复制里面的UUID

打开/restore/boot/grup.cfg,将里面的UUID全部替换。

现在一切还原完成。关闭电脑,拔掉U盘,拔掉旧的备份硬盘。重启电脑!

完毕!!!

  我们继续,进入backup原始系统下,备份系统配置文件fstab fstab.d

    cd /backup/etc/

    cp -pdr fstab fstab.d /backup/mnt/

  我的电脑上没有fstab.d,但最后也成功了

  解压缩,还原系统到新硬盘下.

   注意!!!因为 tar还原是只会覆盖相同的文件,但是这种方法只是恢复备份时的文件,就是说如果某些文件丢失或损坏了,这样可以恢复修复这些文件,但不能删除自备份到恢复前这期间所生成的其它文件,说白了就是假如你备份系统时有1234这四个文件,如果三天后,由于某些原因变成了1234'5(4改变了),你恢复后,就会变成12345,其中4'恢复成备份时的文件,5保留。所以大家要是想彻底还原成备份时候的样子最好彻底删除根目录下的所有文件,然后在还原,这样就可以还原成备份时的样子了。

  Linux 中美妙的事情之一就是在系统正在运行的情况下可以进行还原操作,而不需要启动光盘或者其他任何乱七八糟的东西。当然,如果您的系统已经崩溃,那您必须选择 使用live CD,但是结果还是一样。

    tar -xvpzf /backup/mnt/backup.tgz -C /backup/

******************************************************************

好了,言归正传。这是我要用的命令,如果你的备份不是在和我一样的位置的位置的话,那请相应地修改/mnt/backup.tgz这一点:

tar -xvpzf /mnt/backup.tgz -C /

如果您使用的是bz2压缩的:

tar -xvpjf /mnt/backup.tar.bz2 -C /

如果系统已经崩溃可以使用Live usb登录,然后

mkdir /tmp/root
mount /dev/sdb2 /tmp/root

tar -xvpjf /tmp/root/mnt/backup.tar.bz2 -C /tmp/root

当然,恢复前可以先rm -rf /tmp/root/* 一下,这样就干干净净了。(就是之前说的删除根目录下的所有文件)

这个只是在本机上还原,如果是还原到别的机子上记得修改fstab文件。(可能还需要安装grub)

恢复命令结束时,你的工作还没完成,别忘了重新创建那些在备份时被排除在外的目录:
# mkdir proc
# mkdir lost+found
# mkdir mnt
# mkdir sys
# mkdir media
等等

********************************************************

  现在一切还原完成。关闭电脑,拔掉U盘,重启电脑!

Ubuntu16.04系统重装***的更多相关文章

  1. Python3.6+nginx+uwsgi部署Django程序到阿里云Ubuntu16.04系统

    Python3.6+nginx+uwsgi部署Django程序到阿里云Ubuntu16.04系统 这个是写好的Django程序在本地机运行的情况,一个查询接口. 准备工作 1.首先购买一台阿里云的EC ...

  2. Ubuntu16.04系统美化、常用软件安装等,长期更新

    Ubuntu16.04系统美化.常用软件安装等,长期更新 IT之家啊 18-09-0915:00 因为我个人偏向于玩VPS.服务器之类的东西,所以一般我都是用CentOS.不过对于桌面版的Linux, ...

  3. ubuntu16.04系统精简

    ubuntu16.04系统精简 一.更新系统 apt-get update apt-get dist-upgrade 二.查看所有内核 sudo dpkg --get-selections |grep ...

  4. Ubuntu16.04系统中不同版本Python之间的转换

    Ubuntu系统自带的版本是2.7.12 安装好python3.6之后,改变一下Python的优先级(需要root权限). 在使用下面这个命令查看电脑里面有几个Python版本 update-alte ...

  5. 虚拟机桥接模式下多台Ubuntu16.04系统互相连接

    1.首先新建一个虚拟机并在该虚拟机上安装Ubuntu16.04系统.为这台虚拟机起名为Ubuntu3. 2.对Ubuntu3进行克隆,为新克隆生成的虚拟机起名为Ubuntu2.(这时我们会发现Ubun ...

  6. ubuntu16.04系统深度学习开发环境、常用软件环境(如vscode、wine QQ、 360wifi驱动(第三代暂无))搭建相关资料

    事后补充比较全面的(找对资料真的省一半功夫):https://www.jianshu.com/p/5b708817f5d8?from=groupmessage Ubuntu16.04 + 1080Ti ...

  7. Ubuntu16.04系统Python3相关环境或模块安装

    前提:一般用户安装都命令前都需要sudo ,或者在root用户下 1.Ubuntu 16.04 安装PyCharm Ubuntu 16.04 安装PyCharm 本文通过第三方源安装PyCharm,好 ...

  8. Ubuntu16.04系统下 解决“无法获得锁 /var/lib/dpkg/lock -open (11:资源暂时不可用)、无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?”的方法

    在Ubuntu16.04下安装软件,例如:sudo apt-get install lrzsz时提示: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用) 无法 ...

  9. ubuntu16.04系统彻底卸载mysql,并源码免编译重装MySQL的步骤

    今天的总结 ubuntu上彻底卸载MySQL或重新安装 https://www.jianshu.com/p/974b33873bca #查看是否存在mysql服务 service mysql stat ...

随机推荐

  1. ubuntu apt-get failed

    Err http://mirrors.163.com/ubuntu/ trusty/main libtinfo-dev i386 5.9+20140118-1ubuntu1 Could not res ...

  2. python 网络数据采集1

    python3 网络数据采集1 第一部分: 一.可靠的网络连接: 使用库: python标准库: urllib python第三方库:BeautifulSoup 安装:pip3 install  be ...

  3. 九度OJ1205题-递归求解问题

    题目1205:N阶楼梯上楼问题 时间限制:1 秒 内存限制:128 兆 特殊判题:否 提交:5887 解决:2446 题目描述: N阶楼梯上楼问题:一次可以走两阶或一阶,问有多少种上楼方式.(要求采用 ...

  4. MAC使用pycharm上传代码到Github上

    本人的电脑已经在GitHub中添加成功了SSH keys! 以下为在pycharm中上传代码到Github的步骤. Step1:打开pycharm,preferences---plugins(插件)选 ...

  5. dp——环形石子合并(区间dp)

    环形的解决很巧妙 #include <iostream> #include <cstring> #include <string> #include <map ...

  6. xdoj-1211 (尧老师要教孩子解方程) :多项式除法

    想法: 1 由于所有a[i] 是不为0的整数 所以解x是整数 2 其次解是an的约数 3 分解a[n] 用多项式除法判断约数是否为整式的解 #include<cstdio> #includ ...

  7. 安装Ubuntu16.04与windows10双系统后,如何修改启动默认设置

    在安装了Ubuntu16.04系统之后,系统会默认自启动Ubuntu16.04,而我们大多数情况下可能都在使用windows系统,不修改默认设置,不经意间便会启动了Ubuntu16.04,通过我的经历 ...

  8. ubuntu安装mysql遇到的问题

    ERROR 1698 (28000): Access denied for user 'root'@'localhost' ubantu linux下安装新版mysql,登录时必须sudo mysql ...

  9. Next generation configuration mgmt

    转自:https://purpleidea.com/blog/2016/01/18/next-generation-configuration-mgmt/ It’s no secret to the ...

  10. zeebe 为微服务架构的工作流引擎

    zeebe 是灵活.轻量的基于微服务架构的工作流引擎 包含以下特性: 可视化的额工作流 审计日志以及历史 水平缩放 持久化&&容错 消息驱动 操作容易 语言无关 工作流基于标准bpmn ...