全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

linux下挂载VHD等虚拟磁盘文件的方法

1、RAW格式虚拟磁盘

linux下可以直接挂载raw格式的虚拟磁盘镜像文件。

例如,这里先用dd命令创建一个文件,然后将其格式化为ext4格式(只有一个分区),然后挂载到/mnt目录。

下面的raw.img磁盘镜像文件就一个分区,所以没有使用offset=来指定偏移。如果有多个分区,则可以通过指定偏移来挂载。具体的可以查阅mount命令的相关参数信息。

> dd if=/dev/zero of=raw.img bs=1M count=512
记录了512+0 的读入
记录了512+0 的写出
536870912 bytes (537 MB, 512 MiB) copied, 0.207045 s, 2.6 GB/s

/home/o [o@o-pc] [10:29]
> mkfs.ext4 -q raw.img 

/home/o [o@o-pc] [10:30]
> sudo mount -o loop raw.img /mnt

/home/o [o@o-pc] [10:30]
> df -h
文件系统    容量 已用 可用 已用% 挂载点
tmpfs      3.9G  79M 3.8G  2% /dev/shm
/dev/sda4    30G 6.6G  24G  22% /
tmpfs      3.9G 136K 3.9G  1% /tmp
/dev/sda2    69G  26G  41G  39% /home
tmpfs      794M  36K 794M  1% /run/user/1000
/dev/loop0   488M 780K 452M  1% /mnt

2、VHD/VHDX磁盘文件挂载

linux不能直接支持挂载VHD磁盘镜像文件。可以通过vmware的vmware-mount等工具来挂载。vmware没有直接提供这个工具,但在vmware playervmware workstation中都有提供。但这里不打算使用这种方式。

这里使用qemu-nbd来挂载磁盘镜像文件。

a)安装qemu

首先要安装一下qemu-kvm,我这里使用的是Fedora 25,安装命令如下

sudo dnf install qemu-kvm 

如果你是用的debian/ubuntu等,可以使用sudo apt-get install qemu-kvm进行安装。

archlinux可以使用sudo pacman -S qemu进行安装。

b)加载nbd驱动

NBD(Network Block Device)是网络块设备的缩写。这个模块可以将一个远程主机的磁盘空间(与挂载nfs有区别),当作一个本地块设备来使用。

NBD是一个内核模块,大部分Linux发行版都已经包含它,这里不需要再安装了。

使用modprobe来加载nbd驱动

/media/o/data [o@o-pc] [11:04]
> sudo modprobe nbd max_part=8

加载完成后,可以使用modinfo命令来查看模块信息

/media/o/data [o@o-pc] [11:05]
> modinfo nbd
filename:    /lib/modules/4.9.6-200.fc25.x86_64/kernel/drivers/block/nbd.ko.xz
license:    GPL
description:  Network Block Device
depends:    
intree:     Y
vermagic:    4.9.6-200.fc25.x86_64 SMP mod_unload 
signat:     PKCS#7
signer:     
sig_key:    
sig_hashalgo:  md4
parm:      nbds_max:number of network block devices to initialize (default: 16) (int)
parm:      max_part:number of partitions per device (default: 0) (int)

上面的信息说,初始化网络块设备的数目为16,说明其在/dev/下创建16个nbd设备。

/media/o/data [o@o-pc] [11:05]
> ls /dev/nbd*
/dev/nbd0 /dev/nbd0p1 /dev/nbd1 /dev/nbd10 /dev/nbd11 /dev/nbd12 /dev/nbd13 /dev/nbd14 /dev/nbd15 /dev/nbd2 /dev/nbd3 /dev/nbd4 /dev/nbd5 /dev/nbd6 /dev/nbd7 /dev/nbd8 /dev/nbd9

c)将vhdx文件连接到nbd设备

这里使用qemu-nbd来进行连接(使用-c参数为连接,使用-d参数断开连接)

/media/o/data [o@o-pc] [11:05]
> sudo qemu-nbd -c /dev/nbd0 VS2017RC-offline.vhdx 

连接上之后使用fdisk查看一下设备信息。

/media/o/data [o@o-pc] [11:05]
> sudo fdisk -l /dev/nbd0
Disk /dev/nbd0:100 GiB,107374182400 字节,209715200 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xa373e501
设备    启动 起点    末尾   扇区  大小 Id 类型
/dev/nbd0p1   2048 209711103 209709056 100G 7 HPFS/NTFS/exFAT

实际上磁盘只有一个分区,分区格式为exFAT,磁盘大小为动态增长。

d)挂载分区

直接使用mount命令挂载nbd0p1即可

/media/o/data [o@o-pc] [11:36]
> sudo mount -t exfat -o rw /dev/nbd0p1 /mnt
[sudo] o 的密码:
FUSE exfat 1.0.1

/media/o/data [o@o-pc] [12:05]
> ls /mnt/
'$RECYCLE.BIN' 'System Volume Information' vs2017rc 安装说明.txt

安装exFAT支持

因为分区是exFAT格式的,不能直接挂载。

先安装一下fuse-exfatexfat-utils

具体的安装过程简要的说一下

先下载两个rpm源码包。

wget http://download1.rpmfusion.org/free/el/updates/6/SRPMS/exfat-utils-1.0.1-2.el6.src.rpm
wget http://download1.rpmfusion.org/free/el/updates/6/SRPMS/exfat-utils-1.0.1-2.el6.src.rpm

然后安装fuse-develrpmbuild,并解压src.rpm包。

sudo dnf install fuse-devel rpmbuild
sudo dnf install scons  # 构建exfat-utils需要
rpm -ivh exfat-utils-1.0.1-2.el6.src.rpm exfat-utils-1.0.1-2.el6.src.rpm

解压完成之后可以在当前用户的home目录下看到rpmbuild目录,进入该目录下的SPECS目录。

然后使用rpmbuild构建rpm包。

rpmbuild -ba exfat-utils.spec
rpmbuild -ba fuse-exfat.spec

构建完成之后进入rpmbuild/RPMS/x86_64目录(这里x86_64与你的系统构架有关),安装生成的rpm包。

/home/o/rpmbuild/RPMS/x86_64 [o@o-pc] [12:04]
> sudo rpm -ivh exfat-utils-1.0.1-2.fc25.x86_64.rpm fuse-exfat-1.0.1-1.fc25.x86_64.rpm 
准备中...             ################################# [100%]
正在升级/安装...
  1:fuse-exfat-1.0.1-1.fc25     ################################# [ 50%]
  2:exfat-utils-1.0.1-2.fc25     ################################# [100%]

ubuntu上可以直接使用apt来安装sudo apt install exfat-utils exfat-fuse

3、其它虚拟磁盘文件的挂载

其它的就不再说了,与上面的VHD挂载是一样的,前提是要是支持的磁盘映像格式才行。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# linux  # 挂载vhd  # 磁盘挂载  # Linux 挂载磁盘详解及实操步骤  # linux如何mount挂载磁盘并设置开机自动mount的实现  # Linux下如何挂载磁盘的方法示例  # Linux云服务器挂载新磁盘的方法步骤  # Linux磁盘挂载、分区、扩容操作的实现方法  # LINUX磁盘分区、格式化、挂载、卸载详细过程  # Linux单目录挂载多块磁盘的操作步骤  # 扇区  # 可以使用  # 镜像文件  # 可以直接  # 加载  # 只有一个  # 的是  # 已用  # 是一个  # 都有  # 你是  # 目录下  # 多个  # 的说  # 说了  # 但在  # 将其  # 可以通过  # 不需  # 才行 


相关文章: 相册网站制作软件,图片上的网址怎么复制?  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?  如何选择服务器才能高效搭建专属网站?  专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?  大同网页,大同瑞慈医院官网?  如何在搬瓦工VPS快速搭建网站?  建站之星手机一键生成:多端自适应+小程序开发快速建站指南  长沙企业网站制作哪家好,长沙水业集团官方网站?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?  如何在腾讯云服务器快速搭建个人网站?  如何获取上海专业网站定制建站电话?  如何在阿里云高效完成企业建站全流程?  网站制作培训多少钱一个月,网站优化seo培训课程有哪些?  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  完全自定义免费建站平台:主题模板在线生成一站式服务  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?  中山网站推广排名,中山信息港登录入口?  php8.4新语法match怎么用_php8.4match表达式替代switch【方法】  深圳网站制作案例,网页的相关名词有哪些?  内部网站制作流程,如何建立公司内部网站?  宝塔建站后网页无法访问如何解决?  如何配置支付宝与微信支付功能?  定制建站方案优化指南:企业官网开发与建站费用解析  如何在建站之星网店版论坛获取技术支持?  高端网站建设与定制开发一站式解决方案 中企动力  全景视频制作网站有哪些,全景图怎么做成网页?  网站制作软件免费下载安装,有哪些免费下载的软件网站?  如何自定义建站之星网站的导航菜单样式?  网站制作的步骤包括,正确网址格式怎么写?  武汉网站如何制作,黄黄高铁武穴北站途经哪些村庄?  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  潮流网站制作头像软件下载,适合母子的网名有哪些?  高防服务器租用首荐平台,企业级优惠套餐快速部署  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?  较简单的网站制作软件有哪些,手机版网页制作用什么软件?  已有域名和空间如何快速搭建网站?  如何通过二级域名建站提升品牌影响力?  广州网站建站公司选择指南:建站流程与SEO优化关键词解析  视频网站app制作软件,有什么好的视频聊天网站或者软件?  如何做静态网页,sublimetext3.0制作静态网页?  ,交易猫的商品怎么发布到网站上去?  建站之星ASP如何实现CMS高效搭建与安全管理?  深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的?  家具网站制作软件,家具厂怎么跑业务?  SQL查询语句优化的实用方法总结  招商网站制作流程,网站招商广告语? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。