P51 Lenov, Install Quadro M2200 graphic card
With the recent advancements in Linux desktop distributions, gaming on Linux is coming to life. Linux users are beginning to enjoy gaming like Windows or Mac OSX users, with amazing performance.
Nvidiamakes top-rated gaming graphics cards. However, for a long time, updatingNvidiadrivers on Linux desktops was not so easy. Luckily, now theProprietary GPU Drivers PPApackages updatednvidia-graphics-driversfor Ubuntu ready for installation.
Although thisPPAis currently in testing, you can get fresh drivers from upstream, currently shipping Nvidia from it. If you are using Nvidia graphics card, this article will show you how to install the latest Nvidia drivers onUbuntuand its derivatives such asLinux Mint.
How to Install Nvidia Drivers in Ubuntu
First start by adding theProprietary GPU Drivers PPAto your system package sources and update your system package cache usingapt command.
Then install the latest stable nvidia graphics (which isnvidia-387at the time of writing this article) using the following command.
Alternatively, openSoftware & UpdatesunderSystem Settingsand go toAdditional Driverstab, select the required driver version and click “Apply Changes”.
Next,rebootyour computer for the new driver to start working. Then use thelsmod commandto check your installation status with the following command.
It will list all currently loaded kernel modules in Linux, then filter onlynvidiausinggrep command.
Some times updates do not work well as expected. If you face any issues with the latest drivers installation such as black screen on startup, you can remove it as follows.
If you want to completely remove graphics-drivers PPA as well, run the following command to remove PPA.
How to check NVIDIA driver version on your Linux system
Use command line and consult
nvidia-smi
utility to reveal NVIDIA driver version
or Check Xorg X server logs
Here in the below is the installation of version 410:
lhnguyen@nguyenP51U16:~$ sudo add-apt-repository ppa:graphics-drivers/ppa
[sudo] password for lhnguyen:
Fresh drivers from upstream, currently shipping Nvidia.
## Current Status
Current long-lived branch release: `nvidia-410` (410.66)
Dropped support for Fermi series (https://nvidia.custhelp.com/app/answers/detail/a_id/4656\)
Old long-lived branch release: `nvidia-390` (390.87)
For GF1xx GPUs use `nvidia-390` (390.87)
For G8x, G9x and GT2xx GPUs use `nvidia-340` (340.107)
For NV4x and G7x GPUs use `nvidia-304` (304.137) End-Of-Life!
Support timeframes for Unix legacy GPU releases:
https://nvidia.custhelp.com/app/answers/detail/a_id/3142
## What we're working on right now:
Normal driver updates
Help Wanted: Mesa Updates for Intel/AMD users, ping us if you want to help do this work, we're shorthanded.
## WARNINGS:
This PPA is currently in testing, you should be experienced with packaging before you dive in here:
Volunteers welcome!
### How you can help:
## Install PTS and benchmark your gear:
Run the benchmark:
and then say yes when it asks you to submit your results to openbechmarking.org. Then grab a cup of coffee, it takes a bit for the benchmarks to run. Depending on the version of Ubuntu you're using it might preferable for you to grabs PTS from upstream directly: http://www.phoronix-test-suite.com/?k=downloads
## Share your results with the community:
Post a link to your results (or any other feedback to): https://launchpad.net/~graphics-drivers-testers
Remember to rerun and resubmit the benchmarks after driver upgrades, this will allow us to gather a bunch of data on performance that we can share with everybody.
If you run into old documentation referring to other PPAs, you can help us by consolidating references to this PPA.
If someone wants to go ahead and start prototyping on `software-properties-gtk` on what the GUI should look like, please start hacking!
## Help us Help You!
We use the donation funds to get the developers hardware to test and upload these drivers, please consider donating to the "community" slider on the donation page if you're loving this PPA:
http://www.ubuntu.com/download/desktop/contribute
More info: https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa
Press [ENTER] to continue or ctrl-c to cancel adding it
gpg: keyring `/tmp/tmpzxvrgb_8/secring.gpg' created
gpg: keyring `/tmp/tmpzxvrgb_8/pubring.gpg' created
gpg: requesting key 1118213C from hkp server keyserver.ubuntu.com
gpg: /tmp/tmpzxvrgb_8/trustdb.gpg: trustdb created
gpg: key 1118213C: public key "Launchpad PPA for Graphics Drivers Team" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
OK
lhnguyen@nguyenP51U16:~$ sudo apt update
Hit:1 http://fr.archive.ubuntu.com/ubuntu xenial InRelease
Ign:2 http://dl.google.com/linux/chrome/deb stable InRelease
Get:3 http://security.ubuntu.com/ubuntu xenial-security InRelease [107 kB]
Hit:4 http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu xenial InRelease
Get:5 http://fr.archive.ubuntu.com/ubuntu xenial-updates InRelease [109 kB]
Hit:6 http://dl.google.com/linux/chrome/deb stable Release
Hit:7 http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu xenial InRelease
Get:9 http://fr.archive.ubuntu.com/ubuntu xenial-backports InRelease [107 kB]
Get:10 http://fr.archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages [884 kB]
Hit:11 http://packages.osrfoundation.org/gazebo/ubuntu-stable xenial InRelease
Get:12 https://desktop-download.mendeley.com/download/apt stable InRelease [2 456 B]
Hit:13 https://download.sublimetext.com apt/stable/ InRelease
Hit:14 http://packages.ros.org/ros/ubuntu xenial InRelease
Get:15 http://fr.archive.ubuntu.com/ubuntu xenial-updates/main i386 Packages [786 kB]
Get:16 http://fr.archive.ubuntu.com/ubuntu xenial-updates/main amd64 DEP-11 Metadata [320 kB]
Get:17 http://fr.archive.ubuntu.com/ubuntu xenial-updates/main DEP-11 64x64 Icons [225 kB]
Get:18 http://fr.archive.ubuntu.com/ubuntu xenial-updates/universe amd64 Packages [707 kB]
Get:19 http://fr.archive.ubuntu.com/ubuntu xenial-updates/universe i386 Packages [649 kB]
Get:20 http://fr.archive.ubuntu.com/ubuntu xenial-updates/universe amd64 DEP-11 Metadata [248 kB]
Get:21 http://fr.archive.ubuntu.com/ubuntu xenial-updates/universe DEP-11 64x64 Icons [337 kB]
Get:22 http://fr.archive.ubuntu.com/ubuntu xenial-updates/multiverse amd64 DEP-11 Metadata [5 964 B]
Get:23 http://fr.archive.ubuntu.com/ubuntu xenial-updates/multiverse DEP-11 64x64 Icons [14,3 kB]
Get:24 http://fr.archive.ubuntu.com/ubuntu xenial-backports/main amd64 DEP-11 Metadata [3 328 B]
Get:25 http://fr.archive.ubuntu.com/ubuntu xenial-backports/universe amd64 DEP-11 Metadata [5 104 B]
Fetched 4 509 kB in 4s (1 096 kB/s)
AppStream cache update completed, but some metadata was ignored due to errors.
Reading package lists... Done
Building dependency tree
Reading state information... Done
261 packages can be upgraded. Run 'apt list --upgradable' to see them.
lhnguyen@nguyenP51U16:~$ lsmod | grep nvidia
lhnguyen@nguyenP51U16:~$ sudo apt install nvidia-410
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
linux-headers-4.13.0-38 linux-headers-4.13.0-38-generic linux-headers-4.13.0-45 linux-headers-4.13.0-45-generic linux-headers-4.15.0-24
linux-headers-4.15.0-24-generic linux-headers-4.15.0-29 linux-headers-4.15.0-29-generic linux-headers-4.15.0-32 linux-headers-4.15.0-32-generic
linux-headers-4.15.0-34 linux-headers-4.15.0-34-generic linux-image-4.13.0-38-generic linux-image-4.13.0-45-generic linux-image-4.15.0-24-generic
linux-image-4.15.0-29-generic linux-image-4.15.0-32-generic linux-image-4.15.0-34-generic linux-image-extra-4.13.0-38-generic
linux-image-extra-4.13.0-45-generic linux-modules-4.15.0-24-generic linux-modules-4.15.0-29-generic linux-modules-4.15.0-32-generic
linux-modules-4.15.0-34-generic linux-modules-extra-4.15.0-24-generic linux-modules-extra-4.15.0-29-generic linux-modules-extra-4.15.0-32-generic
linux-modules-extra-4.15.0-34-generic linux-signed-image-4.13.0-38-generic linux-signed-image-4.13.0-45-generic
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
bbswitch-dkms dkms lib32gcc1 libc6-i386 libcuda1-410 libjansson4 libxnvctrl0 nvidia-opencl-icd-410 nvidia-prime nvidia-settings
screen-resolution-extra xserver-common xserver-xorg-legacy
Suggested packages:
bumblebee
The following NEW packages will be installed:
bbswitch-dkms dkms lib32gcc1 libc6-i386 libcuda1-410 libjansson4 libxnvctrl0 nvidia-410 nvidia-opencl-icd-410 nvidia-prime nvidia-settings
screen-resolution-extra xserver-xorg-legacy
The following packages will be upgraded:
xserver-common
1 upgraded, 13 newly installed, 0 to remove and 260 not upgraded.
Need to get 108 MB of archives.
After this operation, 493 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://fr.archive.ubuntu.com/ubuntu xenial-updates/main amd64 dkms all 2.2.0.3-2ubuntu11.5 [66,3 kB]
Get:2 http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu xenial/main amd64 lib32gcc1 amd64 1:8.1.0-5ubuntu1~16.04 [47,8 kB]
Get:3 http://fr.archive.ubuntu.com/ubuntu xenial-updates/main amd64 libc6-i386 amd64 2.23-0ubuntu10 [2 336 kB]
Get:4 http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu xenial/main amd64 nvidia-410 amd64 410.78-0ubuntu0~gpu16.04.1 [97,0 MB]
Get:5 http://fr.archive.ubuntu.com/ubuntu xenial-updates/main amd64 xserver-common all 2:1.18.4-0ubuntu0.8 [27,7 kB]
Get:6 http://fr.archive.ubuntu.com/ubuntu xenial-updates/main amd64 xserver-xorg-legacy amd64 2:1.18.4-0ubuntu0.8 [35,9 kB]
Get:7 http://fr.archive.ubuntu.com/ubuntu xenial-updates/main amd64 libjansson4 amd64 2.7-3ubuntu0.1 [27,1 kB]
Get:8 http://fr.archive.ubuntu.com/ubuntu xenial/main amd64 bbswitch-dkms amd64 0.8-3ubuntu1 [11,6 kB]
Get:9 http://fr.archive.ubuntu.com/ubuntu xenial/main amd64 nvidia-prime amd64 0.8.2 [11,1 kB]
Get:10 http://fr.archive.ubuntu.com/ubuntu xenial-updates/main amd64 screen-resolution-extra all 0.17.1.1~16.04.1 [11,7 kB]
Get:11 http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu xenial/main amd64 libcuda1-410 amd64 410.78-0ubuntu0~gpu16.04.1 [3 597 kB]
Get:12 http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu xenial/main amd64 libxnvctrl0 amd64 415.18-0ubuntu0~gpu16.04.1 [18,2 kB]
Get:13 http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu xenial/main amd64 nvidia-opencl-icd-410 amd64 410.78-0ubuntu0~gpu16.04.1 [3 686 kB]
Get:14 http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu xenial/main amd64 nvidia-settings amd64 415.18-0ubuntu0~gpu16.04.1 [957 kB]
Fetched 108 MB in 3min 6s (578 kB/s)
Preconfiguring packages ...
setting xserver-xorg-legacy/xwrapper/allowed_users from configuration file
Selecting previously unselected package dkms.
(Reading database ... 658994 files and directories currently installed.)
Preparing to unpack .../dkms_2.2.0.3-2ubuntu11.5_all.deb ...
Unpacking dkms (2.2.0.3-2ubuntu11.5) ...
Selecting previously unselected package libc6-i386.
Preparing to unpack .../libc6-i386_2.23-0ubuntu10_amd64.deb ...
Unpacking libc6-i386 (2.23-0ubuntu10) ...
Selecting previously unselected package lib32gcc1.
Preparing to unpack .../lib32gcc1_1%3a8.1.0-5ubuntu1~16.04_amd64.deb ...
Unpacking lib32gcc1 (1:8.1.0-5ubuntu1~16.04) ...
Preparing to unpack .../xserver-common_2%3a1.18.4-0ubuntu0.8_all.deb ...
Unpacking xserver-common (2:1.18.4-0ubuntu0.8) over (2:1.18.4-0ubuntu0.7) ...
Selecting previously unselected package xserver-xorg-legacy.
Preparing to unpack .../xserver-xorg-legacy_2%3a1.18.4-0ubuntu0.8_amd64.deb ...
Unpacking xserver-xorg-legacy (2:1.18.4-0ubuntu0.8) ...
Selecting previously unselected package nvidia-410.
Preparing to unpack .../nvidia-410_410.78-0ubuntu0~gpu16.04.1_amd64.deb ...
Unpacking nvidia-410 (410.78-0ubuntu0~gpu16.04.1) ...
Selecting previously unselected package libcuda1-410.
Preparing to unpack .../libcuda1-410_410.78-0ubuntu0~gpu16.04.1_amd64.deb ...
Unpacking libcuda1-410 (410.78-0ubuntu0~gpu16.04.1) ...
Selecting previously unselected package libjansson4:amd64.
Preparing to unpack .../libjansson4_2.7-3ubuntu0.1_amd64.deb ...
Unpacking libjansson4:amd64 (2.7-3ubuntu0.1) ...
Selecting previously unselected package libxnvctrl0:amd64.
Preparing to unpack .../libxnvctrl0_415.18-0ubuntu0~gpu16.04.1_amd64.deb ...
Unpacking libxnvctrl0:amd64 (415.18-0ubuntu0~gpu16.04.1) ...
Selecting previously unselected package nvidia-opencl-icd-410.
Preparing to unpack .../nvidia-opencl-icd-410_410.78-0ubuntu0~gpu16.04.1_amd64.deb ...
Unpacking nvidia-opencl-icd-410 (410.78-0ubuntu0~gpu16.04.1) ...
Selecting previously unselected package bbswitch-dkms.
Preparing to unpack .../bbswitch-dkms_0.8-3ubuntu1_amd64.deb ...
Unpacking bbswitch-dkms (0.8-3ubuntu1) ...
Selecting previously unselected package nvidia-prime.
Preparing to unpack .../nvidia-prime_0.8.2_amd64.deb ...
Unpacking nvidia-prime (0.8.2) ...
Selecting previously unselected package screen-resolution-extra.
Preparing to unpack .../screen-resolution-extra_0.17.1.1~16.04.1_all.deb ...
Unpacking screen-resolution-extra (0.17.1.1~16.04.1) ...
Selecting previously unselected package nvidia-settings.
Preparing to unpack .../nvidia-settings_415.18-0ubuntu0~gpu16.04.1_amd64.deb ...
Unpacking nvidia-settings (415.18-0ubuntu0~gpu16.04.1) ...
Processing triggers for man-db (2.7.5-1) ...
Processing triggers for libc-bin (2.23-0ubuntu10) ...
Processing triggers for ureadahead (0.100.0-19) ...
ureadahead will be reprofiled on next reboot
Processing triggers for dbus (1.10.6-1ubuntu3.3) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu5.2) ...
Processing triggers for bamfdaemon (0.5.3~bzr0+16.04.20180209-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for gnome-menus (3.13.3-6ubuntu3.1) ...
Processing triggers for mime-support (3.59ubuntu1) ...
Setting up dkms (2.2.0.3-2ubuntu11.5) ...
Setting up libc6-i386 (2.23-0ubuntu10) ...
Setting up lib32gcc1 (1:8.1.0-5ubuntu1~16.04) ...
Setting up xserver-common (2:1.18.4-0ubuntu0.8) ...
Setting up xserver-xorg-legacy (2:1.18.4-0ubuntu0.8) ...
setting xserver-xorg-legacy/xwrapper/allowed_users from configuration file
Setting up nvidia-410 (410.78-0ubuntu0~gpu16.04.1) ...
update-alternatives: using /usr/lib/nvidia-410/ld.so.conf to provide /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf (x86_64-linux-gnu_gl_conf) in auto mode
update-alternatives: using /usr/lib/nvidia-410/ld.so.conf to provide /etc/ld.so.conf.d/x86_64-linux-gnu_EGL.conf (x86_64-linux-gnu_egl_conf) in auto mode
update-alternatives: using /usr/lib/nvidia-410/alt_ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_GL.conf (i386-linux-gnu_gl_conf) in auto mode
update-alternatives: using /usr/lib/nvidia-410/alt_ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_EGL.conf (i386-linux-gnu_egl_conf) in auto mode
update-alternatives: using /usr/share/nvidia-410/glamor.conf to provide /usr/share/X11/xorg.conf.d/glamoregl.conf (glamor_conf) in auto mode
update-initramfs: deferring update (trigger activated)
INFO:Enable nvidia-410
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/dell_latitude
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/put_your_quirks_here
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/lenovo_thinkpad
Adding system user `nvidia-persistenced' (UID 122) ...
Adding new group `nvidia-persistenced' (GID 129) ...
Adding new user `nvidia-persistenced' (UID 122) with group `nvidia-persistenced' ...
Not creating home directory `/'.
Loading new nvidia-410-410.78 DKMS files...
First Installation: checking all kernels...
Building only for 4.15.0-39-generic
Building for architecture x86_64
Building initial module for 4.15.0-39-generic
Done.
nvidia_410:
Running module version sanity check.
Original module
No original module exists within this kernel
Installation
Installing to /lib/modules/4.15.0-39-generic/updates/dkms/
nvidia_410_modeset.ko:
Running module version sanity check.
Original module
No original module exists within this kernel
Installation
Installing to /lib/modules/4.15.0-39-generic/updates/dkms/
nvidia_410_drm.ko:
Running module version sanity check.
Original module
No original module exists within this kernel
Installation
Installing to /lib/modules/4.15.0-39-generic/updates/dkms/
nvidia_410_uvm.ko:
Running module version sanity check.
Original module
No original module exists within this kernel
Installation
Installing to /lib/modules/4.15.0-39-generic/updates/dkms/
depmod....
DKMS: install completed.
Setting up libcuda1-410 (410.78-0ubuntu0~gpu16.04.1) ...
Setting up libjansson4:amd64 (2.7-3ubuntu0.1) ...
Setting up libxnvctrl0:amd64 (415.18-0ubuntu0~gpu16.04.1) ...
Setting up nvidia-opencl-icd-410 (410.78-0ubuntu0~gpu16.04.1) ...
Setting up bbswitch-dkms (0.8-3ubuntu1) ...
Loading new bbswitch-0.8 DKMS files...
First Installation: checking all kernels...
Building only for 4.15.0-39-generic
Building initial module for 4.15.0-39-generic
Done.
bbswitch:
Running module version sanity check.
Original module
No original module exists within this kernel
Installation
Installing to /lib/modules/4.15.0-39-generic/updates/dkms/
depmod....
DKMS: install completed.
Setting up nvidia-prime (0.8.2) ...
Setting up screen-resolution-extra (0.17.1.1~16.04.1) ...
Setting up nvidia-settings (415.18-0ubuntu0~gpu16.04.1) ...
Processing triggers for libc-bin (2.23-0ubuntu10) ...
Processing triggers for initramfs-tools (0.122ubuntu8.11) ...
update-initramfs: Generating /boot/initrd.img-4.15.0-39-generic
Processing triggers for shim-signed (1.33.1~16.04.1+13-0ubuntu2) ...
Secure Boot not enabled on this system.
Processing triggers for ureadahead (0.100.0-19) ...
Processing triggers for dbus (1.10.6-1ubuntu3.3) ...
lhnguyen@nguyenP51U16:~$ lsmod | grep nvidia
Last updated