繁体   English   中英

如何在 Ubuntu 16.04 LTS 上安装 dotnet SDK

[英]How to install dotnet SDK on Ubuntu 16.04 LTS

我一直在遵循此处提供的说明: https : //docs.microsoft.com/en-us/dotnet/core/linux-prerequisites?tabs=netcore2x

但是,当我尝试运行时,我不断收到错误消息”

sudo apt-get install dotnet-sdk-2.1.4

具体说:

E: 无法定位软件包 dotnet-sdk-2.1.4
E: 无法通过 glob 'dotnet-sdk-2.1.4' 找到任何包
E: 无法通过正则表达式“dotnet-sdk-2.1.4”找到任何包

但是,执行sudo apt search dotnet导致显示包。

我做错了什么吗?

尝试在终端上运行此命令:

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

然后更新您的系统:

sudo apt-get update

最后,运行命令安装.NET

sudo apt-get install dotnet-sdk-2.1.4

希望有帮助!

确保您还运行先决条件命令:

curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg

sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-xenial-prod xenial main" > /etc/apt/sources.list.d/dotnetdev.list'

最后:

sudo apt-get update
sudo apt-get install dotnet-sdk-2.1.4

看起来好像用于设置 apt 存储库的 deb 包有一些问题。 作为安装 ms repo 安装包后的快速修复:

sudo cp \
  /etc/apt/sources.list.d/microsoft-prod.list.save \
  /etc/apt/sources.list.d/microsoft-prod.list

 sudo apt-get update
 sudo apt-get install dotnet-sdk-2.1

修复在 ubuntu 18.04 上工作,但在这里似乎是同样的问题。

apt 无法定位软件包的原因之一是它们不适用于您的处理器架构。 dotnet core Linux 库不支持 32 位 PC(i386、i686),仅支持 64 位 PC(amd64)。 如果您碰巧安装了不同架构的 Ubuntu,apt-get 将报告上述错误:

Unable to locate package dotnet-sdk-2.2
E: Couldn't find any package by glob 'dotnet-sdk-2.2'
E: Couldn't find any package by regex 'dotnet-sdk-2.2'

使用以下命令检查您当前的架构:

arch

如果这返回 amd64 以外的任何内容,则您可能不走运。 除非您在 64 位 PC 上安装了 32 位 PC Ubuntu 映像。 如果是这种情况,请使用 64 位 PC (AMD64) 安装映像重新安装 Ubuntu。

缺少更新:

sudo apt-get update
sudo apt-get install dotnet-sdk-2.1.4

执行sudo apt-get update您可能会收到此错误:

W: GPG error: https://packages.microsoft.com/repos/microsoft-ubuntu-bionic-prod bionic InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY EB3E94ADBE1229CF
E: The repository 'https://packages.microsoft.com/repos/microsoft-ubuntu-bionic-prod bionic InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

请注意,它并不是那么明显(它们都是相同的字体颜色,如果您不阅读打印到控制台输出的所有内容,则很容易被忽略)。

可以使用以下命令修复它:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 6494C6D6997C215E

我不太确定它实际上做了什么,看起来像是添加了 3rd 方证书颁发机构或类似的东西。 无论如何,在重做sudo apt-get updatesudo apt-get install dotnet-sdk-2.1.4该软件包最终可以安装而不会出现“找不到”错误。

这个答案有点晚了,但我相信增加价值的行为永远不会晚。

我发现下面的这些写作链接非常有用且详细,关于在 linux 上安装 ubuntu 并讨论 .NET Core 版本和支持它们的 Ubuntu 版本已经足够详细了。

安装 DOTNET CORE LINUX:如何在 UBUNTU 上安装 .NET CORE

它还包含有关如何安装最新的 ubuntu 20.04 的链接。

如何在 Ubuntu 20.04 LTS (Focal Fossa) 上安装 .NET core 3.1 .NET Core 发行版和支持它们的 Ubuntu 版本。

在 WSL 16.04 上,我无法解析 Microsoft 或 debian 服务器位置。 以下是我采取的步骤:

cd /etc/

须藤chmod 777 resolv.conf

cat resolv.conf(如果 Google dns 没有 8.8.8.8,则按照下一行)

回声“名称服务器 8.8.8.8”>> resolv.conf

须藤 wget http://ftp.us.debian.org/debian/pool/main/i/icu/libicu57_57.1-6+deb9u4_amd64.deb

须藤 dpkg -i libicu57_57.1-6+deb9u4_amd64.deb

sudo apt install dotnet-sdk-3.1(把版本号改成你想要的)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM