Debian Linux 6: Install Nvidia Proprietary Unix Driver

by on July 17, 2012 · 6 comments· Last updated July 20, 2012

in Debian Linux

The NVIDIA Linux proprietary unified drivers supports various features such as 3d rendering, opengl and much more. This post covers installing and configuring NVIDIA's proprietary graphic card driver for Debian Linux 6 amd64.

Why use proprietary Unix driver?

You will get full 3D acceleration support. This allows you to use the following applications with 3D and OpenGL under Linux:

  1. Games such as PlanetPenguin Racer, Extreme Tux Racer, Neverball, and many more.
  2. Linux video editing application such as cinelerra and others.
  3. Use 3d desktop effect provided by compiz - a compositing window manager for the X Window System. It use 3D graphics hardware to create fast compositing desktop effects for window management.

Step # 1: Install compilers and required tools

First, install build-essential and kernel headers package:
# apt-get install build-essential linux-headers-$(uname -r)

Step # 2: Disable nouveau driver

Open source drivers for NVIDIA hardware are included in the standard Linux distributions. You need to disable nouveau driver. Create a file as follows disable-nouveau.conf:
# vi /etc/modprobe.d/disable-nouveau.conf
Append the following code:

# Disable nouveau
blacklist nouveau
options nouveau modeset=0

Save and close the file.

Step # 3: Download nvidia driver

Visit this page to grab the latest version of nvidia driver (save it in your $HOME:
$ wget -O NVIDIA-Linux-x86_64-295.59.run http://in.download.nvidia.com/XFree86/Linux-x86_64/295.59/NVIDIA-Linux-x86_64-295.59.run
Sample outputs:

--2012-07-17 18:49:52--  http://in.download.nvidia.com/XFree86/Linux-x86_64/295.59/NVIDIA-Linux-x86_64-295.59.run
Resolving in.download.nvidia.com... 122.178.225.56, 122.178.225.32
Connecting to in.download.nvidia.com|122.178.225.56|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 58529480 (56M) [application/octet-stream]
Saving to: `/home/vivek/NVIDIA-Linux-x86_64-295.59.run'
 0% [                                                                                     ] 5,03,684     459K/s

Step # 4: Reboot the system

You need to reboot the system and login using a single user mode or select Recovery mode at grub prompt:
# reboot
Once logged into the single user mode, remove the following package (if installed):
# apt-get --purge remove xserver-xorg-video-nouveau nvidia-kernel-common nvidia-kernel-dkms nvidia-glx nvidia-smi
Search for all installed nvidia packages and delete them (do not skip this step):
# dpkg --list | grep -i --color nvidia

Step # 4: Install the driver

Make sure you are not using Xorg and/or any other graphical environment such as Gnome or KDE. If you are running Gnome stop it as follows:
# /etc/init.d/gdm3 stop
Also backup your existing /etc/X11/xorg.conf file, using the cp command:
# cp -v /etc/X11/xorg.{conf,factory}
Type the following command to install the Unix driver:
# sh /home/vivek/NVIDIA-Linux-x86_64-295.59.run
Just follow on screen instructions. Make sure you upgrade xorg.conf when promoted. Finally, reboot the system:
# reboot

How do I configure Xorg with NVIDIA driver?

Login into Gnome or KDE destktop and type the following command:
$ nvidia-settings
OR visit Gnome menus as follows:
System > Preferences > NVIDIA X Server Settings
Sample outputs:

A note about the Debian package based driver installation

NVIDIA drivers can be installed using NVIDIA's official installer or the Debian driver packages. This post covered NVIDIA's official installer. However, you can the Debian driver packages method as described here.

My modified xorg.conf

Following is my /etc/X11/xorg.conf:

 
Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "0"
EndSection
 
Section "Files"
EndSection
 
Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection
 
Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection
 
Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Seiko/Epson"
    HorizSync       49.8 - 74.7
    VertRefresh     40.0 - 60.0
    Option         "DPMS"
EndSection
 
Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "Quadro FX 3800M"
 
    # Power settings by VG - start
    # Laptop Battery life setting by VG
    Option     "RegistryDwords" "PowerMizerLevel=0x3"
    # When on AC settings by VG
    Option "RegistryDwords" "PowerMizerLevelAC=0x3"
    # Power settings by VG - end
 
    #Compiz settings by VG - start
    Option "XAANoOffscreenPixmaps" "true"
    Option "AllowGLXWithComposite" "true"
    #Compiz settings by VG - end
EndSection
 
Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "TwinView" "1"
    Option         "TwinViewXineramaInfoOrder" "CRT-0"
    Option         "metamodes" "DFP: nvidia-auto-select +0+0, CRT: nvidia-auto-select +1920+0"
    #Compiz settings by VG - start - we need to set this to 24bit
    SubSection     "Display"
        Depth       24
    EndSubSection
    #Compiz settings by VG - end
    #Compiz settings by VG - start
    Option "AddARGBGLXVisuals" "true"
    #Compiz settings by VG - end
EndSection
 
# Dedicated "Extensions" section
Section "Extensions"
        #Compiz settings by VG - start
        Option "Composite" "enable"
        #Compiz settings by VG - end
EndSection
 
References


If you would like to be kept up to date with our posts, you can follow us on Twitter, Facebook, Google+, or even by subscribing to our RSS Feed.

This post is 1 of 4 in the "Debian Linux Cool Desktop Effects" series. Keep reading the rest of the series:
  • Marco

    Is it possible to install nVidia binary driver in a VirtualBox virtual Debian? I.e. no nVidia card really available.
    I need this because I create a debian live from VM image and run it on nVidia-enabled PCs…

    • http://www.cyberciti.biz/tips/about-us Vivek Gite

      Noop.

  • http://twitter.com/hadrons123 hadrons123

    Your last word in the link redirects back to the current page.

    A note about the Debian package based driver installation

    NVIDIA

    drivers can be installed using NVIDIA’s official installer or the

    Debian driver packages. This post covered NVIDIA’s official installer.

    However, you can the Debian driver packages method as described here.

  • http://twitter.com/hadrons123 hadrons123

    Can you post an article about how to install the proprietary nvidia driver from the debian repos?

  • Alex

    Thanks a lot. Amazing tutorial, very well written

  • http://www.facebook.com/patterson1970 Chris Patterson

    Thanks very much! Worked perfectly for me.

Next post: