如何挂载qcow2格式的镜像文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何挂载qcow2格式的镜像文件相关的知识,希望对你有一定的参考价值。
可以使用qemu自带的一个工具qemu-nbd来挂载一个客户机,具体步骤如下:(qemu-nbd 在普通的QEMU编译和安装后也会得到qemu-nbd工具,在Fedora中好像在“qemu-common”这个RPM包中。)
1. 首先检查当前系统的kernel对NBD模块的支持(NBD:network block device),加载nbd这个module,如下:
[root@jay-linux kvm_demo]# grep NBD /boot/config-3.5.0
CONFIG_BLK_DEV_NBD=m
[root@jay-linux kvm_demo]# modinfo nbd
filename: /lib/modules/3.5.0/kernel/drivers/block/nbd.ko
license: GPL
description: Network Block Device
srcversion: 56F31584CC2EB73E6F1DA69
depends:
intree: Y
vermagic: 3.5.0 SMP mod_unload modversions
parm: nbds_max:number of network block devices to initialize (default: 16) (int)
parm: max_part:number of partitions per device (default: 0) (int)
parm: debugflags:flags for controlling debug output (int)
[root@jay-linux kvm_demo]# modprobe nbd max_part=16
[root@jay-linux kvm_demo]# lsmod | grep nbd
nbd 7593 0
如果当前kernel没有编译好nbd模块,则需要重新编译该模块(或编译整个kernel),在编译kernel时,“make menuconfig”配置kernel时中选择”Device Drivers –> Block devices –> Network block device support”.
2. 将qcow2镜像映射为网络块设备(nbd),命令如下:
[root@jay-linux kvm_demo]# qemu-nbd -c /dev/nbd0 rhel6u3.qcow2
[root@jay-linux kvm_demo]# ll /dev/nbd0* #这里查看一下
brw-rw---- 1 root disk 43, 0 Nov 1 20:51 /dev/nbd0
brw-rw---- 1 root disk 43, 1 Nov 1 20:51 /dev/nbd0p1
brw-rw---- 1 root disk 43, 2 Nov 1 20:51 /dev/nbd0p2
qemu-nbd工具是:QEMU Disk Network Block Device Server,可以用”qemu-nbd –help”命令查看其帮助信息。
3. 像普通block设备那样使用刚才映射好的网络块设备的分区即可,命令行如下:
[root@jay-linux kvm_demo]# mount /dev/nbd0p1 /mnt/
[root@jay-linux kvm_demo]# cd /mnt/
[root@jay-linux mnt]# ls
bin cgroup etc lib lost+found misc net proc sbin srv tmp var
boot dev home lib64 media mnt opt root selinux sys usr
[root@jay-linux mnt]# cd root/
[root@jay-linux root]# touch nbd-test.txt #这里建立一个文件测试一下,若用这个qcow2 image作为guest启动后也可以看到改文件。
4. 使用完这个qcow2镜像后,卸载已挂载的nbd设备,解除qcow2镜像与nbd设备的关联。 参考技术A 可以使用qemu自带的一个工具qemu-nbd来挂载一个客户机,具体步骤如下:
(qemu-nbd 在普通的QEMU编译和安装后也会得到qemu-nbd工具,在Fedora中好像在“qemu-common”这个RPM包中。)
1. 首先检查当前系统的kernel对NBD模块的支持(NBD:network block device),加载nbd这个module,如下:
[root@jay-linux kvm_demo]# grep NBD /boot/config-3.5.0
CONFIG_BLK_DEV_NBD=m
[root@jay-linux kvm_demo]# modinfo nbd
filename: /lib/modules/3.5.0/kernel/drivers/block/nbd.ko
license: GPL
description: Network Block Device
srcversion: 56F31584CC2EB73E6F1DA69
depends:
intree: Y
vermagic: 3.5.0 SMP mod_unload modversions
parm: nbds_max:number of network block devices to initialize (default: 16) (int)
parm: max_part:number of partitions per device (default: 0) (int)
parm: debugflags:flags for controlling debug output (int)
[root@jay-linux kvm_demo]# modprobe nbd max_part=16
[root@jay-linux kvm_demo]# lsmod | grep nbd
nbd 7593 0
如果当前kernel没有编译好nbd模块,则需要重新编译该模块(或编译整个kernel),在编译kernel时,“make menuconfig”配置kernel时中选择”Device Drivers –> Block devices –> Network block device support”.
2. 将qcow2镜像映射为网络块设备(nbd),命令如下:
[root@jay-linux kvm_demo]# qemu-nbd -c /dev/nbd0 rhel6u3.qcow2
[root@jay-linux kvm_demo]# ll /dev/nbd0* #这里查看一下
brw-rw---- 1 root disk 43, 0 Nov 1 20:51 /dev/nbd0
brw-rw---- 1 root disk 43, 1 Nov 1 20:51 /dev/nbd0p1
brw-rw---- 1 root disk 43, 2 Nov 1 20:51 /dev/nbd0p2
qemu-nbd工具是:QEMU Disk Network Block Device Server,可以用”qemu-nbd –help”命令查看其帮助信息。
3. 像普通block设备那样使用刚才映射好的网络块设备的分区即可,命令行如下:
[root@jay-linux kvm_demo]# mount /dev/nbd0p1 /mnt/
[root@jay-linux kvm_demo]# cd /mnt/
[root@jay-linux mnt]# ls
bin cgroup etc lib lost+found misc net proc sbin srv tmp var
boot dev home lib64 media mnt opt root selinux sys usr
[root@jay-linux mnt]# cd root/
[root@jay-linux root]# touch nbd-test.txt #这里建立一个文件测试一下,若用这个qcow2 image作为guest启动后也可以看到改文件。
4. 使用完这个qcow2镜像后,卸载已挂载的nbd设备,解除qcow2镜像与nbd设备的关联。本回答被提问者采纳
Linux中挂载各种格式镜像的方法总结
参考技术A 1、将镜像文件拷贝到linux系统上。2、执行命令:mount -t iso9660 -o loop /root/xxx.iso /mnt
3、查看/mnt文件夹,即可查看到镜像的文件。
4、卸载:umount /mnt
1. 首先检查当前系统的kernel对NBD模块的支持(NBD:network block device),加载nbd这个module
2. 将qcow2镜像映射为网络块设备(nbd),命令如下:
3. 像普通block设备那样使用刚才映射好的网络块设备的分区即可,命令行如下:
4. 使用完这个qcow2镜像后,卸载已挂载的nbd设备,解除qcow2镜像与nbd设备的关联。
以上是关于如何挂载qcow2格式的镜像文件的主要内容,如果未能解决你的问题,请参考以下文章