如何在ubuntu安装.net core sdk

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在ubuntu安装.net core sdk相关的知识,希望对你有一定的参考价值。

参考技术A  Ubuntu电脑安装android SDK/ADB

  第一步,你要下载Linux版Android SDK的安装或文件包,然后你需要从Android SDK Manager内下载Platform Tools
Package

  请从Google官方获取Android
SDK安装或文件包,通常情况,你下载的文件名为android-sdk_rxx-linux.tgz的形式,rxx代表版本,比如,r16版,即android-sdk_r16-linux.tgz,r24版,即android-sdk_r24-linux.tgz

  请放置Android SDK安装或文件包在你的用户主目录

  在你的Ubuntu电脑上打开终端窗口

  解压Android SDK文件:
cd ~
tar -zxvf android-sdk_r16-linux.tgz

  在~/android-sdk-linux/tools字目录,有一个叫做android的可执行文件,尽管名字是android,但它实际上是Android
SDK Manager

  运行Android SDK Manager:
./~/android-sdk-linux/tools/android

  选择Android SDK
Tools与Android SDK Platform-tools项,点Install
packages安装Platform Tools
Package工具包。包括ADB与Fastboot可执行的文件在内的工具包都会被下载,由于下载的文件较多而需要一定的时间,你能去喝点东西

  你下载的Platform Tools
Package工具包文件将位于新创建的~/android-sdk-linux/platform-tools目录

  第二步,修改ADB与Fastboot可执行文件的默认PATH路径环境。PATH环境变量可以是在~/.profile(或~/.bash_profile)或者~/.bashrc文件内修改,~/.profile文件是读取所有交互式Shell的登录,~/.bashrc文件读取所有非交互式Shell的登录(如sftp),在大多数默认情况下,~/.profile文件导入所有~/.bashrc文件的设置。PATH命令设定的改变必须包括/android-sdk-linux/tools与/android-sdk-linux/platform-tools目录

  kevdog的PATH命令设定通过Ubuntu系统内初始的默认编辑器Gedit在~/.bashrc文件底部增加了一行:
export
PATH=$PATH:$HOME/android-sdk-linux/tools:$HOME/android-sdk-linux/platform-tools

  第三步,我们需要为Ubuntu创建udev设备管理规则,从而让设备在通过USB端口连接到电脑时能被正确地识别

  将设备连接到电脑,然后执行命令:
lsusb

  你会看到类似于下面的输出信息:
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation
2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004
Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001:
ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 063: ID 04e8:6860
Samsung Electronics Co., Ltd

  由于kevdog的设备是Samsung的某款设备,因此你能看到相应的识别信息:
Bus 001 Device 063: ID
04e8:6860 Samsung Electronics Co., Ltd

  我们来解释下上面的识别信息:

  Bus 001 Device
063,设备端的名称是/dev/bus/usb/001/063,即这个信息可以帮助我们确定设备端的名称

  04e8,vendorID,即供货商编号

  6860,productID,即产品编号

  使用设备端的名称/dev/bus/usb/001/063可以让我们查询设备的属性,查询这些属性有时很有必要,因为udev设备管理匹配设备是基于特定标准的。为此,我们需要一个正确的udev设备匹配规则集,这个过程的第一步就是查询能被连接或插入到我们规则集的准则,这可以通过udevadm程序来实现,并且有两种方式现,它们生成的输出信息为我们的设备构建udev设备管理规则:

  udevadm查询udev设备管理规则方法1:
udevadm info -q all -n <name of device
node>
根据原作者的实际情况,设备端名称是/dev/bus/usb/001/063,因此命令是:

udevadm info -q all -n /dev/bus/usb/001/063
你会看到类似于下面的输出信息:

$ udevadm info -q all -n /dev/bus/usb/001/063
P:
/devices/pci0000:00/0000:00:1d.7/usb1/1-8
N: bus/usb/001/063
S:
libmtp-1-8
S: GalaxyNexus
E: UDEV_LOG=3
E:
DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb1/1-8
E: MAJOR=189
E:
MINOR=62
E: DEVNAME=/dev/bus/usb/001/063
E: DEVTYPE=usb_device
E:
DRIVER=usb
E: PRODUCT=4e8/6860/216
E: TYPE=0/0/0
E: BUSNUM=001

E: DEVNUM=063
E: SUBSYSTEM=usb
E: ID_MTP_DEVICE=1
E:
ID_MEDIA_PLAYER=samsung_galaxy-s2
E: ID_VENDOR=samsung
E:
ID_VENDOR_ENC=samsung
E: ID_VENDOR_ID=04e8
E: ID_MODEL=Galaxy
E:
ID_MODEL_ENC=Galaxy
E: ID_MODEL_ID=6860
E: ID_REVISION=0216
E:
ID_SERIAL=samsung_Galaxy_0146B06501005018
E:
ID_SERIAL_SHORT=0146B06501005018
E: ID_BUS=usb
E:
ID_USB_INTERFACES=:ffff00:ff4201:
E: DEVLINKS=/dev/libmtp-1-8
/dev/GalaxyNexus
E: TAGS=:udev-acl:
我们使用的规则从有E:(E=ENV=Device
Property设备属性值)的行开始

  udevadm查询udev设备管理规则方法2:
udevadm info -a -p $(udevadm info -q path
-n <name of device node>)

根据原作者的实际情况,设备端名称是/dev/bus/usb/001/063,因此命令是:
udevadm info -a -p
$(udevadm info -q path -n /dev/bus/usb/001/063)
你会看到类似于下面的输出信息:

$ udevadm info -a -p $(udevadm info -q path -n /dev/bus/usb/001/063)

Udevadm info starts with the device specified by the devpath and then

walks up the chain of parent devices. It prints for every device
found,
all possible attributes in the udev rules key format.
A rule to match, can
be composed by the attributes of the device
and the attributes from one
single parent device.
looking at device
'/devices/pci0000:00/0000:00:1d.7/usb1/1-8':
KERNEL=="1-8"

SUBSYSTEM=="usb"
DRIVER=="usb"
ATTRconfiguration==""

ATTRbNumInterfaces==" 2"
ATTRbConfigurationValue=="1"

ATTRbmAttributes=="80"
ATTRbMaxPower=="500mA"
ATTRurbnum=="29"

ATTRidVendor=="04e8"
ATTRidProduct=="6860"

ATTRbcdDevice=="0216"
ATTRbDeviceClass=="00"

ATTRbDeviceSubClass=="00"
ATTRbDeviceProtocol=="00"

ATTRbNumConfigurations=="1"
ATTRbMaxPacketSize0=="64"

ATTRspeed=="480"
ATTRbusnum=="1"
ATTRdevnum=="63"

ATTRdevpath=="8"
ATTRversion==" 2.00"
ATTRmaxchild=="0"

ATTRquirks=="0x0"
ATTRavoid_reset_quirk=="0"

ATTRauthorized=="1"
ATTRmanufacturer=="samsung"

ATTRproduct=="Galaxy"
ATTRserial=="0146B06501005018"

looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb1':

KERNELS=="usb1"
SUBSYSTEMS=="usb"
DRIVERS=="usb"

ATTRSconfiguration==""
ATTRSbNumInterfaces==" 1"

ATTRSbConfigurationValue=="1"
ATTRSbmAttributes=="e0"

ATTRSbMaxPower==" 0mA"
ATTRSurbnum=="1403"

ATTRSidVendor=="1d6b"
ATTRSidProduct=="0002"

ATTRSbcdDevice=="0300"
ATTRSbDeviceClass=="09"

ATTRSbDeviceSubClass=="00"
ATTRSbDeviceProtocol=="00"

ATTRSbNumConfigurations=="1"
ATTRSbMaxPacketSize0=="64"

ATTRSspeed=="480"
ATTRSbusnum=="1"
ATTRSdevnum=="1"

ATTRSdevpath=="0"
ATTRSversion==" 2.00"
ATTRSmaxchild=="8"

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

在wsl Ubuntu 20.04上面安装dotnet链接

https://docs.microsoft.com/zh-cn/dotnet/core/install/linux-ubuntu

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

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

如果已安装 SDK 或运行时,请使用 dotnet --list-sdks 和 dotnet --list-runtimes 命令查看安装了哪些版本。

支持的分发

下表列出了当前支持的 .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
✔️ 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

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

安装 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

如果收到类似于“找不到包 aspnetcore-runtime-5.0”的错误消息,请参阅 APT 疑难解答部分。APT 疑难解答 本部分提供有关使用 APT 安装 .NET 时可能会遇到的常见错误的信息。

找不到包 重要

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

安装运行时 通过 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

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

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

「扩展阅读」

Xamarin.Forms: 无限滚动的ListView(懒加载方式)

[GitHub] 75+的 C# 数据结构和算法实现

谁说.NET不适合搞BD,ML、AI

推荐一个集录屏、截图、音频于一体的软件给大家

10个用于C#.NET开发的基本调试工具

Xamarin.Forms 二维码扫描实践

在Asp.Net Core MVC 开发过程中遇到的问题总结

前端小白在asp.net core mvc中使用ECharts

基于Asp.Net Core MVC和AdminLTE的响应式管理后台之侧边栏处理

[译]如何在C#中调试LINQ查询

C# 语言性能提升方法

使用MQTTnet搭建Mqtt服务器

OxyPlot在WinForm中的应用

以上是关于如何在ubuntu安装.net core sdk的主要内容,如果未能解决你的问题,请参考以下文章

.Net Core CLI–Ubuntu 14安装

sh 使用Microsoft .Net Core 2安装Ubuntu 16.04

asp.net core 在Ubuntu 运行

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

ASP.NET Core环境并运行 继续跨平台

.net core 跨平台实践