安装Microsoft源
wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.debsudo dpkg -i packages-microsoft-prod.debrm packages-microsoft-prod.deb
为了防止Ubuntu自带的.NET包与 Microsoft 源的包冲突,临时提高 Microsoft 源优先级
echo "Package: *
Pin: origin packages.microsoft.com
Pin-Priority: 1001" | sudo tee /etc/apt/preferences.d/microsoft-dotnet安装.NET SDK及.NET Runtime
sudo apt update
sudo apt install dotnet-sdk-6.0 -y
sudo apt install aspnetcore-runtime-6.0 dotnet-runtime-6.0 -y安装Microsoft源
wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.debsudo dpkg -i packages-microsoft-prod.debrm packages-microsoft-prod.deb
由于.NET Core 3.1依赖旧版OpenSSL(libssl1.1),Ubuntu 22.04默认只有 OpenSSL 3.0,需要手动安装旧版 libssl1.1
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.debsudo dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.debrm libssl1.1_1.1.1f-1ubuntu2_amd64.deb
安装.NET Core 3.1 Runtime
sudo apt updatesudo apt install aspnetcore-runtime-3.1 dotnet-runtime-3.1 -y
由于.NET Core 2.1依赖旧版OpenSSL(libssl1.1),Ubuntu 22.04默认只有 OpenSSL 3.0,需要手动安装旧版 libssl1.1
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.debsudo dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.debrm libssl1.1_1.1.1f-1ubuntu2_amd64.deb
由于 Microsoft 不再为 Ubuntu 22.04 提供 .NET Core 2.1 的 apt 包,使用官方安装脚本
wget https://dot.net/v1/dotnet-install.sh -O dotnet-install.shchmod +x dotnet-install.sh./dotnet-install.sh --channel 2.1 --runtime aspnetcore
安装后的dotnet执行文件在/home/ubuntu/.dotnet目录下