在CentOS系统上使用宝塔面板时,如果执行 dotnet xx.dll
出现 -bash: dotnet: command not found
错误,说明系统未安装 .NET Core 运行时或未正确配置环境变量。以下是详细解决方案:
1. 安装 .NET Core 运行时
根据你的需求选择安装 .NET SDK(开发工具包) 或 .NET Runtime(仅运行时)。
步骤 1:添加微软包仓库
# CentOS 7
sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm
# CentOS 8(如果适用)
sudo rpm -Uvh https://packages.microsoft.com/config/centos/8/packages-microsoft-prod.rpm
步骤 2:安装依赖项
# CentOS 7
sudo yum install -y libunwind libicu
# CentOS 8(使用 dnf)
sudo dnf install -y libunwind libicu
步骤 3:安装 .NET SDK 或 Runtime
- 安装 .NET SDK(推荐开发环境使用)
sudo yum install -y dotnet-sdk-6.0 # 替换为实际版本,如 7.0、8.0
- 仅安装 .NET Runtime(生产环境使用)
sudo yum install -y aspnetcore-runtime-6.0 # 替换为实际版本
2. 验证安装
安装完成后,执行以下命令检查是否成功:
dotnet --info
如果显示版本信息,说明安装成功。
3. 配置环境变量(如必要)
如果安装后仍提示命令未找到,可能是未正确配置环境变量。手动添加路径:
检查安装路径
默认情况下,.NET 会安装到 /usr/bin/dotnet
。如果路径未加入 PATH
,手动添加:
echo 'export PATH=$PATH:/usr/bin/dotnet' >> ~/.bashrc
source ~/.bashrc
4. 宝塔面板的特殊处理
宝塔面板的终端环境可能与系统环境变量不一致。尝试以下方法:
方法 1:使用绝对路径运行
直接指定 dotnet
的绝对路径:
/usr/bin/dotnet /path/to/xx.dll
方法 2:在面板中设置环境变量
进入宝塔面板的 网站管理 → 对应网站设置 → 环境变量,添加:
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
5. 其他注意事项
- 安装旧版本:若需特定版本,访问 .NET 下载页 获取安装命令。
- 权限问题:确保当前用户有权限访问
.dll
文件和相关目录。 - 系统兼容性:确认安装的 .NET 版本与系统架构(x64/ARM)匹配。
完成上述步骤后,再次运行 dotnet xx.dll
应该可以正常执行。如果仍有问题,可检查日志或提供错误信息进一步排查。