You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu 22.04.2 LTS系统Steam依赖安装失败问题求助

Ubuntu 22.04.2 LTS系统Steam依赖安装失败问题求助

你好,看了你的问题,这应该是之前误操作导致系统多架构(amd64/i386)的图形驱动包版本不匹配,加上第三方源(Unity3D和Oibaf PPA)的干扰导致的。我给你整理几个步骤来解决:

1. 先处理Unity3D源的密钥警告

那个Unity3D源的密钥警告虽然不是直接导致Steam安装失败的原因,但先把它处理掉避免后续干扰:

  • 导出旧密钥到新的密钥环目录:
    sudo apt-key export 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF | sudo gpg --dearmor -o /usr/share/keyrings/unity3d-archive-keyring.gpg
    
  • 找到Unity3D的源配置文件(通常在/etc/apt/sources.list.d/目录下,文件名类似hub_unity3d_com_linux_repos_deb.list),打开后把原有内容修改为:
    deb [signed-by=/usr/share/keyrings/unity3d-archive-keyring.gpg] https://hub.unity3d.com/linux/repos/deb stable main
    
  • 最后更新源:
    sudo apt update
    

2. 解决Oibaf PPA的多架构版本不匹配问题

从报错信息能看出来,你的amd64版图形驱动包(比如libgbm1、libgl1-mesa-dri)是Oibaf PPA的较新版本,但i386版是旧版本,直接导致了版本冲突。这里给你两个可选方案:

方案A:禁用Oibaf PPA,改用官方默认驱动(更稳妥)

如果不是必须依赖Oibaf的最新驱动,这个方案能避免后续版本同步问题:

  • 先移除Oibaf的PPA源:
    sudo apt-add-repository --remove ppa:oibaf/graphics-drivers
    sudo apt update
    
  • 把所有Oibaf的包降级到官方默认版本(版本号可以用apt-cache policy libgbm1查看官方提供的具体版本):
    sudo apt install --allow-downgrades libgbm1=22.2.5-0ubuntu0.1~22.04.1 libgbm1:i386=22.2.5-0ubuntu0.1~22.04.1 libgl1-mesa-dri=22.2.5-0ubuntu0.1~22.04.1 libgl1-mesa-dri:i386=22.2.5-0ubuntu0.1~22.04.1
    

方案B:强制同步Oibaf PPA的i386版本(保留最新驱动)

如果你需要继续使用Oibaf的最新驱动,就得确保amd64和i386的包版本完全一致:

  • 先更新源,确保能获取到最新的i386包:
    sudo apt update --allow-insecure-repositories
    
  • 强制安装和amd64版本匹配的i386包(注意版本号要和你报错里显示的amd64版本完全一致):
    sudo apt install libgbm1:i386=23.2~git2306280600.867851~oibaf~j libgl1-mesa-dri:i386=23.2~git2306280600.867851~oibaf~j libegl-mesa0:i386 libglapi-mesa:i386 libglx-mesa0:i386
    

3. 修复系统的Broken Packages

完成上面的步骤后,执行以下命令彻底修复系统依赖问题:

sudo apt --fix-broken install
sudo apt autoremove --purge
sudo apt clean
sudo apt update && sudo apt upgrade -y

4. 重新安装Steam依赖

最后再尝试安装Steam需要的依赖包,之后启动Steam应该就能正常运行了:

sudo apt install libc6:amd64 libc6:i386 libegl1:amd64 libegl1:i386 libgbm1:amd64 libgbm1:i386 libgl1-mesa-dri:amd64 libgl1-mesa-dri:i386 libgl1:amd64 libgl1:i386 steam-libs-i386:i386

另外提醒一下,以后处理图形驱动相关的包一定要谨慎,尤其是多架构的包,尽量使用官方源或者靠谱的PPA,避免随意强制安装/卸载核心系统组件,不然很容易再次出现类似的系统损坏问题。

备注:内容来源于stack exchange,提问作者Sprocket

火山引擎 最新活动