受欢迎的博客标签

How to Install and uninstall reinstall upgrade .NET x on Ubuntu

Published

https://dotnet.microsoft.com/zh-cn/download/dotnet/

vultr

Quick Start

 step 1:Check Host Operation System version on vultr

Ubuntu

Check OS Environment

#lsb_release -a

output

# lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04.4 LTS
Release:	20.04
Codename:	focal

Ubuntu 20.04*64

# dotnet --info
root@vultr:~# dotnet --info
.NET SDK (reflecting any global.json):
 Version:   6.0.202
 Commit:    f8a55617d2

Runtime Environment:
 OS Name:     ubuntu
 OS Version:  20.04
 OS Platform: Linux
 RID:         ubuntu.20.04-x64
 Base Path:   /usr/share/dotnet/sdk/6.0.202/

Host (useful for support):
  Version: 6.0.4
  Commit:  be98e88c76

.NET SDKs installed:
  6.0.202 [/usr/share/dotnet/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 6.0.4 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 6.0.4 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

To install additional .NET runtimes or SDKs:
  https://aka.ms/dotnet-download

step 2:versions of .NET are supported for Ubuntu  version

goto :https://learn.microsoft.com/en-us/dotnet/core/install/linux

UbuntuSupported .NET versionsAvailable in
built-in Ubuntu feed
Available in
.NET backports
Ubuntu feed
Available in
Microsoft feed
25.1010.0, 9.0, 8.09.0, 8.0NoneNone
25.0410.0, 9.0, 8.09.0, 8.0NoneNone
24.04 (LTS)10.0, 9.0, 8.08.09.0, 7.0, 6.0None
22.04 (LTS)10.0, 9.0, 8.08.0, 7.0, 6.09.08.0, 7.0, 6.0, 3.1

 

source:

https://learn.microsoft.com/en-us/dotnet/core/install/linux-ubuntu-decision#ubuntu-net-backports-package-repository

https://learn.microsoft.com/en-us/dotnet/core/install/linux-ubuntu-2004

step 3.Add the Microsoft package repository

#Add the Microsoft package repository
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

or

Add the Ubuntu .NET backports package repository

sudo add-apt-repository ppa:dotnet/backports
sudo apt update

 

 

step 4. Install the SDK

#Install the SDK
sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-8.0

#Install the runtime
sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-8.0

step 5.

 

output

root@vultr:~# dotnet --info
.NET SDK:
 Version:           8.0.100
 Commit:            57efcf1350
 Workload version:  8.0.100-manifests.6c33ef20

Runtime Environment:
 OS Name:     ubuntu
 OS Version:  20.04
 OS Platform: Linux
 RID:         linux-x64
 Base Path:   /usr/share/dotnet/sdk/8.0.100/

.NET workloads installed:
 Workload version: 8.0.100-manifests.6c33ef20
There are no installed workloads to display.

Host:
  Version:      8.0.0
  Architecture: x64
  Commit:       5535e31a71

.NET SDKs installed:
  8.0.100 [/usr/share/dotnet/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 8.0.0 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 8.0.0 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

Other architectures found:
  None

Environment variables:
  Not set

global.json file:
  Not found

Learn more:
  https://aka.ms/dotnet/info

Download .NET:
  https://aka.ms/dotnet/download

Ubuntu 20.04*64

 

.Net 8.0.204 20240421

# dotnet --info
.NET SDK:
 Version:           8.0.204
 Commit:            c338c7548c
 Workload version:  8.0.200-manifests.9f663350

Runtime Environment:
 OS Name:     ubuntu
 OS Version:  20.04
 OS Platform: Linux
 RID:         linux-x64
 Base Path:   /usr/share/dotnet/sdk/8.0.204/

.NET workloads installed:
There are no installed workloads to display.

Host:
  Version:      8.0.4
  Architecture: x64
  Commit:       2d7eea2529

.NET SDKs installed:
  8.0.204 [/usr/share/dotnet/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 8.0.4 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 8.0.4 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

Ubuntu 22.04*64

.Net 9.0 202505

sudo add-apt-repository ppa:dotnet/backports
sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-9.0

https://learn.microsoft.com/en-us/dotnet/core/install/linux-ubuntu-install?tabs=dotnet9&pivots=os-linux-ubuntu-2204

.Net 9.0 20241121

 

Install .NET SDK 9.0 on Ubuntu 22.04

https://learn.microsoft.com/en-us/dotnet/core/install/linux-ubuntu-install?tabs=dotnet9&pivots=os-linux-ubuntu-2204

Install First

#Add the Microsoft package repository
wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

#Install the SDK
sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-9.0

#Install the runtime
sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-9.0

output

 dotnet --info
.NET SDK:
 Version:           9.0.100
 Commit:            59db016f11
 Workload version:  9.0.100-manifests.3068a692
 MSBuild version:   17.12.7+5b8665660

Runtime Environment:
 OS Name:     ubuntu
 OS Version:  22.04
 OS Platform: Linux
 RID:         linux-x64
 Base Path:   /usr/share/dotnet/sdk/9.0.100/

.NET workloads installed:
There are no installed workloads to display.
Configured to use loose manifests when installing new manifests.

Host:
  Version:      9.0.0
  Architecture: x64
  Commit:       9d5a6a9aa4

.NET SDKs installed:
  9.0.100 [/usr/share/dotnet/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 9.0.0 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 9.0.0 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

 

 

Install First

#Add the Microsoft package repository
wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

#Install the SDK
sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-8.0

#Install the runtime
sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-8.0

.Net 8.0.108  OS  ubuntu 22.04   202409

 dotnet --info
.NET SDK:
 Version:           8.0.108
 Commit:            665a05cea7
 Workload version:  8.0.100-manifests.109ff937

Runtime Environment:
 OS Name:     ubuntu
 OS Version:  22.04
 OS Platform: Linux
 RID:         ubuntu.22.04-x64
 Base Path:   /usr/lib/dotnet/sdk/8.0.108/

.NET workloads installed:
 Workload version: 8.0.100-manifests.109ff937
There are no installed workloads to display.

Host:
  Version:      8.0.8
  Architecture: x64
  Commit:       08338fcaa5

.NET SDKs installed:
  8.0.108 [/usr/lib/dotnet/sdk]

 

 

.Net 6.x  2021/11/12

Install and uninstall reinstall  upgrade .NET 6.x
step 1:add the Microsoft package signing key to your list of trusted keys and add the package repository.
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
step 2:Install or upgrade the SDK
sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-6.0
step 3:Install or upgrade the runtime
sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-6.0
step 4:check
yhggh@vultr:~# dotnet --info
.NET SDK (reflecting any global.json):
 Version:   6.0.202
 Commit:    f8a55617d2

Runtime Environment:
 OS Name:     ubuntu
 OS Version:  20.04
 OS Platform: Linux
 RID:         ubuntu.20.04-x64
 Base Path:   /usr/share/dotnet/sdk/6.0.202/

Host (useful for support):
  Version: 6.0.4
  Commit:  be98e88c76

.NET SDKs installed:
  6.0.202 [/usr/share/dotnet/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 6.0.4 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 6.0.4 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

https://docs.microsoft.com/en-us/dotnet/core/install/linux-ubuntu#2004-

 

 

 

.net 6.x

dotnet workload uninstall maui
dotnet workload uninstall android
dotnet workload uninstall ios
dotnet workload uninstall maccatalyst

 

.net 2.x

step 1.发布网站 Build/publish Windows

dotnet publish
 Nop.Web succeeded (312.3s) → bin/Release/net9.0/publish/

 

dotnet publish -c  release
output
/src/Libraries/Nop.Core/bin/release/net9.0/Nop.Core.dll
dotnet publish -c Release 

src/Libraries/Nop.Core/bin/Release/net9.0/Nop.Core.dll

 

JITBENCH_ASPNET_MANIFEST (powershell) OR

dotnet publish -c Release -f netcoreapp2.1 --manifest %JITBENCH_ASPNET_MANIFEST% (cmd)  

dotnet publish -c Release  

Step 2: Run the app

cd E:\Nopcommerce\MslyAspNetGrandNode40\src\Nop.Web\bin\Release\netcoreapp2.0\publish

dotnet Nop.Web.dll 发布后定位到publish目录使用 dotnet xx.dll 执行应用。

dotnet run -c Release Dotnet run --urls="http://域名:端口号"  如果想设置多个域名,可以使用分号分隔。

  Step 3:change port 5000 to other  

2. 发布控制台程序为exe 文件 net core 2.0程序默认生成的是一个dll,需要通过dotnet命令来执行他。

dotnet ConsoleApp1.dll 生成带exe的命令则是:--runtime <rid>    

 dotnet build --runtime win-x64

copy D:\Temp\ConsoleApp1\ConsoleApp1\bin\Release\netcoreapp2.1\win-x64\publish下所有文件到另外机器 CMD run ConsoleApp1.exe    

 

 

dotnet publish -c Release -r win-x64 --self-contained

 

.Net 6.x     2021/11/12

dotnet run -c Release -f net48 -filter "**" --runtimes net48 net5.0 net6.0

 

Useful links

Clean up the Cache and Obsolete Files

sudo apt autoremove
sudo apt clean

 

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

https://docs.microsoft.com/zh-cn/dotnet/core/tools/dotnet-publish