12

I tried disabling nouveau drivers in Ubuntu 18.04 by putting these lines in /etc/modprobe.d/blacklist.conf:

#Blacklist nouveau drivers
blacklist nouveau
blacklist lbm-nouveau
alias nouveau off
alias lbm-nouveau off

and updating initramfs.

On reboot the gdm won't start, blocked in the last line:

GDM error:

enter image description here

Trying to enter any tty, I get the same error (I had to undo changes from rescue mode).

The same procedure was working on 17.10 (with xorg).

My PC is an Asus ux430uq with clean install of ubuntu 18.04 (4.15.0-20 kernel).

I am afraid of uninstalling xserver-xorg-video-nouveau drivers since I don't know how to reinstall them if something go wrong (I can't get internet working in rescue mode).


EDIT:

Uninstalling the above package lead to the same error. Trying to boot ubuntu with the kernel flag nouveau.modeset=0 gives the same error too.

karel
  • 114,770
velix
  • 476

5 Answers5

11

I found the solution. I'll write it here for who may have the same problem.

My gdm3 session was running in wayland. To check it:

 $ loginctl
 SESSION     UID  USER     SEAT     TTY             
       2    1000  velix    seat0    tty2            
      c2    1000  velix                                             
      c1     120  gdm      seat0    tty1

The command loginctl show-session <session-n> -p Type show the session type:

$ loginctl show-session c1 -p Type
Type=Wayland

To change it, edit the file /etc/gdm3/custom.conf and uncomment the line WaylandEnable=false.

After rebooting:

$ loginctl show-session c1 -p Type
Type=x11

Now blacklisting nouveau drivers in /etc/modprobe.d/blacklist.conf (as in the question) works and doesn't give the above error.

The key point is to run xorg instead of wayland

(That's why it was working in my 17.10 ubuntu, forced to run xorg)

velix
  • 476
  • +1 Thanks for sharing. Don't forget to accept your answer by clicking check mark next to it in a day or so when it lets you. – WinEunuuchs2Unix May 04 '18 at 23:13
  • 1
    Gives black screen on a MacBook, answer no longer works? – Gabor May 09 '18 at 02:10
  • My answer is 5 days old. This method is still working on my notebook. – velix May 09 '18 at 16:24
  • On a MacBook, where I have the error same as in your screenshot, I only get a black screen. Loginctl also errors out with Failed to create bus connection – Gabor May 09 '18 at 20:24
  • I think it's a different problem. Open a new question and put more info in that. – velix May 10 '18 at 09:58
  • How did you do all this? I am stuck in the boot screen – Delosari Jul 14 '18 at 20:40
  • Reboot in safe mode, access to root console and edit the custom.conf file as explained above. If you encounter more problems, consider opening a new question. – velix Jul 15 '18 at 21:37
2

https://bugs.launchpad.net/nvidia-drivers-ubuntu/+bug/1784598

try:

sudo systemctl disable nvidia-fallback.service
heeen
  • 121
1

Got exactly same problem, my configuration is x11 (returned by loginctl command). The only way working for me at the moment is to rename the nouveau file module.

# pwd
/lib/modules/4.15.0-20-generic/kernel/drivers/gpu/drm/nouveau
# mv nouveau.ko nouveau.ko-old
# reboot

dirty solution but working, hope it will help. Of course, all was fine in 17.10.

1

Don't forget to disable Secure Boot in BIOS especially when you want nvidia (and not nouveau) driver working. Otherwise it will quite always fall back back to nouveau no matter what you do.

Also note that "Secure Boot" option can be hidden in BIOS under various options on various places and often that option is not saying anything about "Secure Boot" but sometimes it's called "Other OS" similar. Every BIOS can be quite unique here. It took me several days of trying various approaches until I went back to BIOS as last resort. It cannot be emphasized enough especially when you are upgrading 18.04 from older version.

crdev
  • 11
0

Add modprobe.blacklist=nouveau to kernel cmdline. This worked on my laptop.

  • It's the same of adding "blacklist nouveau" in /etc/modprobe.d/blacklist.conf as I stated in my question. In my case it won't solve the problem, probably yours is a different situation (e.g. you're already on xorg). – velix Feb 24 '19 at 15:24