在 Ubuntu 上安装 .NET SDK 或 .NET 运行时

Ubuntu 支持 .NET。 本文介绍如何在 Ubuntu 上安装 .NET。 如果 Ubuntu 版本不受支持,则该版本不再支持 .NET。

如果要开发 .NET 应用,请安装 SDK(包括运行时)。 或者,如果只需运行应用程序,请安装运行时。 如果要安装该运行时,建议安装 ASP.NET Core 运行时,因为它同时包括 .NET 和 ASP.NET Core 运行时。

如果已安装 SDK 或运行时,请使用 dotnet --list-sdksdotnet --list-runtimes 命令查看安装了哪些版本。 有关详细信息,请参阅如何检查是否已安装 .NET

重要

仅在 x64 体系结构上支持包管理器安装。 对于 ARM 等其他体系结构,必须通过其他一些方式安装 .NET,例如,通过 Snap 和安装程序脚本进行安装,或通过手动提取二进制文件进行安装。

有关在不使用包管理器的情况下安装 .NET 的详细信息,请参阅以下文章之一:

支持的分发

下表列出了当前支持的 .NET 版本以及支持它们的 Ubuntu 版本。 这些版本在 .NET 版本达到支持终止日期Ubuntu 的版本达到生命周期之前仍受支持。

  • ✔️ 指示 Ubuntu 或 .NET 版本仍受支持。
  • ❌ 指示 Ubuntu 或 .NET 版本在该 Ubuntu 版本上不受支持。
  • 当 Ubuntu 版本和 .NET 版本都有 ✔️ 时,将支持该 OS 和 .NET 组合。
Ubuntu .NET Core 2.1 .NET Core 3.1 .NET 5.0
✔️ 21.04 ✔️ 2.1 ✔️ 3.1 ✔️ 5.0
20.10 ✔️ 2.1 ✔️ 3.1 ✔️ 5.0
✔️ 20.04 (LTS) ✔️ 2.1 ✔️ 3.1 ✔️ 5.0
19.10 ✔️ 2.1 ✔️ 3.1 ✔️ 5.0
19.04 ✔️ 2.1 ✔️ 3.1 ❌ 5.0
18.10 ✔️ 2.1 ❌ 3.1 ❌ 5.0
✔️ 18.04 (LTS) ✔️ 2.1 ✔️ 3.1 ✔️ 5.0
17.10 ✔️ 2.1 ❌ 3.1 ❌ 5.0
17.04 ✔️ 2.1 ❌ 3.1 ❌ 5.0
16.10 ❌ 2.1 ❌ 3.1 ❌ 5.0
✔️ 16.04 (LTS) ✔️ 2.1 ✔️ 3.1 ✔️ 5.0

以下 .NET 版本不再受到支持。 这些版本的下载仍保持发布状态:

  • 3.0
  • 2.2
  • 2.0

删除预览版本

使用包管理器管理 .NET 安装时,如果之前安装了预览版本,则可能会遇到冲突。 包管理器可能会将非预览版本解释为 .NET 的较早版本。 若要安装非预览版本,需要首先卸载预览版本。 有关如何卸载 .NET 的详细信息,请参阅如何删除 .NET 运行时和 SDK

21.04 ✔️

使用 APT 进行安装可通过几个命令来完成。 安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。

打开终端并运行以下命令:

wget https://packages.microsoft.com/config/ubuntu/21.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

安装 SDK

.NET SDK 使你可以通过 .NET 开发应用。 如果安装 .NET SDK,则无需安装相应的运行时。 若要安装 .NET SDK,请运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-5.0

重要

如果收到类似于“找不到包 dotnet-sdk-5.0”的错误消息,请参阅 APT 疑难解答部分。

安装运行时

通过 ASP.NET Core 运行时,可以运行使用 .NET 开发且未提供运行时的应用。 以下命令将安装 ASP.NET Core 运行时,这是与 .NET 最兼容的运行时。 在终端中,运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-5.0

重要

如果收到类似于“找不到包 aspnetcore-runtime-5.0”的错误消息,请参阅 APT 疑难解答部分。

作为 ASP.NET Core 运行时的一种替代方法,你可以安装不包含 ASP.NET Core 支持的 .NET 运行时:将上一命令中的 aspnetcore-runtime-5.0 替换为 dotnet-runtime-5.0

sudo apt-get install -y dotnet-runtime-5.0

20.10 ❌

❌ 请注意,此版本的 Ubuntu 不再受支持。

使用 APT 进行安装可通过几个命令来完成。 安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。

打开终端并运行以下命令:

wget https://packages.microsoft.com/config/ubuntu/20.10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

安装 SDK

.NET SDK 使你可以通过 .NET 开发应用。 如果安装 .NET SDK,则无需安装相应的运行时。 若要安装 .NET SDK,请运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-5.0

重要

如果收到类似于“找不到包 dotnet-sdk-5.0”的错误消息,请参阅 APT 疑难解答部分。

安装运行时

通过 ASP.NET Core 运行时,可以运行使用 .NET 开发且未提供运行时的应用。 以下命令将安装 ASP.NET Core 运行时,这是与 .NET 最兼容的运行时。 在终端中,运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-5.0

重要

如果收到类似于“找不到包 aspnetcore-runtime-5.0”的错误消息,请参阅 APT 疑难解答部分。

作为 ASP.NET Core 运行时的一种替代方法,你可以安装不包含 ASP.NET Core 支持的 .NET 运行时:将上一命令中的 aspnetcore-runtime-5.0 替换为 dotnet-runtime-5.0

sudo apt-get install -y dotnet-runtime-5.0

20.04 ✔️

使用 APT 进行安装可通过几个命令来完成。 安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。

打开终端并运行以下命令:

wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

安装 SDK

.NET SDK 使你可以通过 .NET 开发应用。 如果安装 .NET SDK,则无需安装相应的运行时。 若要安装 .NET SDK,请运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-5.0

重要

如果收到类似于“找不到包 dotnet-sdk-5.0”的错误消息,请参阅 APT 疑难解答部分。

安装运行时

通过 ASP.NET Core 运行时,可以运行使用 .NET 开发且未提供运行时的应用。 以下命令将安装 ASP.NET Core 运行时,这是与 .NET 最兼容的运行时。 在终端中,运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-5.0

重要

如果收到类似于“找不到包 aspnetcore-runtime-5.0”的错误消息,请参阅 APT 疑难解答部分。

作为 ASP.NET Core 运行时的一种替代方法,你可以安装不包含 ASP.NET Core 支持的 .NET 运行时:将上一命令中的 aspnetcore-runtime-5.0 替换为 dotnet-runtime-5.0

sudo apt-get install -y dotnet-runtime-5.0

19.10 ❌

❌ 请注意,此版本的 Ubuntu 不再受支持。

使用 APT 进行安装可通过几个命令来完成。 安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。

打开终端并运行以下命令:

wget https://packages.microsoft.com/config/ubuntu/19.10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

安装 SDK

.NET Core SDK 使你可以通过 .NET Core 开发应用。 如果安装 .NET Core SDK,则无需安装相应的运行时。 若要安装 .NET Core SDK,请运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-3.1

重要

如果收到类似于“找不到包 dotnet-sdk-3.1”的错误消息,请参阅 APT 疑难解答部分。

安装运行时

.NET Core 运行时允许运行使用不随附运行时的 .NET Core 所开发的应用。 以下命令安装 ASP.NET Core 运行时,这是与 .NET Core 最兼容的运行时。 在终端中,运行以下命令。

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-3.1

重要

如果收到类似于“找不到包 aspnetcore-runtime-3.1”的错误消息,请参阅 APT 疑难解答部分。

作为 ASP.NET Core 运行时的一种替代方法,你可以安装不包含 ASP.NET Core 支持的 .NET Core 运行时:将上一命令中的 aspnetcore-runtime-3.1 替换为 dotnet-runtime-3.1

sudo apt-get install -y dotnet-runtime-3.1

19.04 ❌

❌ 请注意,此版本的 Ubuntu 不再受支持。

使用 APT 进行安装可通过几个命令来完成。 安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。

打开终端并运行以下命令:

wget https://packages.microsoft.com/config/ubuntu/19.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

安装 SDK

.NET Core SDK 使你可以通过 .NET Core 开发应用。 如果安装 .NET Core SDK,则无需安装相应的运行时。 若要安装 .NET Core SDK,请运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-3.1

重要

如果收到类似于“找不到包 dotnet-sdk-3.1”的错误消息,请参阅 APT 疑难解答部分。

安装运行时

.NET Core 运行时允许运行使用不随附运行时的 .NET Core 所开发的应用。 以下命令安装 ASP.NET Core 运行时,这是与 .NET Core 最兼容的运行时。 在终端中,运行以下命令。

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-3.1

重要

如果收到类似于“找不到包 aspnetcore-runtime-3.1”的错误消息,请参阅 APT 疑难解答部分。

作为 ASP.NET Core 运行时的一种替代方法,你可以安装不包含 ASP.NET Core 支持的 .NET Core 运行时:将上一命令中的 aspnetcore-runtime-3.1 替换为 dotnet-runtime-3.1

sudo apt-get install -y dotnet-runtime-3.1

18.10 ❌

❌ 请注意,此版本的 Ubuntu 不再受支持。

使用 APT 进行安装可通过几个命令来完成。 安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。

打开终端并运行以下命令:

wget https://packages.microsoft.com/config/ubuntu/18.10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

安装 SDK

.NET Core SDK 使你可以通过 .NET Core 开发应用。 如果安装 .NET Core SDK,则无需安装相应的运行时。 若要安装 .NET Core SDK,请运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-2.1

重要

如果收到类似于“找不到包 dotnet-sdk-2.1”的错误消息,请参阅 APT 疑难解答部分。

安装运行时

.NET Core 运行时允许运行使用不随附运行时的 .NET Core 所开发的应用。 以下命令安装 ASP.NET Core 运行时,这是与 .NET Core 最兼容的运行时。 在终端中,运行以下命令。

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-2.1

重要

如果收到类似于“找不到包 aspnetcore-runtime-2.1”的错误消息,请参阅 APT 疑难解答部分。

作为 ASP.NET Core 运行时的一种替代方法,你可以安装不包含 ASP.NET Core 支持的 .NET Core 运行时:将上一命令中的 aspnetcore-runtime-2.1 替换为 dotnet-runtime-2.1

sudo apt-get install -y dotnet-runtime-2.1

18.04 ✔️

使用 APT 进行安装可通过几个命令来完成。 安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。

打开终端并运行以下命令:

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
rm packages-microsoft-prod.deb

安装 SDK

.NET SDK 使你可以通过 .NET 开发应用。 如果安装 .NET SDK,则无需安装相应的运行时。 若要安装 .NET SDK,请运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-5.0

重要

如果收到类似于“找不到包 dotnet-sdk-5.0”的错误消息,请参阅 APT 疑难解答部分。

安装运行时

通过 ASP.NET Core 运行时,可以运行使用 .NET 开发且未提供运行时的应用。 以下命令将安装 ASP.NET Core 运行时,这是与 .NET 最兼容的运行时。 在终端中,运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-5.0

重要

如果收到类似于“找不到包 aspnetcore-runtime-5.0”的错误消息,请参阅 APT 疑难解答部分。

作为 ASP.NET Core 运行时的一种替代方法,你可以安装不包含 ASP.NET Core 支持的 .NET 运行时:将上一命令中的 aspnetcore-runtime-5.0 替换为 dotnet-runtime-5.0

sudo apt-get install -y dotnet-runtime-5.0

17.10 ❌

❌ 请注意,此版本的 Ubuntu 不再受支持。

使用 APT 进行安装可通过几个命令来完成。 安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。

打开终端并运行以下命令:

wget https://packages.microsoft.com/config/ubuntu/17.10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

安装 SDK

.NET Core SDK 使你可以通过 .NET Core 开发应用。 如果安装 .NET Core SDK,则无需安装相应的运行时。 若要安装 .NET Core SDK,请运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-2.1

重要

如果收到类似于“找不到包 dotnet-sdk-2.1”的错误消息,请参阅 APT 疑难解答部分。

安装运行时

.NET Core 运行时允许运行使用不随附运行时的 .NET Core 所开发的应用。 以下命令安装 ASP.NET Core 运行时,这是与 .NET Core 最兼容的运行时。 在终端中,运行以下命令。

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-2.1

重要

如果收到类似于“找不到包 aspnetcore-runtime-2.1”的错误消息,请参阅 APT 疑难解答部分。

作为 ASP.NET Core 运行时的一种替代方法,你可以安装不包含 ASP.NET Core 支持的 .NET Core 运行时:将上一命令中的 aspnetcore-runtime-2.1 替换为 dotnet-runtime-2.1

sudo apt-get install -y dotnet-runtime-2.1

17.04 ❌

❌ 请注意,此版本的 Ubuntu 不再受支持。

使用 APT 进行安装可通过几个命令来完成。 安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。

打开终端并运行以下命令:

wget https://packages.microsoft.com/config/ubuntu/17.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

安装 SDK

.NET Core SDK 使你可以通过 .NET Core 开发应用。 如果安装 .NET Core SDK,则无需安装相应的运行时。 若要安装 .NET Core SDK,请运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-2.1

重要

如果收到类似于“找不到包 dotnet-sdk-2.1”的错误消息,请参阅 APT 疑难解答部分。

安装运行时

.NET Core 运行时允许运行使用不随附运行时的 .NET Core 所开发的应用。 以下命令安装 ASP.NET Core 运行时,这是与 .NET Core 最兼容的运行时。 在终端中,运行以下命令。

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-2.1

重要

如果收到类似于“找不到包 aspnetcore-runtime-2.1”的错误消息,请参阅 APT 疑难解答部分。

作为 ASP.NET Core 运行时的一种替代方法,你可以安装不包含 ASP.NET Core 支持的 .NET Core 运行时:将上一命令中的 aspnetcore-runtime-2.1 替换为 dotnet-runtime-2.1

sudo apt-get install -y dotnet-runtime-2.1

16.10 ❌

❌ 请注意,此版本的 Ubuntu 不再受支持。

使用 APT 进行安装可通过几个命令来完成。 安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。

打开终端并运行以下命令:

wget https://packages.microsoft.com/config/ubuntu/16.10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

安装 SDK

.NET Core SDK 使你可以通过 .NET Core 开发应用。 如果安装 .NET Core SDK,则无需安装相应的运行时。 若要安装 .NET Core SDK,请运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-2.1

重要

如果收到类似于“找不到包 dotnet-sdk-2.1”的错误消息,请参阅 APT 疑难解答部分。

安装运行时

.NET Core 运行时允许运行使用不随附运行时的 .NET Core 所开发的应用。 以下命令安装 ASP.NET Core 运行时,这是与 .NET Core 最兼容的运行时。 在终端中,运行以下命令。

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-2.1

重要

如果收到类似于“找不到包 aspnetcore-runtime-2.1”的错误消息,请参阅 APT 疑难解答部分。

作为 ASP.NET Core 运行时的一种替代方法,你可以安装不包含 ASP.NET Core 支持的 .NET Core 运行时:将上一命令中的 aspnetcore-runtime-2.1 替换为 dotnet-runtime-2.1

sudo apt-get install -y dotnet-runtime-2.1

16.04 ✔️

使用 APT 进行安装可通过几个命令来完成。 安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。

打开终端并运行以下命令:

wget https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

安装 SDK

.NET SDK 使你可以通过 .NET 开发应用。 如果安装 .NET SDK,则无需安装相应的运行时。 若要安装 .NET SDK,请运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-5.0

重要

如果收到类似于“找不到包 dotnet-sdk-5.0”的错误消息,请参阅 APT 疑难解答部分。

安装运行时

通过 ASP.NET Core 运行时,可以运行使用 .NET 开发且未提供运行时的应用。 以下命令将安装 ASP.NET Core 运行时,这是与 .NET 最兼容的运行时。 在终端中,运行以下命令:

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-5.0

重要

如果收到类似于“找不到包 aspnetcore-runtime-5.0”的错误消息,请参阅 APT 疑难解答部分。

作为 ASP.NET Core 运行时的一种替代方法,你可以安装不包含 ASP.NET Core 支持的 .NET 运行时:将上一命令中的 aspnetcore-runtime-5.0 替换为 dotnet-runtime-5.0

sudo apt-get install -y dotnet-runtime-5.0

如何安装其他版本

.NET 的所有版本均可从 https://dotnet.microsoft.com/download/dotnet 下载,但需要手动安装。 可尝试使用包管理器安装不同版本的 .NET。 但请求的版本可能不可用。

添加到包管理器源的包以可改动的格式命名,例如:{product}-{type}-{version}

  • product
    要安装的 .NET 产品的类型。 有效选项是:

    • dotnet
    • aspnetcore
  • type
    选择 SDK 或运行时。 有效选项是:

    • SDK
    • Runtime — 运行时
  • version
    要安装的 SDK 或运行时的版本。 本文始终提供最新支持的版本的说明。 有效选项为任何已发布的版本,例如:

    • 5.0
    • 3.1
    • 3.0
    • 2.1

    尝试下载的 SDK/运行时可能不适用于 Linux 发行版。 有关受支持的发行版列表,请参阅在 Linux 上安装 .NET

示例

  • 安装 ASP.NET Core 5.0 运行时:aspnetcore-runtime-5.0
  • 安装 .NET Core 2.1 运行时:dotnet-runtime-2.1
  • 安装 .NET 5.0 SDK:dotnet-sdk-5.0
  • 安装 .NET Core 3.1 SDK:dotnet-sdk-3.1

缺少包

如果包版本组合无效,则它不可用。 例如,未安装 ASP.NET Core SDK,所有 SDK 组件都包含在 .NET SDK 中。 aspnetcore-sdk-2.2 的值不正确,应为 dotnet-sdk-2.2。 有关 .NET 支持的 Linux 发行版的列表,请参阅 .NET 依赖项和要求

使用 APT 更新 .NET

当新的修补程序版本适用于 .NET 时,只需使用以下命令通过 APT 进行升级:

sudo apt-get update
sudo apt-get upgrade

如果安装 .NET 后已升级过 Linux 分发版,可能需要重新配置 Microsoft 包存储库。 运行当前分发版本的安装说明,升级到相应的包存储库以进行 .NET 更新。

APT 疑难解答

本部分提供有关使用 APT 安装 .NET 时可能会遇到的常见错误的信息。

找不到包

重要

仅在 x64 体系结构上支持包管理器安装。 对于 ARM 等其他体系结构,必须通过其他一些方式安装 .NET,例如,通过 Snap 和安装程序脚本进行安装,或通过手动提取二进制文件进行安装。

有关在不使用包管理器的情况下安装 .NET 的详细信息,请参阅以下文章之一:

找不到 \ 无法安装某些包

如果收到类似于“找不到包 {dotnet-package}”或“无法安装某些包”的错误消息,请运行以下命令 。

以下命令组中有两个占位符。

  • {dotnet-package}
    此项表示要安装的 .NET 包,如 aspnetcore-runtime-3.1。 它在以下 sudo apt-get install 命令中使用。

  • {os-version}
    这表示你正在使用的发行版。 此项在以下 wget 命令中使用。 发行版是数值,如 Ubuntu 上的 20.04 或 Debian 上的 10

首先,尝试清除包列表:

sudo dpkg --purge packages-microsoft-prod && sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update

然后,再次尝试安装 .NET。 如果这不起作用,可使用以下命令运行手动安装:

sudo apt-get install -y gpg
wget -O - https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor -o microsoft.asc.gpg
sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/
wget https://packages.microsoft.com/config/ubuntu/{os-version}/prod.list
sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list
sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y {dotnet-package}

未能提取

安装 .NET 包时,可能会看到类似于 Failed to fetch ... File has unexpected size ... Mirror sync in progress? 的错误。 此错误表示 .NET 的包源正在通过更新的包版本进行更新,应稍后重试。 升级期间,包源的不可用时间不应超过 30 分钟。 如果持续收到此错误超过 30 分钟,请在 https://github.com/dotnet/core/issues 中提交问题。

依赖项

使用包管理器进行安装时,将为你安装这些库。 但是,如果手动安装 .NET 或发布自包含的应用,则需要确保已安装以下库:

  • libc6
  • libgcc1
  • libgssapi-krb5-2
  • libicu52(针对 14.x)
  • libicu55(针对 16.x)
  • libicu60(针对 18.x)
  • libicu66(适用于 20. x)
  • libssl1.0.0(适用于 14.x、16.x)
  • libssl1.1(适用于18.x、20.x)
  • libstdc++6
  • zlib1g

对于使用 System.Drawing.Common 程序集的 .NET 应用,还需要以下依赖项:

后续步骤