#磁盘镜像 #磁盘 #FUSE #qcow2 #qemu #虚拟文件系统

应用程序 qcow2-fuse

挂载qcow2虚拟磁盘镜像

2个版本

使用旧的Rust 2015

0.1.1 2020年2月1日
0.1.0 2016年7月26日

#1421 in 文件系统

每月 37 次下载

MIT 许可协议

20KB
375

qcow2-fuse

此程序允许您将qcow2虚拟磁盘镜像挂载为FUSE文件系统。

用法

使用以下命令将myimage.qcow2挂载到mnt目录:

qcow2-fuse myimage.qcow2 mnt

现在该目录将包含一个文件mnt/myimage,它允许您读取虚拟磁盘内容。

使用挂载的镜像

如果您的虚拟磁盘只包含一个分区,您可以将它像设备一样挂载

mount mnt/myimage /mnt/myimage

# Or with another FUSE filesystem:
ext4fuse mnt/myimage /mnt/myimage

默认情况下,FUSE文件系统只对当前用户可用。如果您想以root身份挂载虚拟文件系统,需要将-o allow_root选项传递给qcow2-fuse。

分区

有时您的虚拟磁盘包含多个分区,因此您不能直接挂载它。相反,请让操作系统处理分区的读取

# On Linux:
kpartx -a mnt/myimage

# On macOS
hdiutil attach -imagekey diskimage-class=CRawDiskImage \
  -nomount mnt/myimage

这将生成新的条目在/dev,然后您可以像上面一样挂载。

选项

此程序有多个选项。您可以通过运行qcow2-fuse --help来查看其中一些的描述。

-o开头的许多选项将被传递给FUSE。您可以在LinuxmacOS中阅读有关这些选项的信息。

安装

目前安装此程序的最好方法是使用cargo,Rust包管理器。

首先,您需要Rust和Cargo本身。您可以从这里下载它们。

其次,您需要安装FUSE,以及pkg-config以便我们可以找到它。以下是一些获取它们的示例

  • Ubuntu: sudo apt-get install libfuse-dev pkg-config
  • macOS: 安装 MacPorts,然后执行以下命令:sudo port install osxfuse pkgconfig

最后,您可以安装此程序:cargo install qcow2-fuse

二进制文件

当我有足够的带宽时,我会尝试提供这些文件。

功能

此程序只能挂载某些qcow2镜像

  • 仅支持版本3(即“qcow2 1.1”);版本2不受支持。
  • 此程序提供只读访问,不支持写入。
  • 不支持压缩块。
  • 不支持加密。
  • 不支持后端文件。
  • 如果镜像包含快照,则没有问题。但此程序只会提供对主镜像的访问,而不是快照。
  • 不支持修复损坏的镜像。

许可协议

此程序在MIT许可证下提供。

另请参阅

依赖项

~6MB
~104K SLoC