是否可以通过CLI或GUI应用程序向整个注册表Hive的所有键/值(例如System,SAM,ntuser.dat等)授予管理员权限?
问题是我正在使用MicrosoftDism
提供的工具来服务和部署Windows,我正在尝试执行一些操作,以便从以前安装的WIM映像中删除预安装的程序包,并且能够删除软件包很少,但是对于大多数报告,我拒绝访问蜂箱,因此我想适当地删除一些软件包,Dism需要从WIM蜂箱中更新或删除密钥,然后我需要授予这些密钥的管理员权限!Dism
Dism
我通常使用SetACL
应用程序来授予本地注册表的单个或多个键/值的管理员权限,但是对于Hive,我不知道该如何做。
PS:我浪费了很多时间去尝试调查和搜索信息,但是到现在为止,我还没有找到任何与如何执行此操作有关的现有信息,为什么呢?为什么没有(或者至少不容易找到)有关在整个Internet上进行此类操作的信息,我想念真正的问题或做错了什么?
这是我正在使用的命令:
.\Dism.exe /Remove-Package /PackageName:"(name)" /Image:"(mounted dir)" /English /LogPath:"(file.log)" /LogLevel:"2"
这是来自日志的样本,其中充满了此类Hive错误:
2014-04-12 04:29:18,错误CBS只有程序包所有者才能删除程序包:Checkpoint-VpnPlugin-Package〜31bf3856ad364e35〜amd64〜es-ES〜6.3.9600.16384 [HRESULT = 0x80070005-E_ACCESSDENIED]
2014-04-12 04:29:18,信息CBS无法卸载离线注册表:{bf1a281b-ad7b-4476-ac95-f47682990ce7} C:/ WinMount / Windows / System32 / config / SOFTWARE,客户端可能仍需要打开它。[HRESULT = 0x80070005-E_ACCESSDENIED]
2014-04-12 04:29:18,信息CBS无法卸载离线注册表:{bf1a281b-ad7b-4476-ac95-f47682990ce7} C:/ WinMount / Windows / System32 / config / SYSTEM,客户端可能仍需要打开它。[HRESULT = 0x80070005-E_ACCESSDENIED]
2014-04-12 04:29:18,信息CBS无法卸载离线注册表:{bf1a281b-ad7b-4476-ac95-f47682990ce7} C:/ WinMount / Windows / System32 / config / SECURITY,客户端可能仍需要打开它。[HRESULT = 0x80070005-E_ACCESSDENIED]
2014-04-12 04:29:18,信息CBS无法卸载离线注册表:{bf1a281b-ad7b-4476-ac95-f47682990ce7} C:/WinMount/Users/default/ntuser.dat,客户端可能仍需要打开它。[HRESULT = 0x80070005-E_ACCESSDENIED]
我在VirtualMachine中将所有这些加倍。
我不知道这是否重要,但是请注意,我已授予已挂载目录的所有文件和文件夹的完全管理员权限,我可以从系统限制的目录中复制/写入/删除,我的意思是我似乎没有文件权限有任何问题。
您想做的事情开箱即用。您会得到E_ACCESSDENIED,因为这些软件包仍然属于Windows Edition。您必须先取消该依赖关系。
目前已经是一个工具了一会儿它完成所有步骤你。
运行install_wim_tweak.exe /p <MountPath> /l
以枚举所有软件包。现在运行install_wim_tweak.exe /p <MountPath> /c FEATURE /r
以杀死它。
例子:
install_wim_tweak.exe /p "C:\Mount" /c Microsoft-Hyper-V /r
这会从文件夹C:\ Mount中已挂载的WIM中杀死所有与Hyper-V相关的功能。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句