Windows 执行“mount -o loop,rw,offset=X”的方式是什么?

Windows 执行“mount -o loop,rw,offset=X”的方式是什么?

我想使用 onto文件-o loopoffset=70254080夹 进行挂载。参数是这里的关键 - 我需要编辑./raspbian-jessie-lite.img./mntptrw.iso里面(设置wifi登录\密码)然后保存回来。如何在Windows 10上使用rw挂载?


Windows 上的 Bash 给我提供了未找到环回设备的错误,而建议

panda@host:~$ sudo /sbin/modprobe loop.o
modprobe: ERROR: ../libkmod/libkmod.c:556 kmod_search_moddep() could not open moddep file '/lib/modules/3.4.0+/modules.dep.bin'

所以我想知道,什么是免费、开源或共享软件,允许在 Windows 10 上执行这样的环回挂载操作?

答案1

下面的 powershell 脚本将获取 .iso 并将其挂载到目录中。我认为它也适用于 .img,但不确定它是否接受写入。

例如,将在$img_path以下D:\my_stuff\mount_me.iso位置创建一个挂载点D:\my_stuff\mount_me\

请注意命令 $drive.AddMountPoint 需要管理员权限。

param([Parameter(Mandatory=$true, Position=1)] [string] $img_path)

##
# https://social.technet.microsoft.com/Forums/scriptcenter/en-US/d2faa6c3-35e8-4bad-8ac8-24902bbb6f1a/what-is-the-point-of-nodriveletter-in-mountdiskimage
##

$ErrorActionPreference = "Stop"

$mount_dir_path = Join-Path `
    ([System.IO.Path]::GetDirectoryName($img_path)) `
    ([System.IO.Path]::GetFileNameWithoutExtension($img_path))

if(-Not (Test-Path -Path $mount_dir_path -PathType "Container")) {
    $null = mkdir $mount_dir_path
}

$img = Mount-DiskImage -ImagePath $img_path -NoDriveLetter -PassThru
$vol = Get-Volume -DiskImage $img
$drive = Get-WmiObject "win32_volume" -Filter "Label = '$($vol.FileSystemLabel)'"
$mount_return = $drive.AddMountPoint($mount_dir_path)

if($mount_return.ReturnValue -ne 0) {
    # https://msdn.microsoft.com/en-us/library/aa384762(v=vs.85).aspx
    throw $mount_return
}

##

答案2

不是 Windows-10 专家,但我认为能够使用 bash 并不意味着您可以使用整个 GNU/linux 工具链。

据我所知,Windows 上没有循环设备,也没有 modprobe(这是 Linux 内核的一个特有功能),可能也没有 mount(这次是某些文件系统的一个特有功能)

相关内容