简洁的结论
:
- 系统环境
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.100Section "ServerLayout"Identifier "Layout0"Screen 0 "Screen0" 0 0InputDevice "Keyboard0" "CoreKeyboard"InputDevice "Mouse0" "CorePointer"
EndSectionSection "Files"
EndSectionSection "InputDevice"# generated from defaultIdentifier "Mouse0"Driver "mouse"Option "Protocol" "auto"Option "Device" "/dev/psaux"Option "Emulate3Buttons" "no"Option "ZAxisMapping" "4 5"
EndSectionSection "InputDevice"# generated from defaultIdentifier "Keyboard0"Driver "kbd"
EndSectionSection "Monitor"Identifier "Monitor0"VendorName "Unknown"ModelName "Unknown"Option "DPMS"
EndSectionSection "Device"Identifier "Device0"Driver "nvidia"VendorName "NVIDIA Corporation"BusID "PCI:1:0:0"
EndSectionSection "Screen"Identifier "Screen0"Device "Device0"Monitor "Monitor0"DefaultDepth 24SubSection "Display"Depth 24EndSubSection
EndSection
全是管理屏幕的,由nvidia550创建的,我的驱动已经改成nvidia-535了,居然还有这个文件,(也就是535的驱动没有生成这个文件)。再一查在许多现代Linux发行版中,xorg.conf文件不再是必须的,因为X.Org服务器能够自动检测大多数硬件并使用默认设置。
直接删掉/etc/X11/xorg.conf 这个文件,重启系统, OK解决!