20 Apr 2016

Nvidia Drivers on Ubuntu 16.04 LTS

So Ubuntu 16.04 LTS "Xenial Xerus" is nearly here, which will be supported until the year 2021! So nows a good time to get those Nvidia drivers working.

I wrote a post about how to do this on 15.10 and it is the exact same process. I will put a link below to it, however I'm going to post a much cleaner version right below. If you need detailed instructions; click the link. If you just need the commands; click read more.

doitonlinux.blogspot.com/2015/10/nvidia-drivers-on-ubuntu-1510.html

NVIDIA drivers: nvidia.com/Download/index.aspx
NVIDIA beta drivers: nvidia.com/Download/Find.aspx


If you want your drivers to install themselves every time you get a new kernal update you should install DKMS anytime before running the binary driver install.
sudo apt-get install dkms

Create the file "nvidia-driver-disable-nouveau.conf"  in the directory /etc/modprobe.d/ (requires root permissions) and have it contain:
# generated by nvidia-installer
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off

Important step: to get this to actually register, open terminal (ctrl+alt+t) and enter the following:
sudo update-initramfs -u

Next step: REBOOT

Once rebooted (no need to log in), switch to an alternate virtual desktop with the key combo ctrl+alt+F5 enter your user-name and password.
Enter the following:
sudo service lightdm stop
cd /directory/to/nvidia/driver/
sudo sh ./NVIDIA-Linux-*version_number*.run

 Next step: REBOOT (you can use this command)
sudo reboot now

2 comments:

  1. has this actually worked with the shipped version of xorg which i thought was incompatible with the binary drivers?

    also when you look at your /dev do you see the uvm device?

    ReplyDelete
    Replies
    1. This was done on Ubuntu 16.04 beta 2 straight "out of the box", no modification to xorg or anything. It was the first thing I did (excluding system updates I think).

      In my /dev I see nvidia0, nvidiactl, and nvidia-modeset (amongst everything else).

      Delete