一、Linux 在线迁移(Powered on remote Linux machine)原理:
二、迁移前准备(源 CentOS,必做)
1、网络与 SSH
# 1. 开机自启+启动sshdsystemctl enable --now sshd# 2. 允许root登录(Converter必须)sed -i 's/^#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_configsed -i 's/^PermitRootLogin no/PermitRootLogin yes/' /etc/ssh/sshd_configsystemctl restart sshd# 3. 防火墙放行22firewall-cmd --permanent --add-service=sshfirewall-cmd --permanent --add-port=22/tcpfirewall-cmd --reload# 4. 临时关SELinux(迁移后再开)setenforce 0sed -i 's/^SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
2、连通性(三条都要通)
Windows 客户端 → 源 Linux:ssh root@192.168.19.177 能直接登录
源 Linux → ESXi:能 ping 通
Windows 客户端 → ESXi:能访问(443/902 端口)
3、源系统要求
引导:必须是 GRUB,不支持 LILO/UEFI 特殊引导VMware
文件系统:ext3/ext4 最稳;Btrfs/XFS/LVM 有坑
磁盘:尽量 非 LVM、非软 RAID;单分区最简单
1、目标系统,我们新建一个文件夹做个标记

2、开始迁移物理机

3、红框特别注意,选错走不到最后finsh

4、YES继续,NO取消

5、为虚拟机起个名字

6、选择对应的ESXI服务器
注意:选 ESXi、存储(空间要够)

7、这几项重点修改(参考下方注意事项)

8、Linux就开始自己迁移了

9、迁移后(开机必做)
1、改密码 / 检查网络
2、网卡名可能变(eth0→ens192),提前备份 ifcfg-*
3、开启 SELinux(安全)
sed -i 's/^SELINUX=permissive/SELINUX=enforcing/' /etc/selinux/configsetenforce 1
关闭 root SSH 登录(安全)
sed -i 's/^PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_configsystemctl restart sshd
安装 VMware Tools(open-vm-tools)
yum install -y open-vm-toolssystemctl enable --now vmtoolsd
1、磁盘格式:建议 Thin(精简置备)
2、只勾选需要的卷(/、/boot 等)不要勾选数据盘
3、Helper VM network:取消 IPv6
4、静态 IP:填 ESXi 同网段的一个空闲 IP(例如 192.168.19.200)
5、子网掩码、网关、DNS 按环境填
6、IP不填100%失败 / 自动获取 90% 会失败
7、迁移前取消移除网卡选项
8、提示 “cannot connect”“permission denied”,用root,开22端口,禁用SELinux
实操过程中失败了原因:
1、设置的IP已经被占用,没有提前去测

2、硬盘格式忘记修改

我这里在测试各种版本的Linux,事实证明跟版本没有任何关系,只是Linux物理机的迁移坑太多太多。为了能截图我也故意踩了一些坑,下篇我们专门填坑。
夸克网盘:https://pan.quark.cn/s/93d9bfe0f197 提取码:4KQG
UC网盘:https://drive.uc.cn/s/5c54b1bee7814 提取码:VMin
迅雷网盘:https://pan.xunlei.com/s/VOsWPtqJfj7gAHvLueUpJIB5A1?pwd=uz9j
往期精彩:
免费!VMware Converter安装老失败?这4个坑你肯定踩过——附完整安装指南(图文+避坑)
物理机转虚拟机,不关机、不重启,VMware 偷偷藏了个免费神器
操作步骤,均为本人亲测,祝您好运!