本次测试覆盖 ubuntu 14、16、18、20 版本
grep -i virtio /boot/config-$(uname -r)
本次验证的几个系统,参数值都显示 m ,继续往下执行。
ubuntu 16、18、20 版本用如下命令:
lsinitramfs /boot/initrd.img-$(uname -r) | grep virtio
ubuntu 14 版本用这个命令会报错,直接执行下一步吧。
ubuntu 16、18、2各个版本中都包含有 virtio 驱动,但是与腾讯云文档中显示的列表又不完全一致,保险起见,继续往下执行。
echo -e 'xen-blkfront\nvirtio_blk\nvirtio_pci\nvirtio_console' >> /etc/initramfs-tools/modules
mkinitramfs -o /boot/initrd.img-$(uname -r)
执行后再查看 1.2,与之前没有变化。后面导入并验证都通过了,所以应该原来带的 virtio 驱动已经 OK 的。
通过 apt 源安装的 cloud-init 版本过高导入会失败。经过多种方法尝试,使用绿色版本安装是最方便的方法。
# 下载 cloud-init 安装包
wget https://image-tools-1251783334.cos.ap-guangzhou.myqcloud.com/greeninit-x64-beta.tgz
# 解压缩
tar xvf greeninit-x64-beta.tgz
# 进入 cloud-init 目录
cd greeninit
# 安装 cloud-init
sh install.sh
# 到这里导入会有问题,还需要删除这个目录
rm -r /etc/cloud/cloud.cfg.d
安装成功后不要执行其他操作,关机。
如果安装后执行了 cloud-init 命令,需要执行以下命令清理缓存。
rm -rf /var/lib/cloud
将 ubuntu 系统对应的 vmdk 镜像文件上传到存储桶中。如果虚拟机的硬盘文件拆分成了多个 vmdk,需要先做合并。
验证内容:
验证结果:
ubuntu 14、16、18、20 版本均验证正常。
如果没有安装cloud-init,无法进行初始化。最直观的问题是无法修改密码、无法配置IP。
可以在迁移前,将网卡设置成dhcp方式获取IP。
不同系统可能配置文件的位置、名字不同,这次验证的这台ubuntu 22版本是在 /etc/netplan/ 文件夹中,网卡配置文件为 00-installer-config.yaml,设置内容如下:
network:
ethernets:
eth0:
dhcp4: true
version: 2
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。