Centos近乎无损迁移服务器之tar打包迁移

目前只在centos 7上测试过。其他版本需要自行测试,理论上是没问题的。

【1】首先确保备份和还原的Centos内核版本一致,可以按照下述方法升级到最新内核。升级方法来源于互联网,升级是没有问题的。首先就是先备份一下原服务器的数据了,直接在控制台上创建服务器快照就可以了

【2】检查当前centos版本

cat /etc/redhat-release

【3】检查当前centos内核版本

uname -sr

【4】tar打包前推荐升级下全部软件

执行 yum update 升级,升级后重启下服务器

【5】升级 CentOS 7 内核,启用 ELRepo仓库

这是一个第三方仓库,可以将内核升级到最新主线稳定内核

启用该仓库

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

【6】执行安装最新的主线稳定内核

yum --enablerepo=elrepo-kernel install kernel-ml

【7】重启服务器

【8】设置 GRUB 默认的内核版本

为了让新安装的内核成为默认启动选项,你需要如下修改 GRUB 配置,打开并编辑  /etc/default/grub 并设置 GRUB_DEFAULT=0 意思是 GRUB 初始化页面的第一个内核将作为默认内核.

【9】重新创建内核配置(重要)

grub2-mkconfig -o /boot/grub2/grub.cfg

【10】重启机器,查看系统当前内核版本,验证最新的内核已作为默认内核

【11】删除 CentOS 更新后的旧内核

1、查看旧内核  rpm -qa | grep kernel

2、使用  yum remove 内核名  删除掉旧内核,注意不要删除刚升级的那个内核

【12】重启机器。

【13】(重要)在新机器上重复相同步骤,升级服务器内核,确保和原服务器的内核一直

【14】tar打包前先安装screen,打包的时候防止网络出现故障

yum install screen -y

【15】screen新建一个终端(下面的backup名字可以自己取)

screen -R backup

【16】具体screen用法这里不再描述,自行查找相关资料即可。

【17】在screen新建的终端里面定位到服务器根目录

cd /

【18】关闭所有服务器软件,例如MySQL、PHP、Nginx等等,能关的全部关掉

【19】然后粘贴下列命令

tar cvpzf backup.tgz / --warning=no-file-changed --exclude=/proc --exclude=/mnt --exclude=/sys --exclude=/dev --exclude=/tmp --exclude=/boot --exclude=/etc/inittab --exclude=/etc/fstab --exclude=/etc/init --exclude=/etc/X11 --exclude=/etc/sysconfig --exclude=/etc/xinetd --exclude=/backup.tgz

注:此处排除掉了很多系统目录,可能不完全,因为重新ssh后发现新机器的主机密钥更换了,不过问题不大。具体目录作用可以自行查找相关资料,可以自行添加其他目录。

多数据盘的没有进行相关测试,目测可能会出现异常!

另外,存在一定几率会导致有文件没备份,推荐多备份几次,看看文件大小是否差不多。第二次备份的时候注意排除掉上一次备份的文件哦!!!

【20】ssh连接新服务器,记录下硬盘的uuid,以防止异常。

cat /etc/fstab

【21】在新服务器上安装screen,新建终端进入。将备份文件上传到新服务器的根目录

【22】在终端里输入

cd /

tar xvpfz backup.tgz -C /

【23】解压文件后,执行

restorecon -Rv /

【24】查看硬盘的uuid是否发生更改,若更改,改回【22】步记录的uuid即可

【25】重启服务器,重新ssh,完全按照步骤走,主机密钥应该会发生变化。

【26】至此,本教程结束。

作者:龙云-LY
https://www.bilibili.com/read/cv10245440/
出处: bilibili
点赞

发表回复

电子邮件地址不会被公开。必填项已用 * 标注