0. 目的
我电脑的VS升级到了VS2026,项目也顺利升到了.NET 10.0, 现在想将项目部署到Ubuntu24.04,这台VPS之前部署的是.NET 9.0,所以我要先卸载旧的,再安装新的.NET 10.0.
解决的主要问题:微软官方的包源不包含适用于Ubunt24.04,Ubuntu26.04的.NET10.0, Ubunt22.04是有的。

1.查询当前安装的runtime,SDK
dotnet --list-sdks
dotnet --list-runtimes
Microsoft.AspNetCore.App 9.0.0 [/usr/lib/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 9.0.0 [/usr/lib/dotnet/shared/Microsoft.NETCore.App]
2. Ubuntu24.04卸载旧版.NET runtime 9.0
2.1使用 apt 卸载指定版本
如果你是通过 Microsoft 官方仓库或 Ubuntu 包安装的:
sudo apt remove dotnet-sdk-9.0
sudo apt remove dotnet-runtime-9.0
dotnet-sdk-9.0 → 卸载开发工具链(编译器、CLI 等)
dotnet-runtime-9.0 → 卸载运行时(仅运行应用所需)
2.2 清理残留依赖
sudo apt autoremove
这会自动删除不再需要的依赖包。
3.安装.NET runtime 10.0
3.1 添加 Microsoft 官方包源
注意此处有坑:
微软官方的Ubuntu24.04安装.NET 10.0教程 ,添加源的命令不管用,还没有适用Ubuntu 24.04 的.NET 10.0。
$ sudo add-apt-repository --remove ppa:dotnet/backports
PPA publishes dbgsym, you may need to include 'main/debug' component
Repository: 'Types: deb
URIs: https://ppa.launchpadcontent.net/dotnet/backports/ubuntu/
Suites: noble
Components: main
'
Description:
The backports archive provides source-built .NET packages in cases where a version of .NET is not available in the archive for an Ubuntu release.
Currently available Ubuntu releases and .NET backports:
Ubuntu 26.04 LTS (Resolute Raccoon)
├── .NET 8.0 (End of Life on November 10th, 2026) [amd64 arm64]
└── .NET 9.0 (End of Life on November 10th, 2026) [amd64 arm64 s390x ppc64el]
Ubuntu 24.04 LTS (Noble Numbat)
├── .NET 6.0 (End of Life on November 12th, 2024) [amd64 arm64]
├── .NET 7.0 (End of Life on May 14th, 2024) [amd64 arm64]
└── .NET 9.0 (End of Life on November 10th, 2026) [amd64 arm64 s390x ppc64el]
Ubuntu 22.04 LTS (Jammy Jellyfish)
├── .NET 9.0 (End of Life on November 10th, 2026) [amd64 arm64 s390x ppc64el]
└── .NET 10.0 (End of Life on November 14th, 2028) [amd64 arm64 s390x ppc64el]
以下方式安装的源也找不到包:
wget https://packages.microsoft.com/config/ubuntu/24.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
3.2 安装 .NET 10 Runtime 或 SDK
使用官方脚本安装(推荐,100% 可用)
这种方法适用于所有 Linux 发行版,特别是在包管理器掉链子的时候。它会将 .NET 安装到 ~/.dotnet 目录下。
-
下载安装脚本:
wget https://dotnet.microsoft.com/download/dotnet/scripts/v1/dotnet-install.sh chmod +x dotnet-install.sh -
执行脚本安装 .NET 10 Runtime:
-
仅安装 Runtime (运行普通应用):
./dotnet-install.sh --channel 10.0 --runtime dotnet -
安装 ASP.NET Core Runtime (运行 Web 应用):
./dotnet-install.sh --channel 10.0 --runtime aspnetcore
-
-
配置环境变量(关键步骤): 脚本默认安装在
~/.dotnet,你需要告诉系统去哪里找dotnet命令。编辑您的 shell 配置文件(通常是
.bashrc或.zshrc):nano ~/.bashrc在文件末尾添加以下两行:
export DOTNET_ROOT=$HOME/.dotnet export PATH=$PATH:$HOME/.dotnet:$HOME/.dotnet/tools保存并退出 (
Ctrl+O,Enter,Ctrl+X)。 -
使配置生效:
source ~/.bashrc -
验证:
dotnet --info您应该能看到 .NET 10.0 已成功安装。
4. 验证安装
dotnet --list-runtimes
dotnet