1、作用
虚拟机在需要更多存储空间或者精简存储空间的时候,就有了存储卷的挂载和卸载动作
2、命令介绍
2.1、挂载动作
virsh attach-disk <虚拟机> <存储卷> <挂载设备>
注意:挂载设备可以是vdx或者sdx,x是从b开始的字母
2.2、卸载动作
virsh detach-disk <虚拟机> <挂载设备>
注意:挂载格式可以是vdx或者sdx
3、实战【挂载、卸载】
3.1、挂载操作
# virsh list
Id Name State
---------------------------------
1 CentOS-8-x86_64 running
3.1.2、挂载存储卷
virsh attach-disk CentOS-8-x86_64 /kvm/images/cnblog.img vdb
# 注意:vda已经被系统盘使用,所以使用vdb
另外i一种:
3.1.3、登陆虚拟机查看硬盘信息
# 登陆虚拟机
virsh console CentOS-8-x86_64
# 查看硬盘信息
[root@localhost ~]# fdisk -l /dev/vdb
磁盘 /dev/vdb:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
3.1.4、格式化硬盘并且写入数据测试
# 格式化硬盘
mkfs.ext4 /dev/vdb
# 创建挂载目录
mkdir /data
# 挂载目录
mount /dev/vdb /data && cd /data
# 查看挂载信息
df -h | grep data
# 写入200M的数据测试
dd if=/dev/zero of=/data/test.zero bs=1M count=200
# ll -h
-rw-r--r--. 1 root root 200M 5月 21 18:25 test.zero
3.2、卸载操作
3.2.1、卸载目录
umount /data
3.2.2、卸载磁盘
virsh detach-disk CentOS-8-x86_64 vdb
3.2.3、登陆虚拟机查看硬盘是否存在
[root@localhost ~]# fdisk -l /dev/vdb
fdisk: 打不开 /dev/vdb: 没有那个文件或目录
3.2.4、查看磁盘效果
# virsh vol-info cnblog.img keep_dpool
Name: cnblog.img
Type: file
Capacity: 2.00 GiB
Allocation: 1.06 GiB
方法2:
查看当前磁盘
查看当前磁盘
// 登陆宿主机,查看宿主机当前磁盘空间,确保宿主机有空闲的100G分给虚拟机
df -hT
// 登陆虚拟机,确认虚拟机的盘号,比如现在已经有了 /dev/sdb这个盘,我们加的时候就不能再加sdb了
fdisk -l
确认当前虚拟机的虚拟磁盘位置
我们需要手动创建虚拟磁盘,你想一下,这个虚拟机已经有一块虚拟磁盘了,放到 /var下面,我们手动创建的虚拟磁盘最好也放到/var下面,否则东一块西一块,以后岂不是很麻烦?
// 打印这台虚拟机的信息
virsh dumpxml dameng-8-65
// 编辑虚拟机的信息,最好不用这个看,相当于vim,万一不小心wq保存了就修改了
virsh edit dameng-8-65
打印后我们可以看到这样的信息:
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2' cache='none'/>
<source file='/data/kvm/image/dameng-8-65-data01.qcow2'/>
<target dev='vdb' bus='virtio'/>
<alias name='virtio-disk1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
</disk>
由此我们可以看到虚拟磁盘在 /data/kvm/image/下面
手动创建虚拟磁盘
// 这样我们在上面获取的路径下建一个新的 dameng-8-65-data02.qcow2 ,100G大小
qemu-img create -f qcow2 -o size=100G /data/kvm/image/dameng-8-65-data02.qcow2
将虚拟磁盘加到虚拟机里
virsh attach-disk --domain dameng-8-65 --source /data/kvm/image/dameng-8-65-data02.qcow2 --target vdd --driver qemu --subdriver qcow2 --sourcetype file --cache none --persistent
//参数解释:
// --domain 指定虚拟机名称
// --source 指定刚才手动创建的虚拟磁盘
// --target 指定磁盘名称,比如 sda sdb sdc,我这里写的vdd
// --driver 指定要使用的驱动程序为 qemu, 这些信息同样可以和上面virsh dumpxml dameng-8-65 打印的信息比对
// -subdriver 指定磁盘镜像的子驱动程序为 qcow2
// --cache none 指定缓存模式为 none,禁用缓存
重启虚拟机并确认
virsh start dameng-8-65
virsh console dameng-8-65
// 进入后执行
fdisk -l 查看
© 版权声明
文章版权归作者所有,转载请预留文章地址。s.wbsun.net
THE END
暂无评论内容