在银河麒麟系统上安装.NET Core环境,需先确认CPU架构与用途(仅运行程序用Runtime,开发用SDK),再选择匹配的安装方式,否则执行dotnet命令会报“找不到命令”或“无法加载共享对象”错误。

确认系统架构和用途
打开终端,依次执行以下两条命令:
cat /etc/os-release → 查看系统版本代号(如v10 SP1对应Debian 11兼容层);
uname -m → 显示aarch64为ARM64,x86_64为x64,loongarch64为龙芯,结果直接决定后续下载包类型。
【必须严格匹配】若系统是aarch64却下载x64的tar.gz包,解压后dotnet命令能运行但运行C#程序必报Segmentation fault。
方法一:x64架构推荐用APT包管理器安装(含SDK)
此方式自动解决依赖、注册全局命令、支持apt upgrade更新,适用于开发场景。
第一步:导入微软签名密钥并添加源
wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb -O packages-microsoft-prod.deb && sudo dpkg -i packages-microsoft-prod.deb && rm packages-microsoft-prod.deb
第二步:更新并安装SDK(以3.1为例)
sudo apt-get update && sudo apt-get install -y dotnet-sdk-3.1
第三步:验证安装
dotnet --list-sdks → 应输出3.1.xxxx格式版本号;若只显示runtime未显示sdk,说明装的是dotnet-runtime-3.1而非dotnet-sdk-3.1。
方法二:所有架构通用的手动解压安装(Runtime或SDK)
适合ARM64、龙芯等非x64平台,或内网无网络环境。注意:必须用tar解压,不能用图形界面双击解压,否则权限丢失导致dotnet无法执行。
方法一:下载并解压到用户目录(无需root权限)
cd ~ && wget https://download.visualstudio.microsoft.com/download/pr/xxxxxx/yyyyyy/aspnetcore-runtime-3.1.11-linux-x64.tar.gz && mkdir -p $HOME/dotnet && tar zxf aspnetcore-runtime-3.1.11-linux-x64.tar.gz -C $HOME/dotnet
方法二:解压到系统目录(需sudo)
sudo mkdir -p /usr/share/dotnet && sudo tar zxf aspnetcore-runtime-3.1.11-linux-x64.tar.gz -C /usr/share/dotnet
提示:下载链接中的xxxxxx/yyyyyy需替换为官网实际路径,可访问https://dotnet.microsoft.com/zh-cn/download/dotnet/3.1 → 点击“Linux x64”旁的“手动下载”获取最新直链。
配置环境变量
无论用哪种安装方式,都必须设置DOTNET_ROOT和PATH,否则终端无法识别dotnet命令。
编辑当前用户配置文件:vi ~/.bashrc
在文件末尾新增两行(若装在$HOME/dotnet则用第一组;若装在/usr/share/dotnet则用第二组):
export DOTNET_ROOT=$HOME/dotnet
export PATH=$PATH:$HOME/dotnet
或
export DOTNET_ROOT=/usr/share/dotnet
export PATH=$PATH:/usr/share/dotnet
保存退出后立即生效:source ~/.bashrc
验证:输入dotnet --version → 返回3.1.11即成功。

















