如何在Windows 2022 Server中安装Winget包管理器

如何在Windows 2022 Server中安装Winget包管理器

自从 Linux 系统诞生以来,无论是桌面还是服务器,它们都使用内置的包管理器来安装包,但是,在 Windows 上这是不可能的。 但随着微软的包管理器Winget的开发,包的安装现在变得更加方便和简单。 然而,在撰写本文时,Winget 的功能仅存在于 Windows 10 和 11 系统中,Windows 服务器仍然无法使用它。 但是,有一种方法可以通过满足其要求和依赖关系来在 Windows 服务器上手动安装 Winget,在这里我们学习如何在 Windows Server 2022 上执行此操作。

推荐:如何在Windows 11中使用Winstall批量安装应用程序

Winget是什么?

Winget(开源)是 Microsoft 为其 Windows 10 和 11 操作系统开发的官方包管理器。 它是一个命令行工具,可通过 PowerShell 或终端使用来管理软件应用程序。

以下是 Winget 的一些核心功能和用途:

  • Winget 提供了一种使用命令行安装、更新、卸载和配置 Windows 应用程序的简单方法。
  • 它使用命令行界面,因此无需访问 Microsoft Store 或第三方应用程序网站来安装软件。
  • Winget 使用包含软件元数据的软件包存储库,确保安装和配置正确版本的应用程序。
  • 由于 Winget 是一个命令行工具,因此可以编写脚本并将其集成到更大的自动化工作流程中,这对于系统管理员和 DevOps 非常有利。
  • Winget 是一个开源工具,不仅可以处理 EXE,还可以处理 MSI 和 MSIX 包。 其代码可在 Git Hub 上找到。
  • 使用它,Windows 用户将获得类似于 Linux distors 中的包管理器或 macOS 上的 Homebrew 的体验。
  • 它简化了在 Windows 上管理软件的过程,尤其是批量或跨多个软件的管理。

先决条件

  • 要学习本教程,我们需要 Windows Server 2022 或 2019。我们尚未在其他旧版本上尝试过,但您可以。
  • 依赖关系 – Microsoft.ui.xaml.2.7.xMicrosoft.VCLibs.x64
  • 管理员访问服务器。
  • 互联网

以下是在 Windows 服务器上未安装 Winget 的情况下尝试使用 PowerShell 或命令提示符使用 Winget 时出现的错误。

winget : The term 'winget' is not recognized as the name of a cmdlet, function, script file, or operable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ winget
+ ~~~~~~
+ CategoryInfo : ObjectNotFound: (winget:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

或者如果其许可证未添加到系统中。

Program 'winget.exe' failed to run: No applicable app licenses foundAt line:1 char:1

安装 Microsoft UI XAML 和 VCLib

由于Winget不是Windows Server 2022的一部分,并且默认情况下不附带Winget,因此我们需要手动安装Winget所需的依赖项。 让我们下载 Microsoft UI XAML,然后下载 Microsoft VCLibs。

Microsoft.UI.Xaml

Microsoft.UI.Xaml 是指 Windows UI 库 (WinUI) 的 NuGet 包。 它提供了一套 UI 控件和其他用户界面元素,开发人员可以使用它们来创建现代 Windows 应用程序。 要获取 Microsoft UI XAML 2.7 版本,请访问此  Nuget Web page 并单击 下载 关联。 要获得想法,请参阅给定的屏幕截图。

下载 Microsoft UI XML

在 Windows 2022 服务器上下载 Microsoft UI XAML 后,选择下载的文件并按 F2键 或右键单击选择“改名”来编辑它的扩展名。

在 Windows 服务器上重命名文件

改变 nupkg延伸至 zip压缩。 完成后,我们需要 右键点击 在文件上 提炼 它。

将 Nupkg 重命名为 ZIP

现在,按 转移钥匙 右键点击 上的任何地方 空白的 您提取文件的区域选择“Open PowerShell Windows here在此处打开 PowerShell Windows“ 选项。

在文件夹内打开 PowerShell

使用 添加Appxpackages 在 PowerShell 中使用命令来安装 用户界面 XML 在 Windows 服务器上。 这是命令:

切换到解压后的文件夹:

cd .\microsoft.ui.xaml.2.7.3\

安装UI XML的APPX包

Add-AppxPackage -Path .\tools\AppX\x64\Release\Microsoft.UI.Xaml.2.7.3.appx
安装 UI XML APPX 包

Microsoft.VCLibs Appx

 Microsoft Visual C++ 代表 Microsoft Visual C++ 库。 这些库对于在 Windows 上运行使用 Visual C++ 框架开发的应用程序是必需的。 要下载它,请访问 微软网页 并根据您的系统架构下载它,例如,我们使用的是Intel 64位,所以我们下载了x64版本。

Microsoft.VCLibs 下载

现在,再次打开保存了 Microsoft VCLibs Appx 文件的 PowerShell,并将其添加到您的系统中。

添加 Microsoft VCLibs 包

下载 Microsoft.DesktopAppInstaller 和

一旦我们满足了 Windows Server 2022 上 Winget 的要求,下一步就是下载支持应用程序安装的 Msixbundle – Winget  在我们的系统上。 为此,请访问 Winget 的 GitHub 页面 并下载两个文件,其中一个是 微软桌面应用程序安装程序 另一个是 许可文件 可用它。

从 GitHub 下载 MSI Winget 捆绑包

在 Windows 2022 服务器上安装 Winget

一旦系统上有这两个文件,请再次打开 powershell在保存文件的目录内。

运行给定的命令来安装已下载的 MSIXBundle

句法:

Add-AppxPackage package-name

笔记: 根据我们下载的文件名,我们已在命令中使用它。 如果您的情况有所不同,请相应地使用它。

Add-AppxPackage .\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle

安装桌面安装程序后,还将下载的许可证文件分配给它:

句法

Add-AppxProvisionedPackage -Online -Package name-of-the-package -LicensePath name-of-the-Licensefile

我们的例子中使用的命令:

Add-AppxProvisionedPackage -Online -Package .\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle -LicensePath .\24146eb205d040e69ef2d92d7034d97f_License1.xml
安装 Winget 的 Microsoft 桌面安装程序应用程序

验证 Windows 服务器上的 Winget

成功完成上述所有步骤后,关闭所有当前的 PowerShell 窗口并使用管理员权限再次打开 PowerShell。

输入 –Winget您将看到所有可用的选项:

Windows 2022 服务器上的 Winget 命令

开始使用 Winget:

在 Windows 2022 服务器上安装 Winget 后,我​​们可以借助命令提示符或 Powershell 开始安装、更新和管理软件包。 例如,要安装 Git,您可以运行:

winget install Git.Git

要搜索包,请使用:

winget search package-name

使用 Winget 更新和卸载:

Winget 还可以轻松更新和卸载软件包。 对于更新:

winget upgrade package-name

以及卸载:

winget uninstall package-name

结论

尽管 Winget 不能在 Windows 服务器上开箱即用,但也许将来 Microsoft 会添加它。 尽管如此,Winget 对于任何 Windows 服务器环境来说都是一个非常强大的补充,可以像专业人士一样下载和安装应用程序。 它不仅节省了用户的时间,还让他们更有效地管理应用程序。

推荐:加密Linux分区的理由


发表评论