You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 22.04更新后无法访问.NET,重装无效求助

解决Ubuntu 22.04中dotnet --info报错“/usr/share/dotnet/host/fxr不存在”的问题

这个报错是由于.NET运行时的host组件目录缺失或损坏导致的,即使重装.NET和VSCode也可能因为残留配置或未清理干净的文件无法解决,以下是可行的修复步骤:

1. 彻底清理.NET残留文件与包

先完全移除现有.NET相关的所有文件和包,避免残留问题干扰重装:

  • 卸载所有.NET和ASP.NET Core包:
    sudo apt remove --purge dotnet* aspnetcore*
    
  • 删除系统级和用户级的.NET目录:
    sudo rm -rf /usr/share/dotnet/
    sudo rm -rf ~/.dotnet/
    
  • 清理APT无用依赖和缓存:
    sudo apt autoremove
    sudo apt clean
    

2. 重新安装.NET SDK

清理完成后,重新添加微软官方源并安装.NET:

  • 下载并安装微软APT源配置包:
    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
    
  • 更新APT缓存并安装指定版本的.NET SDK(以6.0为例,可替换为需要的版本如7.0、8.0):
    sudo apt update
    sudo apt install dotnet-sdk-6.0
    
  • 验证安装结果:
    dotnet --info
    

此时应该能正常输出.NET的版本信息,报错不再出现。

3. 额外排查(若上述步骤无效)

  • 检查环境变量:确保/usr/share/dotnet/在系统PATH中:
    echo $PATH | grep /usr/share/dotnet
    
    若未找到,将其添加到shell配置文件(如~/.bashrc或~/.zshrc):
    echo 'export PATH="$PATH:/usr/share/dotnet"' >> ~/.bashrc
    source ~/.bashrc
    
  • 修复目录权限:检查/usr/share/dotnet/的权限设置,确保当前用户有读取权限:
    ls -ld /usr/share/dotnet/
    
    若权限不足,执行以下命令修复:
    sudo chmod -R 755 /usr/share/dotnet/
    

内容的提问来源于stack exchange,提问作者Vladislav Volynets

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 14:05:22