我开始尝试更新我的电脑,现在已经过去了几个周末的地狱。这是一台自建的台式机,配有 Nvidia GEForce 1070 显卡
问题
(主)-显示管理器无法加载。目前正在尝试 sddm,但 lightdm、gdm 和 slim 的症状基本相同。
(次要的)- 我有 Nvidia 来运行 tensorflow,但我只能在没有显示器的情况下让它工作,后来我删除了它们,并且没有可以工作的 nvidia 或显示器。
(第三) - 它从不向我显示 grub 菜单 - 我愿意放弃这个东西并从 USB 重新启动,但我搞不懂。我甚至无法进入我的 bios,我不确定是不是因为我有一个 HDMI 显示器,但它只是显示空白。
- 我尝试过切换 Wayland
- 从存储库安装/卸载 nvidia 驱动程序(430)或使用它们的运行库(我收到错误:“无法加载 nvidia-drm”)
- 我实际上从 Bionic 升级到了 Disco,只是为了看看是否有帮助
- 我已将显示管理器从 sddm、lightdm、slim 和 gdm3 移出
- 我意识到它一直在使用 nouveau,尽管我已将其添加到黑名单、设置 modeset=0 nomodeset=0 和 nouveau.modeset=0,但我仍无法让它停止使用 nouveau。
我将非常感激所有帮助。
硬件 7:PCI 100.0:0300 VGA 兼容控制器 (VGA) [创建于 pci.386] <..为简洁起见已删除。> 硬件类别:显卡 型号:“nVidia GP104 [GeForce GTX 1070]” 供应商:pci 0x10de “nVidia Corporation” 设备:pci 0x1b81 “GP104 [GeForce GTX 1070]”<..为简洁起见已删除。> 驱动程序信息 #0: 驱动程序状态:nvidiafb 未激活 驱动程序激活命令:“modprobe nvidiafb” 驱动程序信息 #1:
Driver Status: nouveau is not active
Driver Activation Cmd: "modprobe nouveau"
驾驶员信息 #2:
Driver Status: nvidia_drm is not active
Driver Activation Cmd: "modprobe nvidia_drm"
驾驶员信息 #3:
Driver Status: nvidia is not active
Driver Activation Cmd: "modprobe nvidia"
配置状态:cfg=new、avail=yes、need=no、active=unknown 附加到:#13(PCI 桥)
28:PCI 02.0:0380 显示控制器 [创建于 pci.386] 硬件类别:显卡 设备名称:“Onboard IGD” 型号:“Intel UHD Graphics 630 (Desktop)” 供应商:pci 0x8086 “Intel Corporation” 设备:pci 0x3e92 “UHD Graphics 630 (Desktop)” 子供应商:pci 0x1458 “Gigabyte Technology Co., Ltd” 子设备:pci 0xd000 驱动程序:“i915” 驱动程序模块:“i915”<..为简洁起见已删除。>
驾驶员信息 #0:
Driver Status: i915 is active
Driver Activation Cmd: "modprobe i915"
配置状态:cfg=new、avail=yes、need=no、active=unknown
主显示适配器:#17
蛴螬
GRUB_DEFAULT=0 GRUB_TIMEOUT=12 GRUB_DISTRIBUTOR= lsb_release -i -s 2> /dev/null || echo Debian
GRUB_CMDLINE_LINUX_DEFAULT="nouveau.modeset=0" GRUB_CMDLINE_LINUX="nouveau.modeset=0"
**modprobe sddm ** (错误) sddm.service - 简单桌面显示管理器 已加载:已加载(/lib/systemd/system/sddm.service;间接;供应商预设:已启用) 活动:失败(结果:核心转储)自 2019-08-18 星期日 19:13:20 EDT;20 秒前 文档:man:sddm(1) man:sddm.conf(5) 进程:6080 ExecStartPre=/bin/sh -c [“$(cat /etc/X11/default-display-manager 2>/dev/null)”=“/usr/bin/sddm”](代码=exited,status=0/SUCCESS) 进程:6082 ExecStart=/usr/bin/sddm(代码=dumped,信号=ABRT) 主 PID:6082(代码=dumped,信号=ABRT)
8 月 18 日 19:13:18 dirac systemd[1]: sddm.service: 失败,结果为“核心转储”。
8 月 18 日 19:13:20 dirac systemd[1]: sddm.service: 服务 RestartSec=1s 已过期,正在计划重启。
8 月 18 日 19:13:20 dirac systemd[1]: sddm.service: 计划重启作业,重启计数器为 5。
8 月 18 日 19:13:20 dirac systemd[1]: 已停止简单桌面显示管理器。
8 月 18 日 19:13:20 dirac systemd[1]: sddm.service: 启动请求重复太快。
8 月 18 日 19:13:20 dirac systemd[1]: sddm.service: 失败,结果为“core-dump”。
8 月 18 日 19:13:20 dirac systemd[1]: 无法启动简单桌面显示管理器。
8 月 18 日 19:13:20 dirac systemd[1]: sddm.service: 触发 OnFailure= 依赖项。
我读过/尝试过/与我遇到的问题相当接近的东西
https://bugzilla.redhat.com/show_bug.cgi?id=611427
https://devtalk.nvidia.com/default/topic/1049262/linux/unable-to-load-the-nvidia-drm-kernel-module-/
http://www.linuxandubuntu.com/home/how-to-install-latest-nvidia-drivers-in-linux
https://forum.manjaro.org/t/failed-to-start-user-manager-for-uid-120/49202
答案1
我有一台配备 nvidia 1080 的 Acer 笔记本电脑。我可以分享一些帮助我运行 nvidia 驱动程序和 tensorflow 的步骤(以及功能齐全的桌面环境)
启动电脑
如果您的 PC 冻结或显示黑屏,请在 BIOS 后按 F8,您应该会看到 ubuntu 启动提示。编辑启动命令并添加acpi=off
到启动命令中。在我的 PC 上,这允许启动一次性可用的系统。
设置 nvidia 驱动程序
- 添加
nvidia-drm.modeset=1
到.运行GRUB_CMDLINE_LINUX_DEFAULT
中,确保其运行时没有错误。/etc/default/grub
sudo update-grub
- 添加 nvidia-drivers ppa
sudo add-apt-repository ppa:graphics-drivers/ppa && sudo apt update
(3)。如果你之前弄乱了驱动程序,请删除所有内容sudo apt remove nvidia*
- 安装兼容的驱动程序(Nvidia 网站上有兼容性矩阵)。我使用的是 418(请注意,要使用 cuda 10,您需要 nvidia 驱动程序 >= 410)
sudo apt intall nvidia-driver-418 nvidia-dkms-418
- 重启
Tensorflow
自 2006 年以来,使用 nvidia 驱动程序一直很棘手,现在我们还需要关心 CUDA。
我的个人解决方案是仅安装显卡驱动程序并使用其中包含 CUDA 的 docker 镜像。
这可能会增加复杂性,但不会使您的 tensorflow 设置(或 PC)在每次系统更新时无法使用。
- 按照此处所述添加存储库,但不要安装 docker(参见下一步)https://docs.docker.com/install/linux/docker-ce/ubuntu/
- 安装 nvidia docker,它会小心地选择正确的依赖项(如果您使用的是 19.*,请使用 18 个存储库)https://github.com/NVIDIA/nvidia-docker
- 请参阅此处获取 dockerized 运行时https://www.tensorflow.org/install/docker
希望这有帮助