加载nbd模块方法:
1. 确认内核版本号,执行命令:uname -r
3.10.0-327.el7.x86_64
只支持上述内核版本,其他未验证
2. 拷贝nbd.ko到/lib/modules/3.10.0-327.el7.x86_64/kernel/drivers/block目录下,nbd.ko下载地址:nbd.ko.zip
3. 执行命令:depmod -a
4. 加载nbd模块:modprobe nbd
5. 确认nbd加载成功:ls /dev/nbd*可以看到nbd设备,lsmod|grep nbd可以看到内核模块
附1. 编译nbd模块方法:
附2. 使用nbd设备挂载镜像分区方法:
yum install ntfs-3g fuse ### 安装ntfs文件系统依赖(挂载windows系统镜像需要ntfs文件系统支持)
qemu-nbd -c /dev/nbd10 win2k8r2-cn-qemu-10G.img ### 挂载镜像到nbd设备,
# 有些镜像挂载到nbd设备之后直接就有分区了,可以通过查看是否出现/dev/nbd10p*来确认是否需要获取分区,如果没有需要用kpartx工具获取
kpartx -a /dev/nbd10 ### 获取镜像分区
ll /dev/mapper/nbd10p* ### 分区在这个目录下,p1、p2表示第1、2个分区
mount /dev/mapper/nbd10p1 /mnt ### 挂载镜像的第一个分区,Linux一般是vda1,windows一般是保留分区,而不是C盘
ll /mnt/
umount /mnt ### umount
mount /dev/mapper/nbd10p2 /mnt ### 挂载第2个镜像分区(可以直接挂载第2个分区,上面挂载第1个分区是为了演示)
cd /mnt/
ll
cd Program\ Files ### 这次是C盘了
ll
cd Qemu-ga/ ### 切换到想修改的文件所在目录,之后可以替换、删除、修改等操作
umount /mnt ### 操作结束后,umount挂载目录
kpartx -d /dev/nbd10 ### 卸载分区
qemu-nbd -d /dev/nbd10 ### 从nbd设备上卸载镜像