和许多其他人一样,我一直在尝试将我的 OpenGL 从 3.0 升级到 3.2,这可能一开始就是一个糟糕的想法,但现在我们做到了。现在我的 Ubuntu 分区无法正常打开,我目前正在我的笔记本电脑的第二个分区上运行包含 PureOS 的程序。我认为问题出在尝试安装 ppa 上,但我希望社区能帮助我,因为我真的陷入困境,我需要我的 Ubuntu!
首先是一些硬件/系统详细信息:
机器:Librem 13
操作系统类型:64 位
显卡:Intel® HD Graphics 620 (Kaby Lake GT2)
操作系统:Ubuntu 18.04.4 LTS
登录后,我停留在命令行上,它显示xmodmap: unable to open display
。确实echo $DISPLAY
没有返回任何内容。运行glxinfo
返回“错误:无法打开显示”。
lshw
以下是显卡的输出:
sudo lshw -c video
*-display
description: VGA compatible controller
product: HD Graphics 620
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 02
width: 64 bits
clock: 33MHz
capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:125 memory:d0000000-d0ffffff memory:c0000000-cfffffff ioport:1c00(size=64) memory:c0000-dffff
以下是 的输出apt policy
。我尝试删除与此不相关的项目,例如来自“http://archive.ubuntu.com/ubuntu“。为了尝试获得 OpenGL 3.2,安装了某些 ppa,可能应该将其删除:
apt policy
Package files:
100 /var/lib/dpkg/status
release a=now
500 http://ppa.launchpad.net/ubuntu-x-swat/updates/ubuntu bionic/main i386 Packages
release v=18.04,o=LP-PPA-ubuntu-x-swat-updates,a=bionic,n=bionic,l=Updates,c=main,b=i386
origin ppa.launchpad.net
500 http://ppa.launchpad.net/ubuntu-x-swat/updates/ubuntu bionic/main amd64 Packages
release v=18.04,o=LP-PPA-ubuntu-x-swat-updates,a=bionic,n=bionic,l=Updates,c=main,b=amd64
origin ppa.launchpad.net
500 http://ppa.launchpad.net/oibaf/graphics-drivers/ubuntu bionic/main i386 Packages
release v=18.04,o=LP-PPA-oibaf-graphics-drivers,a=bionic,n=bionic,l=Updated Open Graphics Drivers - since 2011!,c=main,b=i386
origin ppa.launchpad.net
500 http://ppa.launchpad.net/oibaf/graphics-drivers/ubuntu bionic/main amd64 Packages
release v=18.04,o=LP-PPA-oibaf-graphics-drivers,a=bionic,n=bionic,l=Updated Open Graphics Drivers - since 2011!,c=main,b=amd64
origin ppa.launchpad.net
500 http://archive.canonical.com/ubuntu bionic/partner i386 Packages
release v=18.04,o=Canonical,a=bionic,n=bionic,l=Partner archive,c=partner,b=i386
origin archive.canonical.com
500 http://archive.canonical.com/ubuntu bionic/partner amd64 Packages
release v=18.04,o=Canonical,a=bionic,n=bionic,l=Partner archive,c=partner,b=amd64
origin archive.canonical.com
最后lspci -v
:
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers (rev 02)
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 620 (rev 02)
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 02)
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)
00:14.1 USB controller: Intel Corporation Device 9d30 (rev 21)
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)
00:17.0 SATA controller: Intel Corporation Sunrise Point-LP SATA Controller [AHCI mode] (rev 21)
00:1c.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 (rev f1)
00:1f.0 ISA bridge: Intel Corporation Sunrise Point-LP LPC Controller (rev 21)
00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)
00:1f.3 Audio device: Intel Corporation Sunrise Point-LP HD Audio (rev 21)
00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)
00:1f.5 Non-VGA unclassified device: Intel Corporation Device 9d24 (rev 21)
01:00.0 Network controller: Qualcomm Atheros AR9462 Wireless Network Adapter (rev 01)
- 什么问题导致 xmodmap 失败?
- 我应该删除 oibaf ppa 吗?
- 我应该删除 ubuntu-x-swat ppa 吗?
任何帮助都非常感谢!
(如果论坛其他地方已经讨论过这个问题,我很抱歉,我在 xmodmap 上搜索过,没有找到任何相关信息)
编辑:我没有特别关注一个教程,但这里有一个简短的回顾:
GLX 返回了一个错误的值,因此我受到了sudo apt install libnvidia-gl-440:i386
Steam 这个问题的启发:https://www.reddit.com/r/linuxquestions/comments/fu1228/steam_no_longer_launching_after_recent_ubuntu/
这似乎使 GLX 工作得更好:
glxinfo | grep "OpenGL version"
OpenGL version string: 3.0 Mesa 19.2.8
(有时我还编辑了 /etc/X11/xorg.conf,如下页底部所述:https://public.confluence.arizona.edu/display/UAHPC/Visualization)
由于我需要 OpenGL 3.2,我添加了ubuntu-x-swap
ppa,因为我认为我缺少一些更新,如下所示http://ubuntuhandbook.org/index.php/2019/07/install-mesa-19-0-8-ubuntu-18-04-19-04/
还添加了oibaf
存储库,看看是否可以升级 OpenGL,基于这个 6 年前的线程:如何在 Ubuntu 14.04 LTS 上更新 OpenGL 驱动程序
很抱歉造成混乱。
答案1
我认为我通过升级到 Ubuntu 20.04 找到了摆脱这一困境的方法!!
在尝试升级之前,我删除了一些奇怪的非专有 PPA,例如 oibaf,然后重新启动(应该清除它们而不是仅仅删除它们)。
我按照此处的官方指南从 18.04 升级到 20.04:
https://ubuntu.com/blog/how-to-upgrade-from-ubuntu-18-04-lts-to-20-04-lts-today
起初,升级无法进行,因为我“持有损坏的软件包”。安装失败后,查看 apt.log 和 main.log,我发现 xserver-xorg-video-* 导致了问题。
然后,我尝试重新安装几个受此线程启发的 xserver 驱动程序:16.04 - 如何清除英特尔默认驱动程序并重新安装英特尔图形驱动程序, 进一步来说:
sudo apt-get update
sudo apt-get install --reinstall xserver-xorg-video-intel xserver-xorg-core
sudo dpkg-reconfigure xserver-xorg
似乎 xserver-xorg-core 已安装,但我收到 xserver-xorg-video-intel 错误,提示“无法下载”。然后我尝试了一个简单的安装:
sudo apt-get install xserver-xorg-video-intel
返回:
xserver-xorg-video-intel is already the newest version (2:2.99.917+git2005070730.e781d4"oibaf"b).
啊哈!这就是我之前删除的“oibaf” PPA!也许这就是造成混乱的原因?当我这样做时
apt search xserver-xorg-video-intel
来自“oibaf”的驱动程序是第一个显示为“xserver-xorg-video-intel/now”的驱动程序,后面跟着来自 bionic 的其他 5 个驱动程序。
xserver-xorg-video-intel-dbg/bionic
xserver-xorg-video-intel-hwe-16.04/bionic
xserver-xorg-video-intel-hwe-16.04-dbg/bionic
xserver-xorg-video-intel-hwe-18.04/bionic-updates,now
xserver-xorg-video-intel-hwe-16.04-dbg/bionic-updates
从这里我执行了一组更具体的安装命令:
sudo apt-get install --reinstall xserver-xorg-core-hwe-18.04
sudo apt-get install --reinstall xserver-xorg-video-intel-hwe-18.04
现在“oibaf”驱动程序从“apt search xserver-xorg-video-intel”输出中消失了。
然后“sudo do-release-update -d”就起作用了!我的桌面又回来了。