停止 LightDM 后将无法启动

停止 LightDM 后将无法启动

[更新:我很感谢您提出的建议,但由于我最终无法使任何事情正常工作,所以我最终在不久前重新安装了 Ubuntu。]

我正在运行 Ubuntu 11.10“Oneiric Ocelot”,在尝试安装 nvidia CUDA 开发人员驱动程序时,我切换到虚拟终端(Ctrl-Alt-F5)并通过 停止了 lightdm(安装要求没有 X 服务器实例正在运行)sudo service lightdm stop

重新启动 lig​​htdmsudo service lightdm start不起作用:显示了几* Starting [...]行,但进程挂起了。(我不记得在哪一点,但我认为是* Starting System V runlevel compatibility

我手动重启了笔记本电脑,但自从启动以来似乎就一直挂起,通常是在* Starting anac(h)ronistic cron [OK]日志行附近(但并不是一直如此)。

从那时起,我似乎只能通过 tty 会话(Ctrl-Alt-F1)与我的系统进行交互。

我尝试过清除并重新安装lightdmgdm,以及在更新软件包后通过和选择两者作为默认显示管理器(通过或通过手动编辑)(sudo dpkg-reconfigure [lightdm / gdm]无论如何这不应该有什么区别),但问题仍然存在。/etc/X11/default-display-managerapt-getaptitude

我收到的一些回复如下:

运行sudo dpkg-reconfigure lightdm(但没有... gdm)后我收到以下消息:

dpkg-maintscript-helper:warning: environment variable DPKG_MATINSCRIPT_NAME missing
dpkg-maintscript-helper:warning: environment variable DPKG_MATINSCRIPT_PACKAGE missing

尝试后sudo service lightdm startsudo start lightdm我再次看到启动加载屏幕,但没有任何变化。如果我返回 tty shell,我可以看到lightdm start/running, process <num>ps -e | grep lightdm没有输出。

尝试sudo service gdm start或之后sudo starg gdm我收到了gdm start/running, process <num>消息,并且gdm-binary应该是一个活动过程,但所发生的只是屏幕闪烁几次,没有其他任何事情。

我在网上找到的其他候选解决方案包括运行startx,但当我尝试时,我收到错误输出[...] Fatal server error: no screens found [...]。此外,我确保lightdm-gtk-greeter已安装,但这也无济于事。

请原谅我没有包括完整的输出/日志;我正在另一台计算机上撰写这篇文章,很难手动复制完整的日志。此外,我看过几篇与类似问题有关的帖子,但要么没有修复,要么建议的那个对我来说不起作用。

最后:请帮忙!我非常希望避免从头开始重新安装 Ubuntu!:)

亚历克斯


@mosi

我没有按照您的指示修复 NVIDIA 内核驱动程序。我可能应该提到,我使用的是配备 NVIDIA Optimus 显卡的 Dell XPS15 笔记本电脑,并且已经bumblebee安装了(我相信它在安装过程中会安装 nvidia 驱动程序)。发出上述命令后,我得到了以下结果:

~$uname -r
3.0.0-12-generic
~$lsmod | grep -i nvidia
nvidia               11713772  0
~$dmesg | grep -i nvidia
[    8.980041] nvidia: module license 'NVIDIA' taints kernel.
[    9.354860] nvidia 0000:01:00.0: power state changed by ACPI to D0
[    9.354864] nvidia 0000:01:00.0: power state changed by ACPI to D0
[    9.354868] nvidia 0000:01:00.0: enabling device (0006 -> 0007)
[    9.354873] nvidia 0000:01:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[    9.354879] nvidia 0000:01:00.0: setting latency timer to 64
[    9.355052] NVRM: loading NVIDIA UNIX x86_64 Kernel Module  280.13  Wed Jul 27 16:53:56 PDT 2011

此外,跑步aptitude search nvidia给我带来以下好处:

p   nvidia-173                      - NVIDIA binary Xorg driver, kernel module a
p   nvidia-173-dev                  - NVIDIA binary Xorg driver development file
p   nvidia-173-updates              - NVIDIA binary Xorg driver, kernel module a
p   nvidia-173-updates-dev          - NVIDIA binary Xorg driver development file
p   nvidia-96                       - NVIDIA binary Xorg driver, kernel module a
p   nvidia-96-dev                   - NVIDIA binary Xorg driver development file
p   nvidia-96-updates               - NVIDIA binary Xorg driver, kernel module a
p   nvidia-96-updates-dev           - NVIDIA binary Xorg driver development file
p   nvidia-cg-toolkit               - Cg Toolkit - GPU Shader Authoring Language
p   nvidia-common                   - Find obsolete NVIDIA drivers              
i   nvidia-current                  - NVIDIA binary Xorg driver, kernel module a
p   nvidia-current-dev              - NVIDIA binary Xorg driver development file
c   nvidia-current-updates          - NVIDIA binary Xorg driver, kernel module a
p   nvidia-current-updates-dev      - NVIDIA binary Xorg driver development file
i   nvidia-settings                 - Tool of configuring the NVIDIA graphics dr
p   nvidia-settings-updates         - Tool of configuring the NVIDIA graphics dr
v   nvidia-va-driver                -                                           
v   nvidia-va-driver                -                                           

我尝试手动安装(sudo aptitude install <package>)包nvidia-commonnvidia-settings-updates但无济于事。例如,sudo aptitude install nvidia-settings-updates返回以下日志:

Reading package lists...
Building dependency tree...
Reading state information...
Reading extended state information...
Initializing package states...
Writing extended state information...
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 83 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.
Writing extended state information...
Reading package lists...
Building dependency tree...
Reading state information...
Reading extended state information...
Initializing package states...
Writing extended state information...

Linux 头文件也出现了同样的问题(我似乎无法安装linux-headers-3.0.0-12-generic)。 的输出aptitude search linux-headers如下:

v   linux-headers                   -                                           
v   linux-headers                   -                                           
v   linux-headers-2.6               -                                           
i   linux-headers-2.6.38-11         - Header files related to Linux kernel versi
i   linux-headers-2.6.38-11-generic - Linux kernel headers for version 2.6.38 on
i A linux-headers-2.6.38-8          - Header files related to Linux kernel versi
i A linux-headers-2.6.38-8-generic  - Linux kernel headers for version 2.6.38 on
v   linux-headers-3                 -                                           
v   linux-headers-3.0               -                                           
v   linux-headers-3.0               -                                           
i A linux-headers-3.0.0-12          - Header files related to Linux kernel versi
p   linux-headers-3.0.0-12-generic  - Linux kernel headers for version 3.0.0 on 
p   linux-headers-3.0.0-12-generic- - Linux kernel headers for version 3.0.0 on 
p   linux-headers-3.0.0-12-server   - Linux kernel headers for version 3.0.0 on 
p   linux-headers-3.0.0-12-virtual  - Linux kernel headers for version 3.0.0 on 
p   linux-headers-generic           - Generic Linux kernel headers              
p   linux-headers-generic-pae       - Generic Linux kernel headers              
v   linux-headers-lbm               -                                           
v   linux-headers-lbm               -                                           
v   linux-headers-lbm-2.6           -                                           
v   linux-headers-lbm-2.6           -                                           
p   linux-headers-lbm-3.0.0-12-gene - Header files related to linux-backports-mo
p   linux-headers-lbm-3.0.0-12-gene - Header files related to linux-backports-mo
p   linux-headers-lbm-3.0.0-12-serv - Header files related to linux-backports-mo
p   linux-headers-server            - Linux kernel headers on Server Equipment. 
p   linux-headers-virtual           - Linux kernel headers for virtual machines 

@heartsmagic

我确实尝试过清除并重新安装任何 nvidia 驱动程序包,但似乎没有什么效果,

我的xorg.conf文件包含以下内容:

# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 280.13  ([email protected])  Wed Jul 27 17:15:58 PDT 2011


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"
    HorizSync       28.0 - 33.0
    VertRefresh     43.0 - 72.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

答案1

我在 12.04 中遇到了这个问题。修复方法是将 /etc/X11/default-display-manager 更改为 /usr/sbin/lightdm,而不是 lightdm,因为 dpkg-reconfigure 设置不正确。

为什么?在 /etc/init/lightdm.conf 中,脚本正在检查文件是否为 /usr/sbin/lightdm

这是一个错误。一个简单的修复方法是更改​​ lightdm.conf 以接受其他变体,包括没有完整路径的 lightdm。除非存在一些纯粹为了一致性而应使用的标准。

答案2

我遇到了类似的问题。似乎没有加载 nvidia 内核驱动程序。如果您没有 aptitude,请通过以下方式安装:

apt-get install aptitude

首先,以 root 身份登录。

(1.查看加载了哪些 nvidia 内核模块:

dmesg | grep -i nvidia
[   77.226200] nvidia: module license 'NVIDIA' taints kernel.
[   78.066167] nvidia 0000:01:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[   78.066175] nvidia 0000:01:00.0: setting latency timer to 64
[   78.066794] NVRM: loading NVIDIA UNIX x86 Kernel Module  285.05.09

(2. 必须删除 Ubuntu nvidia 驱动程序,否则 ubuntu 在重启后可能仍会使用它们,删除除以下软件包之外的所有 nvidia-XX 软件包:

aptitude search nvidia | grep -i "i "
i   nvidia-common                   - Find obsolete NVIDIA drivers              
i   nvidia-current                  - NVIDIA binary Xorg driver, kernel module a
i   nvidia-settings                 - Tool of configuring the NVIDIA graphics dr
i   nvidia-settings-updates         - Tool of configuring the NVIDIA graphics dr

(3.从 nvidia.com 下载适合您架构的正确 nvidia 驱动程序,确保您已安装 linux-headers。

aptitude install linux-headers-$(uname -r)

(4. 以 root 身份运行:NVIDIA-Linux-x86-XXXXX.run,如果 xserver 正在运行,则使用以下命令停止:

/etc/init.d/x11-common stop

(5.生成新的 nvidia xconfig 配置

nvidia-xconfig

(6.启动X服务器

/etc/init.d/x11-common start
/etc/init.d/lightdm start

如果出现问题,请发布以下命令的输出:

uname -r
lsmod | grep -i nvidia
dmesg | grep -i nvidia

答案3

环境: - XPS M 1530、8600M GT - Ubuntu 11.10 64 位全新安装 - 安装了额外的 Nvidia driver-173(来自“附加驱动程序”部分)

我的外接显示器无法通过附加驱动程序(即 nvidia-173)识别。因此,我尝试安装 nvidia.com 上为 8600M GT 卡找到的 nvidia 驱动程序,并按照说明操作。要退出 x 服务器,我执行了

sudo stop lightdm

并安装了 nvidia 驱动程序。之后,我遇到了与 OP 相同的问题,即无法成功启动图形系统。可以使用终端进行交互。启动/重新启动 lig​​htdm 没有帮助。

所以我不得不清除所有 nvidia 并使用 mesa-gl。在以下链接和命令的帮助下,我能够做到这一点。

https://askubuntu.com/a/68222 https://askubuntu.com/a/36936

命令:

sudo apt-get purge nvidia*
sudo rm /etc/X11/xorg.conf
sudo apt-get install --reinstall xserver-xorg-core libgl1-mesa-glx:amd64 libgl1-mesa-dri:amd64
sudo dpkg-reconfigure xserver-xorg
sudo reboot

好了,我又可以开始工作了,而且外接显示器工作正常(或者说尽可能正常)。通过 HDMI 电缆连接显示器时,屏幕会混乱。

我还没有/不想尝试其他驱动程序。也许以后会尝试。

相关内容