1.Mount a qcow2 image

qemu-nbd - QEMU Disk Network Block Device Server: Export QEMU disk image using NBD protocol

qemu-nbd -c /dev/nbd0 imageName

执行后,会出现/dev/nbd0p1、/dev/nbd0p2、/dev/nbd0p3,分别对应vm中的不同分区

vm_156e3:/dsx01/instances/instance-00000064 # l /dev/nbd*
brw-rw---- 1 root disk 43, 0 Oct 15 15:57 /dev/nbd0
brw-rw---- 1 root disk 43, 1 Oct 15 15:57 /dev/nbd0p1
brw-rw---- 1 root disk 43, 2 Oct 15 15:57 /dev/nbd0p2
brw-rw---- 1 root disk 43, 3 Oct 15 15:57 /dev/nbd0p3

可以直接mount虚拟机的某个分区: mount /dev/nbd0p1 /mnt,可以自行修改。
修改结束后,先umount /mnt,然后执行qemu-nbd -d /dev/nbd0

此时/dev/nbd0p1、/dev/nbd0p2、/dev/nbd0p3会消失。

注意: 如果image中带有LVM,在qemu-nbd之后必须执行vgscan和vgchange -ay命令,

让LVM的分区暴露成可以mount的设备,umount之后,先vgchange -an,然后再qemu-nbd -d

2.Mount a raw image

kpartx命令的作用:读device中的分区表,将扫描出的分区映射到device上。

losetup -f 找一个空闲的设备
losetup /dev/loop2 cirros-0.3.4-x86_64-disk.raw    --关联image

查看一下/dev/loop0中是否有分区

 vm_156e3:~/xiexianbin_cn # kpartx -av /dev/loop0
add map loop0p1 (253:7): 0 64260 linear /dev/loop0 16065

如果其中有分区的话,那么会有新设备: /dev/mapper/loop0p1
可以mount该分区:
mount /dev/mapper/loop0p1 /mnt
mount后就可以进行操作

如果image中使用了LVM,则需要执行vgscan和vgchange -ay
结束先umount /mnt,然后kpartx -d /dev/loop0,然后losetup -d /dev/loop0

Mount qcow2 image的更多相关文章

  1. 更改KVM虚拟机root的密码

    今天在使用qemu-kvm安装一个虚拟机,因为已经有一个虚拟机的image文件(qcow2格式的),所以创建虚拟机很简单,直接通过以下命令从image启动就行了. qemu-kvm -cpu host ...

  2. [qemu] 挂载qcow2文件,qcow2里边还有个lvm

    环境:archlinux 背景:在虚拟机里玩dpdk,把挂载HugePage(hugetlbfs)的命令写入fstab的时候,写错了,无法启动,需要把qcow2挂起来改一下. 方法:使用qemu-nb ...

  3. Linux qemu-nbd mount qemu disk image

    Linux qemu-nbd mount qemu disk image deepin@deepin:~$ deepin@deepin:~$ qemu-nbd --help Usage: qemu-n ...

  4. 在 Linux 上如何挂载 qcow2 磁盘镜像

    1.下载qemu-nbd工具 sudo apt-get install qemu-utils 或者 sudo yum install qemu-img 2.加载nbd模块,然后挂载 sudo modp ...

  5. qemu-nbd方式挂载qcow2镜像

    客户端配置 加载nbd模块 [root@centos sm]# rmmod nbd [root@centos sm]# modprobe nbd max_part=8 映射服务器的块设备到本地nbd设 ...

  6. openstack 官方镜像qcow2 下载和修改密码

    下载地址: CentOS6:http://cloud.centos.org/centos/6/images/ CentOS7:http://cloud.centos.org/centos/7/imag ...

  7. 如何挂载一个镜像文件(how to mount an image file)

    如何挂载一个镜像文件(how to mount an image file) 08/16/2012master 4 Comments 在使用KVM或Xen虚拟化的情况下,经常需要使用镜像文件(imag ...

  8. 利用Jenkins打包ISO和QCOW2镜像文件

    现在的云虚拟化环境越来越多,经常会碰到需要修改并重新打包新的ISO或QCOW2镜像文件.通过手工的方式会比较麻烦,所以在镜像发布的生产环境中可以利用Jenkins来进行定期打包发布,以下介绍Jenki ...

  9. debian官网qcow2镜像修改root账号密码,开启ssh等

    1.下载官网qcow2镜像文件 wget http://172.16.20.10/vmtemplate/KVM/wangrui/Debian/debian-10.2.0-openstack-amd64 ...

随机推荐

  1. java基础知识(初学)

    (小记) 文本文档方式可以下载notepad 在设置-新建-修改默认语言为java 编码为ANSI! java关键字特点:1.完全小写字母.如:public. java标识符:方法的名称,类的名称,变 ...

  2. 破损的键盘(悲剧文本)(Broken Keyboard(a.k.a. Beiju Text),Uva 11988)

    破损的键盘(悲剧文本)(Broken Keyboard(a.k.a. Beiju Text),Uva 11988) 题意描述 你在输入文章的时候,键盘上的Home键和End键出了问题,会不定时的按下. ...

  3. C++笔记005:用面向过程和面向对象方法求解圆形面积

    原创笔记,转载请注明出处! 点击[关注],关注也是一种美德~ 结束了第一个hello world程序后,我们来用面向过程和面向对象两个方法来求解圆的面积这个问题,以能够更清晰的体会面向对象和面向过程. ...

  4. hdu_4135_Co-prime

    Given a number N, you are asked to count the number of integers between A and B inclusive which are ...

  5. 复习宝典之Git分布式版本控制

    查看更多宝典,请点击<金三银四,你的专属面试宝典> 第三章:Git分布式版本控制 1)git文件状态 git中的文件有以下几种状态: 未跟踪(untrack):表示文件为新增加的. 已修改 ...

  6. python函数名应用

    函数名的应用 函数名 的应用分类: 函数就是一个特殊的变量(可以看成一个变量来用) *函数名对应函数的内存地址 *函数名可以做为容器类数据的元素 *函数名可以作为函数的参数 *函数名可以作为函数的返回 ...

  7. 关于secureCRT的安装

    原文地址:https://www.cnblogs.com/yjd_hycf_space/p/7729796.html 安装该楼主的方式基本可以破解: 踩坑事项:1)可以选择自定义安装:然后将注册机复制 ...

  8. SQL注入的浅尝辄止

    简单的说,SQL注入就是通过在前端页面输入SQL语句,导致系统暴露异常信息在前端页面显示,非法者通过这些异常信息获取数据库的相干信息,为攻击系统做准备.

  9. Android中的AutoCompleteTextView(随笔提示文本)组件的简单使用

    Android中的随笔提示文本组件AutoCompleteTextView的使用,此组件用于输入文本,然后就会在所配置的适配器中的数据进行查找显示在组件下面. 这里值得注意的是AutoComplete ...

  10. spring-集成redis

    Redis是key-value存储的非关系型数据库.Spring Data Redis包含了多个模板实现,用来完成Redis数据库的数据存取功能 1.如何连接Redis? Spring Data Re ...