Centos 7 tar备份迁移系统

  • 890 字
  1. 1. 说明
  2. 2. 备份
    1. 2.1. tar 压缩打包
  3. 3. 搭建
  4. 4. 恢复
    1. 4.1. 进入新主机系统,并将迁移系统中 backup.tgz 拷贝至当前主机根目录下
    2. 4.2. 恢复 SELinux 文件属性
    3. 4.3. 修改 UUID
    4. 4.4. 完成

说明

最近新进了一家公司,公司把 2 台 PC 电脑装了个 vm workstation 然后当内部测试服务器用,我本着物尽其用压榨性能的方法,就把其中一台装了个 esxi,原本想把所有 vm 虚拟机都迁移过来的发现其中一台虚拟机当时设置的是 700GB!!,没看错是 700GB,然而实际实用才 5GB,就想着把重做了,但是上面环境各种复杂,准备开搞的时候就被派去搞监控平台了,今天刚好闲着,就决定把他搞定,为了让自己轻松点决定采用 tar 方式迁移(其实我懒不想理环境),这样也可以减少对原来服务器上的环境破坏,省事!
不多说开始干

备份

tar 压缩打包

进入需要迁移的服务器,执行下面命令:


cd /

tar cvpzf backup.tgz / --warning=no-file-changed --exclude=/proc --exclude=/mnt --exclude=/sys --exclude=/dev --exclude=/tmp --exclude=/backup.tgz

注:
–warning=no-file-changed 表示忽略掉当前文件变化导致备份失败的错误
–exclude 表示排除不需要备份的文件和目录

搭建

在新主机上安装好系统,并记录硬盘 uuid 或/etc/fstab 中的参数

查看硬盘 uuid


blkid

查看/etc/fstab 内容


cat /etc/fstab

恢复

进入新主机系统,并将迁移系统中 backup.tgz 拷贝至当前主机根目录下


cd /

tar xvpfz backup.tgz -C / etc home run usr var root

恢复 SELinux 文件属性


restorecon -Rv /etc /home /run /usr /var /root

修改 UUID

修改 /etc/fstab 文件,恢复到之前的记录

完成

在启动一个终端,ssh 连接新主机,如果能连接上来说明迁移成功,最后重启系统