Windows 10下临时访问EXT4分区:利用VirtualBox挂载整块硬盘

其实最初的目的只是为了把一个EXT4分区的硬盘里面的内容拷贝到VirtualBox的Linux虚拟机,网上搜索了一下也没有什么特别靠谱的Windows10的EXT4文件系统兼容软件的方案, 再考虑到有权限、软链接这些东西, 索性尝试直接挂载整块硬盘到VirtualBox的Linux虚拟机,意外发现这其实非常简单并且效果也很好。

这个方法也很适合模拟IC虚拟机的仿真设置,可以添加一个额外的硬盘当临时大空间来保存仿真数据,随时添加、访问,用后销毁格式化。

主要参考的教程来自: https://blog.twofei.com/576/ ,首先第一步是建立一个vmdk的link用来指定要挂载的硬盘,在磁盘管理器里面确定磁盘的编号,这里可以看到是磁盘1

管理员模式的cmd下面,cd “C:\Program Files\Oracle\VirtualBox”,执行

VBoxManage.exe internalcommands createrawvmdk -filename "F:\raw.vmdk" -rawdisk \\.\PhysicalDrive1

这里面的编号PhysicalDrive1就对应了磁盘编号,产生的vmdk文件可以放在任何位置,只是一个link,体积1KB。我在这一步还遇到一次问题就是这个VBoxManage.exe莫名其妙损坏了,只有0字节,又去官网重新下载了VBox的安装程序修复安装了一下,很神奇……

最后在管理员模式启动的VBox的虚拟机设置里面添加这个硬盘,一定要注意一旦添加了整块硬盘,必须用管理员模式启动VBox才能访问。

在这里添加,如果没有用管理员模式启动就会报错,无法挂载这个硬盘

启动系统,然后mount对应的/dev到指定的挂载点即可。

mount /dev/sdb1  /data0

这样其实也等于实现了在Win10下的EXT4文件系统的访问,如果在VBox上面添加一个可写入的Windows共享,就可以把EXT4系统盘里面的文件直接拷贝出来了,也算是一个Workaround吧,并且是一个比较Safe的解决方案,不会因为一些莫名其妙的插件问题损坏文件系统。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注