windows - 如何像 Explorer 那样挂载 VHDx,而不是像 Mount-DiskImage 或 VhdAttach 那样挂载?
问题描述
我使用 VHDx 图像来存储一些数据。我想要:
- 可以完全访问已安装的驱动器
- 保护 .vhdx 文件以防意外删除
- 让它在启动时自动挂载,而无需资源管理器为其打开一个新窗口
所以...
- 在裸机上使用 Windows 10 Pro (1803)
- 假设我的用户
User01
是Users
和Administrators
- 在像这样的文件夹中创建一个 VHDx
C:\disks\disk01.vhdx
- 将
C:\disks
权限设置为:- “拒绝,所有人,删除”
- “允许,系统,完全访问”
- “允许,管理员,完全访问”
- “允许,User01,完全访问”
- 继承:启用
- 该文件
C:\disks\disk01.vhdx
现在是:- 可读可写
User01
- 尝试删除或重命名文件时,Windows 首先要求管理员权限,然后无论如何都会抛出“文件访问被拒绝”
- 可读可写
现在是奇怪的部分:
- 如果我通过单击资源管理器中的文件来安装 VHDx ,它会安装它,打开一个新的资源管理器窗口,一切正常。
- 但是,如果我使用 Powershell(
User01
与Administrator
权限一样)并Mount-DiskImage它(或使用 VhdAttach),那么我可以创建文件并读取/写入虚拟驱动器中的文件,但不能重命名或删除它们!
驱动器的权限,如 drive Properties 和 SDDL O:SYG:SYD:PAI(A;OICI;FA;;;AU)(A;OICI;FA;;;SY)(A;OICI;FA;;;BA)(A;OICI;0x1301bf;;;BU)
,在这两种情况下似乎是相同的。但它们的工作方式不同。不知何故,VHDx 的文件权限仅在使用 Mount-DiskImage 时影响虚拟驱动器,而不是在使用资源管理器时。
.vhdx 文件的权限为:O:{User01_SID}G:{User01_SID}D:AI(D;ID;DTSD;;;WD)(A;ID;FA;;;BA)(A;ID;FA;;;SY)(A;ID;0x1301bf;;;AU)(A;ID;0x1200a9;;;BU)
Explorer 有何不同之处?如何像资源管理器一样自动挂载 VHDx 映像,但无需通过资源管理器并在启动时为每个驱动器打开新窗口?
PS:另外,对于没有关联驱动器号的路径安装图像,资源管理器会显示一个错误模式对话框,这真的很烦人。
更新:通过“计算机管理 -> 磁盘管理 -> 附加 VHD”安装 VHDx 可以正常工作,与使用资源管理器相同。这两者与 Mount-DiskImage 和 VhdAttach 所做的任何事情都有一些区别。
解决方案
推荐阅读
- path - 如何设置geth变量
- r - 簿记文档中的非 R 代码列表?
- c# - CustomAction 失败-“无法加载 DLL 'SQLite.Interop.dll':找不到指定的模块。(ExceptionHRESULT:0x8007007E)”
- html - SVG 在 Chrome 和 Firefox 上的对齐方式不同
- javascript - 如何连接google-maps-react中的connect()函数?
- primefaces - 如何制作具有相同数据表的tabview并对其进行分页
- vector - 使用管道 %>% 对向量进行子集化
- cassandra - Cassandra 指标 TotalDiskSpaceUsed:它是否包括复制因子?
- automation - 无法调用命令 (cmd) 来更改 GoCD 中的分辨率
- html - 自定义 Trustpilot 邀请审阅电子邮件