Ubuntu 17.10 Nvidia驱动程序,黑屏循环?


18

好的,因此在将Ubuntu与Nvidia结合使用时,我不得不处理所有类似的问题。但是,随着新的17.10更新,我得到了一个最近讨论的新错误,该错误导致我的屏幕进入黑屏并循环显示“已停止uid(#)的用户管理器”,这使我无法进入恢复模式并直接访问grub从计算机上启动,因为在启动时按住键不会执行任何操作。

因此,作为一种解决方法,我通过SSH进入桌面,并尝试了一些我在随机论坛上听到的解决方法。

尝试:

  • (/etc/gdm3/custom.conf)中未注释的“ WaylandEnable = false”
  • grub中的“ nomodeset”(/ etc / default / grub)
  • 之前和之后重新安装驱动程序

这些尝试并没有改变问题的结果。唯一有帮助的是删除了我最初通过软件更新GUI安装的Nvidia驱动程序,该驱动程序使设备可启动。

希望你们能帮助我再次利用优秀的Nvidia驱动程序;-;


幸运的是,您是否选择在登录屏幕中首次安装系统(仍使用NVIDIA开源驱动程序)以使用xorg登录(因为默认值为Wayland)。这是因为nvidia和Wayland仍然不是朋友,因此建议在安装系统后使用xorg将登录屏幕从ubuntu更改为Ubuntu。之后,您可以获取nvidia ppa并安装所需的驱动程序版本。
Luis Alvarado

@LuisAlvarado是的,它是在启用该模式时安装的。没运气。
午夜先生”(Midnight)'17

您是否为Ubuntu创建了错误报告?
惠更斯(Huygens)

我没有@Huygens,但我想我在那里看过。
午夜先生'17

有人对此问题进行工作更新吗?

Answers:


5

这听起来与我遇到的问题类似,我在此线程对此进行了回答

似乎Ubuntu更新将我切换到了低延迟内核,该内核没有像其他内核升级那样自动更新我的内核头文件安装,并且nvidia二进制软件包要求提供内核头文件。请尝试以下操作:

sudo apt purge 'nvidia-*'
sudo apt install linux-headers-$(uname -r)
sudo apt install nvidia-384

请注意,在进行任何尝试之前,我确实阻止了gdm使用Wayland,并且据我了解,Wayland目前无法与nvidia二进制文件一起使用,因此,我建议/etc/gdm3/custom.conf取消注释该行以确保禁用它#WaylandEnable=false


1
我将添加未apt标记的make错误apt-get。原来我gcc是固定在旧版本上的,而Ubuntu的无人值守更新为我提供了更多最新的NVidia驱动程序,但这些驱动程序最终都坏了,所以我用纠正了这种情况,update-alternatives并将GCC恢复到v7(从4.8)。就是这样:不需要Wayland更改,也不需要GRUB nvidia-drm.modeset=1
。– opyate

PS无人值守从nvidia-384变为nvidia-387
opyate '17

1
对我没有用
xamiro

@opyate如果我有任何比特币,我现在将其发送给您
michaelsnowden

@michaelsnowden哈哈,低价买入,高时发给我:-P
鸦片

4

多亏了史蒂文(Steven)的回答,这使我走上了正确的道路,经过一番谷歌搜索,我找到了(当然)Arch Linux活跃社区内的最后一个答案:-)

因此,Steven发现,Low Latency Kernel的头文件丢失了。因此,您需要执行以下操作:

sudo apt install linux-headers-$(uname -r)

在NVidia上对Wayland的要求(您至少需要Gnome 3.23,但Ubuntu 17.10随3.26一起提供,所以我们已经涵盖了)激活KMS,方法是编辑/etc/default/grub文件并编辑以下行以添加nvidia-drm.modeset=1,请参见示例:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvidia-drm.modeset=1"

注意:如果需要,请勿删除其他参数,只需添加NVidia DRM模式设置之一即可。

然后,您需要重新生成initramfs和内核模块。最好的方法是按照Steven的建议进行操作,删除nvidia软件包并重新安装(可能重新安装可能有效,但我没有尝试过,将其sudo apt install --reinstall nvidia-xxx替换xxx为卡的驱动程序版本,对于最新的卡应为384)。

sudo apt remove --purge nvidia-xxx
sudo apt install nvidia-xxx

PS:我有一种新的工作方式,因为它也可以在装有NVidia卡的Fedora 25(现在为26)的盒子上使用)

PS2:我希望nouveau驱动程序性能更好,因为我不介意以开放源代码驱动程序来换取一些性能。但是,即使在2D模式下,滚动页面也非常慢,并且在nouveau中也不流畅,这对我来说还不行。我真的希望Nouveau在2D(和3D)方面变得更好,或者AMD在创建低功耗和无源卡方面变得更好。无论如何,鉴于与NVidia的关系,他们做得非常出色。


关于此主题有几个问题/答案,这是唯一为我工作的解决方案。
约拿(

我只需要添加linux-headers。在nvidia-drm.modeset=1没有任何区别。
Berend de Boer

@BerenddeBoer奇怪,我有一个GeForce GT710,没有内核启动驱动程序,我记得它没有工作。这篇文章还显示,对于Wayland,您需要设置MODESET(请参见devtalk.nvidia.com/default/topic/925605/linux/…)。但是这篇文章是1,5岁,所以也许Wayland现在支持EGLStreams,并且不再需要Nvidia卡上的MODESET。无论如何,感谢您指出没有内核参数的方法对您有效。我将需要尽快重试。
惠更斯

2

我对GTX 1060有完全相同的问题,尝试了建议的修复方法(在配置中禁用Wayland并修复损坏的驱动程序),但仍然无法正常工作。但是,我很奇怪地能够通过进入grub(具有通用内核)的恢复模式并选择简历来进入。

编辑

我设法使其正常工作!为此,我转到了grub,在命令行中选择了“ c”,输入了命令“ videoinfo”-看到我的默认视频设置是1024x768 ..转到了/ etc / default / grub并添加了GRUB_GFXMODE = 1024x760行GRUB_GFXPAYLOAD_LINUX = 1024x768并设置GRUB_CMDLINE_LINUX_DEFAULT =“ nomodeset”-然后进行更新并重新启动。但是,这仅在grub的“高级选项”中选择通用内核而不是低延迟时才有效。我还看到了一些有关“启动/停止nvidia持久化”的消息,这些消息可能相关,也可能无关。

第二编辑

@Huygens提到了在/ etc / default / grub中使用nvidia-drm.modeset = 1的启动选项,它也可以工作,而不是使用nomodeset。但是,即使修复了丢失的头文件之后,我仍然无法使用低延迟内核来工作。它也不会加载Wayland。我在该地点周围看到许多帖子,说我的特殊情况可能与机载英特尔视频和专用的nvidia卡有关,导致nvidia持久化和gdm3问题(https://bugs.launchpad.net/ubuntu / + source / gnome-shell / + bug / 1705369)。有人还报告了通过使用lightdm(dpkg-reconfigure lightdm)成功的方法,但是如果不重新启动lightdm,我将无法登录。


1
我也可以用它来启动lightdm(dpkg-reconfigure lightdm)而不是gdm3,但是用lightdm登录是行不通的。
罗兰·奎斯特

当您进入恢复模式时,也许提供要执行的步骤将大大提高答案的质量。
Videonauth

您可以编辑答案以包括此内容:)
Videonauth


1

我只需要在(/etc/gdm3/custom.conf)中禁用Wayland:“ WaylandEnable = false”,现在一切正常!


如尝试的决议所述,我尝试了此@bummi,但未成功;-;
午夜先生”(Midnight)'17

我已经尝试了许多解决方案,所以我不能说这只是对我有用,但是在这样做之前,我的PC无法正常工作,在那之后,这绝对是成功成功的必要条件之一。
Juraj.Lorinc

0

所以昨天,我终于设法在我的PC上安装了Ubuntu 17.10。实际上,我在尝试升级17.04之前安装了Ubuntu 16.10。然后我意识到NVIDIA驱动程序在Ubuntu 17.04上不再可用。我试图进入恢复模式以重新安装驱动程序,但没有任何效果。直到这里,我还是不明白。我在NVIDIA驱动程序上停留了一段时间。然后,我决定使用USB引导Ubuntu 17.10。

  1. 用您的USB设备启动。
  2. 在grub中选择“尝试不安装ubuntu”。
  3. 按“ e”进行编辑
  4. 用“ nomodeset”代替“安静模式”
  5. 按“ Ctrl + X”启动。
  6. 安装系统,然后重新启动。
  7. 安装后首次启动时,还必须像3和4一样编辑grub。
  8. 安装NVIDIA驱动程序。https://doc.ubuntu-fr.org/nvidia
  9. 无论您在8中使用哪种方法,都必须确保“ NVIDIA X Server设置”类似其设置选项,然后就可以使用了。重新启动并从您的Ubuntu中获利。

  10. 如果不是这样:

  11. 转到“软件和更新”->“其他驱动程序”,选择默认驱动程序“使用X.Org…”

  12. 在终端中:(如果尚未安装lightdm,请安装它)“ sudo service lightdm restart”“ sudo apt-get remove --purge nvidia- *”
  13. 返回“软件和更新”->“其他驱动程序”,然后选择适合您需求的驱动程序套件。
  14. “ sudo服务lightdm重新启动”
  15. 重新启动系统

0

问题不是nvidia,是gdm3。你必须需要使用lightdm的,而不是gdm3nvidia。另外,您需要安装第header一个。

sudo apt purge nvidia-*
sudo apt install linux-headers-$(uname -r)
sudo apt --no-install--recommends install nvidia-384
sudo apt install lightdm

现在重启。一切都应该没问题。Bumblebee也可以nvidia-384nvidia-387


0

这个临时的变通加载NVIDIA驱动似乎为我工作(AMD FX6300,的Geforce GT730,从17.04提升到17.10):

  1. 启动进入恢复菜单

  2. 将root(/)加载为读/写(我使用修复损坏的软件包)

  3. 打开根壳

  4. 清除,然后安装Nvidia驱动程序

    sudo apt remove --purge nvidia-*
    sudo install nvidia-384
    
  5. 从外壳退出以继续启动

此时,我可以使用Unity或Ubuntu登录。

(我猜测这将允许驱动程序绕过引导进行启动,但可用于应用程序。)


0

卸载Upstart(通过sudo apt remove upstart)-如果已安装。显然,无论如何,此值均从17.10和18.04下降,但可能会导致问题。

除此之外,尽管它仍然很不稳定,但是将nomodeset添加到Grub(因此etc / default / grub中的GRUB_CMDLINE_LINUX =“ nomodeset”)至少可以使用一个工作系统。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.