简洁的结论
:
- 系统环境
ubuntu22.04
nvidia-535 - 解决方案
删除/etc/X11/xorg.conf 文件
记录一下折腾大半天的问题。
ubuntu系统是22.04,之前使用的时候更新驱动导致桌面崩溃,重新安装桌面安装不上,请IT帮忙,IT一番操作过后也表示无力回天了,重装。自己在空闲分区新装了系统,把这个新装的系统用tar命令备份后,在桌面崩溃的系统的tty环境中恢复tar包后,原来的系统桌面回来了,一些配置(软件和个人数据)也都还在,只是用户变了。
新来了一块屏幕,一块接独显的DP口,一块接HDMI口,启动起来不同内核版本可以显示使用不用的屏,但是都不能同时显示,在设置里面找不到第二快屏幕,重装nvidia驱动,重装GDM 、lightdm,互相切换也都没用。在新系统中打开可以同时显示两块屏幕,基本可以肯定就是之前用tar包还原的系统有些配置有问题。在对比两个系统的Xserver的时候发现,
正常的系统下面的没有
/etc/X11/xorg.conf
这个文件,查了一下这个文件是X.Org服务器的配置文件,它用于在Linux系统中配置和调整显示硬件和输入设备的相关设置,X.Org是一个开源的显示服务器,负责管理图形输出和输入事件。
里面的内容是
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig: version 550.100
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Files"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
Option "DPMS"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BusID "PCI:1:0:0"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
EndSubSection
EndSection
全是管理屏幕的,由nvidia550创建的,我的驱动已经改成nvidia-535了,居然还有这个文件,(也就是535的驱动没有生成这个文件)。再一查在许多现代Linux发行版中,xorg.conf文件不再是必须的,因为X.Org服务器能够自动检测大多数硬件并使用默认设置。
直接删掉/etc/X11/xorg.conf 这个文件,重启系统, OK解决!