我已经安装了 Chocolatey 并通过安装 Docker Desktop 对其进行了测试。
一切都很好,但我想知道,如果我通过 Chocolatey 卸载 Docker Desktop,包管理器是否会删除安装过程中带来的所有内容?
Chocolatey 的重点不就是卸载时不留下注册表垃圾和其他类似的剩余文件吗?
我的 DevOps 老师说应该使用 Chocolatey 来安装我们的 DevOps 工具,因为它比通过常规安装程序安装更能让系统更干净。
此外,由于 Chocolatey 必须使用 Chocolatey 网站上提供的脚本进行安装,卸载 Chocolatey 本身是否会留下一些配置文件和类似的东西?
答案1
你问了几个不同的问题——我会尽力一一解答。
- (正如@Guy 的回复所述)一些安装仍然需要通过注册表项等手动删除。这不是 chocolatey 的错误,而是各个安装程序的错误,以及它们是否“干净”。
- 个人安装程序可以做任何他们想做的事情,没有警察确保安装程序确实删除了他们在安装期间或运行时放入您的计算机的所有钩子、注册表项、文件、病毒等。确保计算机再次“干净”的唯一方法是使用新的克隆/重新格式化的机器、新安装操作系统等重新开始。
- Chocolatey 只是将安装/卸载变成了一个可编写脚本的操作,而不是手动/图形界面的操作。这也意味着它可以扩展到 N 个安装或 X 组 N 个安装,以适应不同的机器配置。与 Linux 机器上的包管理类似,这使得大规模管理更加高效。
- 示例 1:添加了 2 个新用户,请安装新计算机以供设置。(通常此操作可能需要几个小时,但使用脚本 choco 导出和安装,您可以在 5-10 分钟内完成)
- 示例 2:您的公司管理 1000 台虚拟机,其中 500 台用于用户,500 台用于服务器。现在需要在所有 1000 台机器上更新 60 个程序。如果您知道组合键 RDP 并单击 Windows 中的“程序和功能”,则每个程序大约需要 1-2 分钟才能安装,然后单击下一个程序。因此大约需要 60000 分钟或至少 41 天。经过这么长时间,当您完成时,将有另一组 60 个程序需要更新。相反,如果您之前在这些盒子上安装了 chocolatey,您可以在几分钟内启动所有更新,甚至可以编写脚本来每晚更新它们。
答案2
这里有很多关于 choco Uninstall 命令的信息:
Chocolatey 授权版本中的同步器和 AutoUninstaller 增强功能可确保 Autouninstaller 无需卸载脚本即可有效删除软件,效率高达 95%。这是因为同步器可确保注册表快照保持最新,而授权增强功能能够检查更多位置以确定如何自动卸载软件。
卸载 Chocolatey 如果您决定不喜欢 Chocolatey,只需删除文件夹(以及它创建的环境变量)即可将其卸载。由于它实际上并未安装在“程序和功能”中,因此您不必担心它会弄乱您的注册表(不过,对于您使用 Chocolatey 或手动安装的应用程序,情况就不同了)。