• VMware与 Device/Credential Guard 不兼容,解决办法及心得


    以下为心路历程,想要直接解决可以直接拉到最后看后续

    百度要你取消Hyper-V功能,但我要用docker,以及一些相关的帖子都无效的情况下

    https://blog.csdn.net/u013667796/article/details/85843151

    自己根据官方文档进行研究解决办法,

    https://kb.vmware.com/s/article/2146361

    需要关闭DG/CG,然后链接都微软的相关文档

    https://docs.microsoft.com/en-us/windows/security/identity-protection/credential-guard/credential-guard-manage

    直接找Disable方法

    要编辑组策略和删除注册表的。感觉不太好惹,继续下翻看到

    惊喜,有一步解决的工具

    https://www.microsoft.com/en-us/download/details.aspx?id=53337

    下载下来解压

    里面的脚本就是这个ps1后缀的文件,根据官方文档,非英文系统要把脚本的

    $OSArch = $(gwmi win32_operatingsystem).OSArchitecture

    改为

    $OSAch = $((gwmi win32_operatingsystem).OSArchitecture).tolower()

    保存

    ps1要用powershell打开,右键,管理员启动!管理员启动!管理员启动!

    定位文件夹位置,我是在下载文件夹下的,

    然后运行

    DG_Readiness_Tool_v3.6.ps1 -Disable -AutoReboot

    如果你会遇到下面的问题(找不到命令 DG_Readiness_Tool_v3.6.ps1),继续看下去

    如果没遇到就电脑就会30s自动重启,可以直接跳到下面重启后的部分

    windows推荐使用

    .DG_Readiness_Tool_v3.6.ps1 -Disable -AutoReboot

    依旧有问题,根据推荐网址来到

    https://docs.microsoft.com/zh-cn/powershell/module/microsoft.powershell.core/about/about_execution_policies?view=powershell-6

    全页大致扫读一边,讲的是powershell运行的脚本的权限问题

    先在powershell中输入

    Get-ExecutionPolicy

    可以看到我们先在是处于受限状态,不能运行脚本

    然后更改权限为RemoteSigned

    Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

    然后Y更改执行策略

    更改成功!

    重新运行

    .DG_Readiness_Tool_v3.6.ps1 -Disable -AutoReboot

    会有一张类似下面这张图的(我已经修改过一遍了,可能有点不一样)

    中间会说系统不到指定表是正常的,这些原本就是要被删除的,找不到也无所谓,然后就会在30s后重启

     重启之后,会进入到下面这个画面

    这就是最早官方文档要我们Disable的东西,F3确认,

    下一个是要我们是否disabe虚拟化的基础安全的东西,我也F3确认了,

    然后开机,打开VMWare,继续学习鸟哥的linux课程了。

    最后,如果需要重新enable的话可以根据上面的微软官方文档中的信息重新启用组策略

    https://docs.microsoft.com/en-us/windows/security/identity-protection/credential-guard/credential-guard-manage

    最后的最后,附上随手找到的一个关于这个Decive guard的介绍

    https://docs.microsoft.com/zh-cn/previous-versions//dn986865(v=vs.85)

    后续,打开后Docker后无法打开VMware,

    报“Hardware assisted virtualization and data execution protection must be enabled“

    报“Hardware assisted virtualization and data execution protection must be enabled”

    查询了一下,发现vmware和docker不兼容,上面的VMware与 Device/Credential Guard 不兼容问题,也是这么引起的,

    参考

    https://blog.csdn.net/u012588542/article/details/85378508

    https://blog.csdn.net/W_C_X/article/details/89474587

    但是没有这么复杂的解决办法,用docker就启用守护进程,重启,用vmware就关闭守护进程,重启

    1,如果用docker,
    以管理员身份运行cmd:
    bcdedit /set hypervisorlaunchtype auto
    重启
    2,开启虚拟机linux,解决VMware与 Device/Credential Guard 不兼容
    以管理员身份运行cmd:
    bcdedit /set hypervisorlaunchtype off
    重启

    现在知道了,最开始那个csdn的帖子的那一行命令的用处了,自己当时还不知道要用管理员运行那一行命令。。。

    绕了好大一圈才想通

    作者:PowerZZJ
    本博客文章大多为原创,转载请请在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    C++ Low level performance optimize
    简单find命令的实现
    数据结构学习之栈
    随机数的生成
    数据结构学习(一)
    C复习---动态内存分配
    (转)虚拟文件系统(VFS)浅析
    (转) 中断处理程序&中断服务例程
    Gradle系列教程之依赖管理
    Gradle系列教程之依赖管理
  • 原文地址:https://www.cnblogs.com/powerzzjcode/p/11110542.html
Copyright © 2020-2023  润新知