我想挂载标准Raspberry Pi OS 磁盘映像(Lite 版本)的第一个 FAT 分区,以进行一些修改并将其他文件复制到其中,以便首次启动 Pi。在阅读了一段时间后,我发现Mount-DiskImage PowerShell cmdlet 听起来好像可以做到这一点。但它不会。当我尝试这个命令时:
Mount-DiskImage -imagepath "C:\path\to\2021-10-30-raspios-bullseye-armhf-lite.img" -storagetype iso
我收到此错误:
Mount-DiskImage : Die Datei oder das Verzeichnis ist beschädigt und nicht lesbar.
In Zeile:1 Zeichen:1
+ Mount-DiskImage -imagepath "C:\path\to\2021-10-30-raspios- ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (MSFT_DiskImage:ROOT/Microsoft/.../MSFT_DiskImage) [Mount-DiskImage], CimE
xception
+ FullyQualifiedErrorId : HRESULT 0x80070570,Mount-DiskImage
这意味着图像文件已损坏/损坏且不可读。
我究竟做错了什么?这个 cmdlet 是否能够挂载映像的第一个分区?如果没有,我需要继续寻找其他解决方案。
好吧,您的映像不是 ISO 映像——当您指定“ISO”作为类型时,Windows 期望它包含实际的 ISO9660 或 UDF 文件系统,而不是 MBR 分区表。(换句话说,“ISO”的意思是“作为虚拟 CD/DVD 有意义的东西”,它不仅仅是一般磁盘映像的术语。)
你可能有更好的运气
-StorageType VHD
,它将图像附加为虚拟 HDD(Windows 将识别其中的任意数量的分区,就像在物理 HDD 上一样)。但是,这种类型不接受原始图像——它们必须是 VHD 或 VHDX (Hyper-V) 容器格式。但是因为
VHD
问题仅在于容器,而不是内容,所以应该可以轻松地将图像从原始 .img 转换为 .vhd 进行编辑,然后在完成后返回原始图像。该qemu-img
工具可以做到这两点。示例说明