如何创建华为HCS中可用的CentOS QCow镜像
以下所有操作均在Ubuntu 24.10桌面版中进行。
1.安装相关包。
sudo apt install guestfs-tools virt-manager cloud-utils
2.下载CentOS Cloud Image,以CentOS 7版本为例。
wget https://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud.qcow2c
3.将下载的img转换为qcow2格式,华为HCS建议Linux磁盘大小不低于20G。
qemu-img convert -f qcow2 -O qcow2 CentOS-7-x86_64-GenericCloud.qcow2c root-disk.qcow2
qemu-img resize root-disk.qcow2 20G
4.编写cloud-init配置,并另存为cloud-init.cfg,以下配置的主要含义是:
- 自动更新软件包,自动重启。
- 安装x11-utils、hwinfo(检测分辨率)包。
- 设置cent用户默认密码为cent。
- 软件源修改为中科大源。
- ssh认证允许使用密码认证。
- datasource使用OpenStack类型。
- 禁用CentOS-Base.repo文件中默认的base、updates、extras源。
5.将cloud-init.cfg文件封装成iso文件。
cloud-localds cloud-init.iso cloud-init.cfg
6.创建虚拟机,虚机名字使用“centos”,graphics参数配置为spice,网卡采用默认NAT方式。
virt-install \
--name centos \
--memory 4096 \
--disk root-disk.qcow2,device=disk,bus=virtio \
--disk cloud-init.iso,device=cdrom \
--os-variant centos7 \
--virt-type kvm \
--graphics spice \
--network network=default,model=virtio \
--import
7.要提升分辨率,首先要安装hwinfo。
sudo apt install hwinfo
8.使用hwinfo命令查看支持的分辨率。
sudo hwinfo --framebuffer
注:方式一安装的虚机运行以上命令结果为空,因此无法提升分辨率。
9.选择1024x768作为新分辨率。
sudo vim /etc/default/grub
GRUB_GFXMODE=1024x768x24
GRUB_GFXPAYLOAD_LINUX=1024x768
sudo update-grub
10.在虚机中安装vmtools,从而使得OC可以监控虚机CPU、内存等资源使用情况。
sudo snap install vmagent
11.在宿主机中执行以下命令,清理相关资源。
sudo virt-sysprep -d centos
12.把镜像压缩一下,一般可以压缩至500M左右。
qemu-img convert -f qcow2 -O qcow2 -c root-disk.qcow2 centos.qcow2
参考文章:
1.https://waynerv.com/posts/create-out-of-box-ubuntu-qcow2-image/
2.https://unix.stackexchange.com/questions/17027/how-to-set-the-resolution-in-text-consoles-troubleshoot-when-any-vga-fail
3.https://linux.die.net/man/1/virt-install
评论
发表评论