zoukankan      html  css  js  c++  java
  • 利用tar备份恢复系统节点

    公司有几台测试环境的工作站,每次玩坏了。都要重做系统,我系统都快安装吐了。因为实体机无法做快照。所以只能备份了。CentOS的备份和恢复其实非常简单,我们只要把全部文件用TAR打包就行,下次需要恢复的适合再解压开覆盖就可以了。

    备份环境:
    实体机HP工作站
    新安装的centos7.7
    系统最小化安装

    一、备份


    1、使用tar命令备份


    tar打包命令的特点:

    保留权限
    适合备份整个目录
    可以选择不同的压缩方式
    如果选择不压缩还能实现增量备份,部份还原,参考man tar
    因为Linux类系统不像windows,它不会限制ROOT用户存取任何东西,因此完全可以把一个分区上全部文件都存放入一个TAR文件中。

    下面是备份过程

    首先使用ROOT权限登陆系统,然后执行:

    进入根目录

    cd /

    然后执行下面的完整备份命令(建议新建一个screen来执行,防止网络中断):

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

    下面详解下这个命令:

    tar 是用于打包文件的命令。
    cvpfz 是tar的选项,分别是“创建档案文件”、“保持权限”(保留所有东西原来的权限)、“使用gzip来减小文件尺寸”。
    backup.gz 是我们作为备份文件的文件名。
    “/” 是我们要备份的目录,/代表的是整个文件系统。
    2、排除不必要的目录
    在 备份文件名“backup.gz”和要备份的目录名“/”之间给出了备份时必须排除在外的目录。有些目录是无用的,

    例如“/proc”、“/lost+ found”、“/sys”。
    当然“backup.gz”这个备份文件本身必须排除在外,不然就无限循环了。
    另外如果不把“/mnt”排 除在外,那么挂载在“/mnt”上的其它分区也会被备份。
    另外需要确认一下“/media”上没有挂载任何东西(例如光盘、移动硬盘),如果有挂载东西, 必须把“/media”也排除在外。

    执行备份命令后,如果文件比较多可能需要很长时间,备份完成后,在文件系统的根目录将生成一个名为“backup.tgz”的文件,它的尺寸有可能非常大。现在你可以把它烧录到DVD上或者放到你认为安全的地方去。
    在备份命令结束时你可能会看到这样一个提示:’tar: Error exit delayed from previous errors’,多数情况下你可以忽略它。

    3、打包并压缩-备份
    也可以用Bzip2来压缩文件,Bzip2比gzip的压缩率高,但是速度慢一些。如果压缩率对你来说很重要,那么你应该使用Bzip2,用“j”代替命令中的“z”,并且给档案文件一个正确的扩展名“bz2”。完整的命令如下:

    tar cvpjf backup.tar.bz2 / --exclude=/proc --exclude=/lost+found --exclude=/backup.tar.bz2 --exclude=/mnt --exclude=/sys

    4、报错处理
    tar: /: 在我们读入文件时文件发生了变化。是因为tar: 由于前次错误,将以上次的错误状态退出

    解决:删除不完整的备份文件,重启系统,再执行备份命令

    5、备份完成演示


    二、恢复


    恢复系统其实非常简单,就是把之前打包的文件覆盖回去就是了。

    首先登陆为root用户,然后把之前备份的文件“backup.tgz”拷贝到分区的根目录下。
    Linux中可以在一个运行的系统中恢复系统,不需要用boot-cd来专门引导。当然如果系统已经无法启动, 那就只能先重装一下系统,再来恢复。

    1、tar恢复
    使用下面的命令来恢复系统(同样建议新建个screen):

    tar xvpfz backup.tgz -C /

    2、Bzip2压缩备份恢复
    如果备份文件是使用Bzip2压缩的,那就用:

    tar xvpfj backup.tar.bz2 -C /

    注意:上面的命令会用备份文件中的文件覆盖分区上的所有文件。 是所有文件,所以你要清楚你在操作什么
    执行恢复命令一般需要比较长时间来解包覆盖,所以一般建议开个screen来防止掉线。

    3、新建备份时排除的文件夹
    恢复命令结束时,你的工作还没完成,别忘了重新创建那些在备份时被排除在外的目录:

    mkdir proc
    mkdir lost+found
    mkdir mnt
    mkdir sys
    /proc 权限:文件所有者:root群组:root 所有者:读取 执行 群组:读取 执行 其它:读取 执行
    /lost+found 权限:文件所有者:root群组:root 所有者:读取 写入 执行 群组:读取 执行 其它:读取 执行
    /mnt 权限:文件所有者:root群组:root 所有者:读取 写入 执行 群组:读取 执行 其它:读取 执行
    /sys 权限:文件所有者:root群组:root 所有者:读取 写入 执行 群组:读取 执行 其它:读取 执行


    4、恢复为原来的 SELinux Type


    然后执行

    restorecon -Rv /

    解释:restorecon:恢复为原来的 SELinux Type

    参数:

    -R:连同子目录一起修改
    -v:将过程显示到屏幕上

    原文:https://blog.csdn.net/annita2019/article/details/105242723

  • 相关阅读:
    HDU 1025:Constructing Roads In JGShining's Kingdom(LIS+二分优化)
    HDU 3938:Portal(并查集+离线处理)
    HDU 1811:Rank of Tetris(并查集+拓扑排序)
    HDU 1074:Doing Homework(状压DP)
    HDU 1024:Max Sum Plus Plus(DP)
    最最最亲爱哒
    hlg-1332 买电脑 ---二分
    时间过得很快
    0514
    hlg1551Assemble--暴力求解
  • 原文地址:https://www.cnblogs.com/soymilk2019/p/13539579.html
Copyright © 2011-2022 走看看