问题卡点
在命令行下,创建虚拟机
qemu-img create -f qcow2 zyc_ctyunos-23.01-x86_64.qcow2 80G
virt-install --virt-type kvm --name zyc_ctyunos-23.01-x86_64 --memory 8192 --vcpus=4 --location /var/zyc/ctyunos-23.01-230117-x86_64-dvd.iso --disk path=/var/zyc/zyc_ctyunos-23.01-x86_64.qcow2,size=80,format=qcow2 --network network=default --graphics none --extra-args='console=ttyS0'
在文本模式的安装界面
选择分区方式时,默认是选择“Use All Space”,软件会自动分区,很不灵活。(/home分区占比很大,默认存在/swap分区,固定的挂载点无法新增)
我想要根据个人意愿,灵活分区,当选择“Manually assign mount points”方式,发现无法完成分区及格式化。
正文
qcow2镜像格式是QEMU支持的磁盘镜像格式之一,它可以使用一个文件来表示一个固定大小的块设备。主要优点是支持压缩,动态扩容。
创建qcow2镜像
qemu-img create -f qcow2 zyc_ctyunos-23.01-x86_64.qcow2 80G
qcow2镜像分区
qcow2镜像的分区,需要用到nbd(network block device)驱动和qemu-nbd
命令
-
先加载nbd内核驱动
modprobe nbd
-
用qemu-nbd命令连接qcow2镜像文件
qemu-nbd -c /dev/nbd0 /var/zyc/zyc_ctyunos-23.01-x86_64.qcow2
-
现在,可以用
fdisk
命令对/dev/nbd0进行分区,之后查看分区情况
qcow2镜像分区格式化
用正常的格式化命令即可
mkfs.ext4 /dev/nbd0p1
mkfs.ext4 /dev/nbd0p2
mkfs.ext4 /dev/nbd0p3
分区挂载/卸载
mount
命令挂载分区后,可以进行文件的增删改查;umount
命令卸载分区;
操作完成之后,记得释放qcow2镜像文件的连接
qemu-nbd -d /dev/nbd0
回到开头
命令行下创建虚拟机,在文本模式的安装界面,选择“Manually assign mount points”,便可以看到相应的分区信息
接着,逐个分区设置挂载点后,如下图所示。
继续执行后续操作,完成虚拟机的安装。
进入虚拟机,查看磁盘分区情况: