适用于: .NET Core 2.1、.NET Core 3.1、.NET 5
本部分的目标
本部分介绍如何在 Linux 上安装 .NET Core。
本主题假定你正在运行 Ubuntu,并且你正在使用 APT 命令行工具安装应用程序。
先决条件
此部分假定你知道以下过程:
- 如何以超级用户身份运行命令(根)。
- 如何使用包管理器安装应用程序。
如果至少不熟悉这些过程,请在继续之前参考前面的部分。
安装 .NET Core
有关在此过程中的参考信息,请参阅 准备适用于 .NET Core 的 Linux 系统。
有关不同 Linux 分发版上支持的 .NET Core 版本,请参阅 在 Linux 上安装 .NET。
在本文中,可以选择 Linux 版本以获取分发说明。 由于使用的是 Ubuntu 18.04,因此我们将按照 Ubuntu 上安装 .NET SDK 或 Ubuntu 上的 .NET 运行时的“18.04”部分的说明进行操作。
首先运行以下命令:
wget https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
第一个命令是一个 wget
命令。 根据其帮助页面, wget
是一个非交互式网络下载程序。 它会从目录中的 HTTP 服务器下载文件。 它可以在后台运行,即使用户未登录也是如此。 此命令wget
从packages.microsoft.com
当前目录中的服务器下载Packages-microsoft-prod.deb文件。
如果在运行命令后运行ls
wget
,应会看到包已下载到当前目录中。
第二个命令 dpkg
是 Debian 和 Ubuntu 的包管理器。 此命令将Microsoft包签名密钥添加到受信任的密钥列表中,然后添加包存储库。
由于我们已下载并添加了新的包存储库,因此包管理器必须了解它。 因此,必须使用命令更新包管理器 sudo apt update
。
现在,包管理器已了解Microsoft存储库,我们可以继续安装。
.NET Core 版本
撰写本文时,最新的 .NET Core 版本为 5.0。 建议安装最新版本。 但是,还应安装 .NET Core 3.1 SDK。 这是必要的,因为本系列文章中的故障排除实验室假设你使用的是 BuggyAmb -- 一个 buggy ASP.NET Core 应用程序,我们用来了解如何排查 ASP.NET Core 应用程序问题。 BuggyAmb 的当前版本为 .NET Core 3.1。
这些应用程序的不同版本可以在同一台计算机上并行运行。
标识正确的包名称
根据 Ubuntu 上安装 .NET SDK 或 .NET 运行时的“如何安装其他版本”部分,.NET Core 包以 {product}-{type}-{version} 格式命名,并具有以下条件:
- 产品为 dotnet 或 aspnetcore。 请注意, 安装 .NET Core 时还会安装 aspnetcore 。
- 类型为 sdk 或 运行时。
- 撰写本文时,支持的 .NET Core 版本为 5.0、3.1、3.0 和 2.1。
例如,如果要安装 ASP.NET Core 运行时版本 5.0,则产品将为 aspnetcore-runtime-5.0。
由于必须为此系列文章安装 .NET Core 3.1 SDK,因此包名称将为 dotnet-sdk-3.1。
应了解如何使用 APT 安装包。 如果没有,请参阅前面的部分。 若要安装 .NET Core 3.1 SDK,请运行 sudo apt install dotnet-sdk-3.1
。
输入 y ,然后按 Enter。 包管理器下载并安装 .NET Core 和 ASP.NET Core 运行时和 SDK。
注意
还可以通过运行以下命令 sudo apt install dotnet-sdk-5.0
来安装 .NET 5.0 SDK。
现在,通过运行 dotnet --info
来验证运行时和 SDK 的安装。 以下屏幕截图显示并行安装 .NET Core 3.1 和 5.0 运行时和 SDK。
.NET Core 和 ASP.NET Core 运行时与 .NET Core SDK 一起安装。 如果通过运行 ll /usr/share/dotnet/sdk
检查 SDK 文件夹,也可以看到这两个版本。
现在已安装 .NET Core SDK 和运行时。 在下一部分中,我们将使用 .NET CLI 工具创建 ASP.NET 核心应用程序。
第三方信息免责声明
本文中提到的第三方产品由 Microsoft 以外的其他公司提供。 Microsoft 不对这些产品的性能或可靠性提供任何明示或暗示性担保。