How to install the latest Nvidia drivers on Ubuntu 14.04 Trusty Tahr

Nvidia drivers

If you have an Nvidia graphics card on your system, then its recommended to install the official drivers provided by Nvidia. The proprietory drivers would utilise the hardware properly delivering full performance.

Installation is pretty easy and it uses a ppa repository. So you do not need to compile anything. However, make sure to follow the steps properly.

These steps would work on Ubuntu and close derivatives like Xubuntu, Kubuntu, Lubuntu and also Linux Mint and Elementary OS.

1. Find out your graphics card model

Use the lspci command to find out the model of your graphics card

$ lspci -vnn | grep -i VGA -A 12
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GT218 [GeForce 210] [10de:0a65] (rev a2) (prog-if 00 [VGA controller])
        Subsystem: ASUSTeK Computer Inc. Device [1043:8416]

Here its GeForce 210

2. Find out the right driver version for your graphics card

Visit http://www.nvidia.com/Download/index.aspx
Fill in the details about your graphics card and system and then click Search. On the next page, it should tell you the correct driver version with a download link and additional information.

For the above GeForce 210 card, it showed 331.67 as the correct driver which can be downloaded from the website. However we shall install the drivers from ppa to make things easier.

3. Setup the xorg-edgers ppa

The xorg-edgers ppa provides the very latest nvidia drivers. Run the following commands to set it up.

$ sudo add-apt-repository ppa:xorg-edgers/ppa -y
$ sudo apt-get update

Now the ppa is setup and the package information is also updated.

4. Install the driver

Either you can install the driver directly by installing a single package containing "nvidia" and the major version number ( 173, 304, 310, 313, 319, 331, 334 or 337).

# 331 driver
$ sudo apt-get install nvidia-331

# 334 driver
$ sudo apt-get install nvidia-334

# install the latest version
$ sudo apt-get install nvidia-current

Or you can enable it from the "Additional Drivers" section. This is different on different Ubuntu flavors.

Synaptic package manager

If you have synaptic package manager installed, then go to Settings > Repositories > Additional Drivers tab and select the correct nvidia driver, and click Apply changes.

# or launch it from command line
$ sudo software-properties-gtk






ubuntu software updates nvidia

Ubuntu

If you are running Ubuntu unity desktop, simply launch the dash and search for "driver". Then click the application named "Additional Drivers". It will launch the same dialog box as shown above.

Xubuntu

Go to "All Settings > Additional Drivers" and you should see a list of all available nvidia drivers ready to be installed. Select the correct driver and click Apply Changes. The new driver would be downloaded, installed and configured for use.

Kubuntu

Go to System Settings > System Administration > Driver Manager and select the nvidia driver there and click Apply.

After the installation is complete, reboot the system. You should see an option called "Nvidia X Server Settings" in your applications menu. From there you can check information about the graphics card and configure it.

5. Verify the installation

The last thing to do is verify that the nvidia drivers are loaded and working. Run the lspci command again and this time the kernel driver should show nvidia

$ lspci -vnn | grep -i VGA -A 12
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GT218 [GeForce 210] [10de:0a65] (rev a2) (prog-if 00 [VGA controller])
        Subsystem: ASUSTeK Computer Inc. Device [1043:8416]
        Flags: bus master, fast devsel, latency 0, IRQ 46
        Memory at e2000000 (32-bit, non-prefetchable) [size=16M]
        Memory at d0000000 (64-bit, prefetchable) [size=256M]
        Memory at e0000000 (64-bit, prefetchable) [size=32M]
        I/O ports at 2000 [size=128]
        [virtual] Expansion ROM at e3080000 [disabled] [size=512K]
        Capabilities: <access denied>
        Kernel driver in use: nvidia

Check the last line which says "kernel driver in use: nvidia". This shows that nvidia drivers are now in action. Also check hardware acceleration with the glxinfo command

$ glxinfo | grep OpenGL | grep renderer
OpenGL renderer string: GeForce 210/PCIe/SSE2

The OpenGL renderer string should be anything other than "MESA". Then it indicates that the hardware drivers are being used for hardware acceleration.

6. Nvidia settings tool

Nvidia would install a gui tool called "Nvidia X Server Settings" somewhere in the menu. It can also be launched from the command line using the command "nvidia-settings". The tool shows miscellaneous information about the graphics card and the monitor connected, and also allows to configure various options.

nvidia settings gpu info

The tool allows to configure the resolution of the monitor. If you are using dual monitors for example, then you can configure the monitor positions as well.

Removing the drivers

Incase anything goes wrong after the installation, like you are not able to boot Ubuntu, then try removing the Nvidia drivers.

Boot into the recovery console from the grub menu and then issue the following commands

# remount root file system as writable
$ mount -o remount,rw /

# remove all nvidia packages
$ apt-get purge nvidia*

Additional Notes

Many tutorials out there talk about blacklisting the nouveau driver. This is no longer necessary, since the nvidia driver would blacklist nouveau itself. This can be verified by checking the contents of nvidia driver files in the the modprobe.d directory.

$ grep 'nouveau' /etc/modprobe.d/* | grep nvidia
/etc/modprobe.d/nvidia-331_hybrid.conf:blacklist nouveau
/etc/modprobe.d/nvidia-331_hybrid.conf:blacklist lbm-nouveau
/etc/modprobe.d/nvidia-331_hybrid.conf:alias nouveau off
/etc/modprobe.d/nvidia-331_hybrid.conf:alias lbm-nouveau off
/etc/modprobe.d/nvidia-graphics-drivers.conf:blacklist nouveau
/etc/modprobe.d/nvidia-graphics-drivers.conf:blacklist lbm-nouveau
/etc/modprobe.d/nvidia-graphics-drivers.conf:alias nouveau off
/etc/modprobe.d/nvidia-graphics-drivers.conf:alias lbm-nouveau off

Note that the files "nvidia-331_hybrid.conf" and "nvidia-graphics-drivers.conf" have blacklisted nouveau.

To check information about the nvidia driver module, use the commands lsmod, modprobe and modinfo

# check that nvidia kernel module is loaded or not
$ lsmod | grep nvidia
nvidia              10699336  49 
drm                   302817  2 nvidia

# find the real name of the nvidia module
$ modprobe -R nvidia
nvidia_331

# details about the nvidia_331 module
$ modinfo nvidia_331
filename:       /lib/modules/3.13.0-24-generic/updates/dkms/nvidia_331.ko
alias:          char-major-195-*
version:        331.67
supported:      external
license:        NVIDIA
.....

The kernel module file for the nvidia driver is located at "/lib/modules/3.13.0-24-generic/updates/dkms/nvidia_331.ko".

Note that it is a "dkms" module which means, its loaded dynamically. Due to this the grub screen, the Ubuntu/Kubuntu splash screens would have a low resolution since at that time the nvidia drivers are not in effect, and whatever resolution is available via the VESA extensions, are used.

Last Updated On : 10th May 2014

Subscribe to get updates delivered to your inbox

59 Comments + Add Comment

  • Just purchased the GeForce GTX 1050 TI… am running Xubuntu 14.04 LTS 64-bit… AMD CPU
    Current video card is AMD/ATI Turks XT Radeon 6670

    Problem. IF I install the new card, the CPU will recognize it, I can enter the BIOS set-up, Diagnostics, etc. BUT, Xubuntu will not display, as the OS does not recognize the card.

    Downloaded the driver for the new card, but upon trying to install, the install program tells me that I do not have any hardware installed that need this driver, so installation fails.

    So, I can’t install the driver(s) until I have the card installed, but I can’t see screen display with the card installed because the drivers are not installed.

    Reminds me very much of “You can’t join the union unless you have a job, and you can’t get a job unless you’re in the union.”
    How to fix?

    I’ve already sent an AMD card back because I could only use it with the next generation OS, and I’m not upgrading until next year, thank you very little…

    I bought the card based on this review: http://www.phoronix.com/scan.php?page=article&item=nvidia-gtx-1050ti&num=1

Leave a comment