Trying to install nvidia driver for ubuntu Desktop 18.04 LTS

77,268

Solution 1

To solve the error, Install nvidia-kernel-source before installing driver by following command:

 ~$ sudo apt install nvidia-kernel-source-396

then instal driver by this command:

 ~$ sudo apt install nvidia-driver-396

Solution 2

for your specific case, follow this steps exactly to be able to use the latest nvidia with your specific Nvidia card. I am assuming you have internet:

  1. Add the Nvidia PPA

    sudo add-apt-repository ppa:graphics-drivers/ppa
    
  2. On 18.04, you do not need to update the repositories. After you add a PPA, this is done automatically. After the update finishes, do this for your nvidia driver:

For Nvidia 390

    sudo apt install nvidia-driver-390

For Nvidia 396 (The one am using for the 1080 which also applies to your 1060)

    sudo apt install nvidia-driver-396

There is no need to install the nvidia-settings package since on 18.04, suggested and recommended packages are installed by default (at least to my knowledge) BUT in the case the nvidia-settings package does not get install then do

    sudo apt install nvidia-settings

Also if you want Vulkan, then simply:

    sudo apt install vulkan

After this, you can reboot the computer and you are done. Here is a screenshot of this steps working with a 1080 perfectly (Including Vulkan)

enter image description here

Solution 3

Per this answer: https://askubuntu.com/a/1044501/254024

sudo apt purge 'nvidia.*'
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt install nvidia-390

Work like charm for me.

Share:
77,268

Related videos on Youtube

Ashu
Author by

Ashu

Updated on September 18, 2022

Comments

  • Ashu
    Ashu almost 2 years

    Trying to install nvidia driver for ubuntu Desktop 18.04 LTS following this link. Followed all the tips from the above link.

    But some what confused in terms of: Whether I am using nvidia driver or nouveau? Whether i am using the right version of nvidia or not? I wanted to use the version 390.

    I am having Nvidia GTX 1060 and using Ubuntu Linux Desktop 18.04 LTS.

    lspci -k | grep -EA2 'VGA|3D'  
    01:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] (rev a1)
        Subsystem: Dell GP106 [GeForce GTX 1060 6GB]
        Kernel driver in use: nouveau
    

    The above command shows that i am using nouveau

    while the additional driver shows that i am using nvidia driver enter image description here

    Don't know what to trust?

    Edit1 Thanks Luis for your answer. Based on your comments when i am trying to install 396 driver...I am getting the following errors:

    sudo apt install nvidia-driver-396
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    Some packages could not be installed. This may mean that you have
    requested an impossible situation or if you are using the unstable
    distribution that some required packages have not yet been created
    or been moved out of Incoming.
    The following information may help to resolve the situation:
    
    The following packages have unmet dependencies:
     nvidia-driver-396 : Depends: nvidia-dkms-396 (= 396.24-0ubuntu0~gpu18.04.1) but it is not going to be installed
                         Depends: nvidia-kernel-source-396 (= 396.24-0ubuntu0~gpu18.04.1) but it is not going to be installed
                         Depends: nvidia-compute-utils-396 (= 396.24-0ubuntu0~gpu18.04.1) but it is not going to be installed
                         Depends: libnvidia-decode-396 (= 396.24-0ubuntu0~gpu18.04.1) but it is not going to be installed
                         Depends: libnvidia-encode-396 (= 396.24-0ubuntu0~gpu18.04.1) but it is not going to be installed
                         Depends: nvidia-utils-396 (= 396.24-0ubuntu0~gpu18.04.1) but it is not going to be installed
                         Depends: xserver-xorg-video-nvidia-396 (= 396.24-0ubuntu0~gpu18.04.1) but it is not going to be installed
                         Depends: libnvidia-cfg1-396 (= 396.24-0ubuntu0~gpu18.04.1) but it is not going to be installed
                         Recommends: libnvidia-decode-396:i386 (= 396.24-0ubuntu0~gpu18.04.1)
                         Recommends: libnvidia-encode-396:i386 (= 396.24-0ubuntu0~gpu18.04.1)
                         Recommends: libnvidia-ifr1-396:i386 (= 396.24-0ubuntu0~gpu18.04.1)
                         Recommends: libnvidia-fbc1-396:i386 (= 396.24-0ubuntu0~gpu18.04.1)
    E: Unable to correct problems, you have held broken packages.
    

    and then when

    sudo apt install nvidia-settings
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    nvidia-settings is already the newest version (396.24-0ubuntu0~gpu18.04.1).
    nvidia-settings set to manually installed.
    0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
    

    Edit2 Tried this link Even the proprietary driver install from nvidia didn't worked. nouveau is very much stuck and not going out even when it's being listed in the blacklisted and tried to removed it.

    Edit 3 Reinstall didn't solved the issue...seems that it's common bug as mentioned here

    Edit 4 Tried these

    sudo apt purge nvidia-390
    sudo apt install nvidia-kernel-source-396
    sudo apt install nvidia-driver-396
    

    and then(added the nomodeset entry)

    sudo vi /etc/default/grub
    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset"
    

    After reboot when i issue this command:

    lspci -k | grep -EA2 'VGA|3D' 
    01:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] (rev a1)
        Subsystem: Dell GP106 [GeForce GTX 1060 6GB]
        Kernel modules: nvidiafb, nouveau, nvidia_drm, nvidia
    

    But the issue is now I have much lower resolution - bigger fonts. How to fix that? What does this line means: Kernel modules: nvidiafb, nouveau, nvidia_drm, nvidia That it has all the 4 modules in the order it has been displayed? Current resolution is

    xdpyinfo | awk '/dimensions/{print $2}'
    800x600
    

    With this change, Secondary monitor has stopped working now. xrandr

    xrandr: Failed to get size of gamma for output default
    Screen 0: minimum 800 x 600, current 800 x 600, maximum 800 x 600
    default connected primary 800x600+0+0 0mm x 0mm
       800x600       75.00* 
    

    And it seems this is the maximum resolution that i can get based on the above output.

    Edit5 Reverted back the grub nomodeset entry to have the normal resolution. After reboot and closely looking at the log files, this is what i have found(just the relevant lines)

    /var/log# cat gpu-manager.log
    can't access /run/u-d-c-nvidia-was-loaded file
    can't access /opt/amdgpu-pro/bin/amdgpu-pro-px
    Looking for nvidia modules in /lib/modules/4.15.0-20-generic/updates/dkms
    Found nvidia module: nvidia.ko
    Looking for amdgpu modules in /lib/modules/4.15.0-20-generic/updates/dkms
    Is nvidia loaded? no
    Was nvidia unloaded? no
    Is nvidia blacklisted? no
    Is intel loaded? yes
    Is nouveau loaded? yes
    Is nouveau blacklisted? yes
    Is nvidia kernel module available? yes
    Is amdgpu kernel module available? no
    Vendor/Device Id: 8086:3e92
    BusID "PCI:0@0:2:0"
    Has amd? no
    Has intel? yes
    Has nvidia? yes
    How many cards? 2
    The number of cards has changed!
    Has the system changed? Yes
    System configuration has changed
    Unsupported discrete card vendor: 8086
    Nothing to do
    
    Xorg.0.log
    [     5.649] (--) PCI:*(0:1:0:0) 10de:1c03:1028:11d7 rev 161, Mem @ 0xeb000000/16777216, 0xa0000000/268435456, 0xb0000000/33554432, I/O @ 0x0000e000/128, BIOS @ 0x????????/131072
    [     5.649] (II) LoadModule: "glx"
    [     5.649] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
    [     5.649] (II) Module glx: vendor="X.Org Foundation"
    [     5.649]    compiled for 1.19.6, module version = 1.0.0
    [     5.649]    ABI class: X.Org Server Extension, version 10.0
    [     5.649] (==) Matched nouveau as autoconfigured driver 0
    [     5.649] (==) Matched modesetting as autoconfigured driver 1
    [     5.649] (==) Matched fbdev as autoconfigured driver 2
    [     5.649] (==) Matched vesa as autoconfigured driver 3
    [     5.649] (==) Assigned the driver to the xf86ConfigLayout
    [     5.649] (II) LoadModule: "nouveau"
    [     5.650] (II) Loading /usr/lib/xorg/modules/drivers/nouveau_drv.so
    [     5.650] (II) Module nouveau: vendor="X.Org Foundation"
    [     5.650]    compiled for 1.19.3, module version = 1.0.15
    [     5.650]    Module class: X.Org Video Driver
    [     5.650]    ABI class: X.Org Video Driver, version 23.0
    [     5.650] (II) LoadModule: "modesetting"
    [     5.650] (II) Loading /usr/lib/xorg/modules/drivers/modesetting_drv.so
    [     5.650] (II) Module modesetting: vendor="X.Org Foundation"
    [     5.650]    compiled for 1.19.6, module version = 1.19.6
    [     5.650]    Module class: X.Org Video Driver
    [     5.650]    ABI class: X.Org Video Driver, version 23.0
    [     5.650] (II) LoadModule: "fbdev"
    [     5.650] (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
    [     5.650] (II) Module fbdev: vendor="X.Org Foundation"
    [     5.650]    compiled for 1.19.3, module version = 0.4.4
    [     5.650]    Module class: X.Org Video Driver
    [     5.650]    ABI class: X.Org Video Driver, version 23.0
    [     5.650] (II) LoadModule: "vesa"
    [     5.650] (II) Loading /usr/lib/xorg/modules/drivers/vesa_drv.so
    [     5.650] (II) Module vesa: vendor="X.Org Foundation"
    [     5.650]    ABI class: X.Org Video Driver, version 23.0
    [     5.650] (II) NOUVEAU driver Date:   Fri Apr 21 14:41:17 2017 -0400
    [     5.650] (II) NOUVEAU driver for NVIDIA chipset families :
    [     5.650]    RIVA TNT        (NV04)
    [     5.650]    RIVA TNT2       (NV05)
    [     5.650]    GeForce 256     (NV10)
    [     5.651]    GeForce 2       (NV11, NV15)
    [     5.651]    GeForce 4MX     (NV17, NV18)
    [     5.651]    GeForce 3       (NV20)
    [     5.651]    GeForce 4Ti     (NV25, NV28)
    [     5.651]    GeForce FX      (NV3x)
    [     5.651]    GeForce 6       (NV4x)
    [     5.651]    GeForce 7       (G7x)
    [     5.651]    GeForce 8       (G8x)
    [     5.651]    GeForce GTX 200 (NVA0)
    [     5.651]    GeForce GTX 400 (NVC0)
    [     5.651] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
    [     5.651] (II) FBDEV: driver for framebuffer: fbdev
    [     5.651] (II) VESA: driver for VESA chipsets: vesa
    [     5.651] xf86EnableIOPorts: failed to set IOPL for I/O (Operation not permitted)
    [     5.769] (EE) [drm] Failed to open DRM device for pci:0000:01:00.0: -19
    [     5.769] (EE) open /dev/dri/card0: No such file or directory
    [     5.769] (WW) Falling back to old probe method for modesetting
    [     5.769] (EE) open /dev/dri/card0: No such file or directory
    [     5.769] (II) Loading sub module "fbdevhw"
    [     5.769] (II) LoadModule: "fbdevhw"
    [     5.770] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
    [     5.770] (II) Module fbdevhw: vendor="X.Org Foundation"
    [     5.770]    compiled for 1.19.6, module version = 0.0.2
    [     5.770]    ABI class: X.Org Video Driver, version 23.0
    [     5.770] (**) FBDEV(1): claimed PCI slot 1@0:0:0
    [     5.770] (II) FBDEV(1): using default device
    [     5.770] (WW) Falling back to old probe method for vesa
    [     5.770] (EE) Screen 0 deleted because of no matching config section.
    [     5.770] (II) FBDEV(0): Creating default Display subsection in Screen section
            "Default Screen Section" for depth/fbbpp 24/32
    [     5.770] (==) FBDEV(0): Depth 24, (==) framebuffer bpp 32
    [     5.770] (==) FBDEV(0): RGB weight 888
    [     5.770] (==) FBDEV(0): Default visual is TrueColor
    [     5.770] (==) FBDEV(0): Using gamma correction (1.0, 1.0, 1.0)
    [     5.770] (II) FBDEV(0): hardware: EFI VGA (video memory: 2400kB)
    [     5.770] (II) FBDEV(0): checking modes against framebuffer device...
    [     5.770] (II) FBDEV(0): checking modes against monitor...
    [     5.770] (--) FBDEV(0): Virtual size is 800x600 (pitch 800)
    [     5.770] (**) FBDEV(0):  Built-in mode "current": 48.0 MHz, 46.9 kHz, 75.1 Hz
    [     5.770] (II) FBDEV(0): Modeline "current"x0.0   48.00  800 832 928 1024  600 604 608 624 -hsync -vsync -csync (46.9 kHz b)
    [     5.770] (==) FBDEV(0): DPI set to (96, 96)
    [     5.770] (II) Loading sub module "fb"
    [     5.770] (II) LoadModule: "fb"
    [     5.770] (II) Loading /usr/lib/xorg/modules/libfb.so
    [     5.770] (II) Module fb: vendor="X.Org Foundation"
    [     5.770]    compiled for 1.19.6, module version = 1.0.0
    [     5.770]    ABI class: X.Org ANSI C Emulation, version 0.4
    [     5.770] (**) FBDEV(0): using shadow framebuffer
    [     5.770] (II) Loading sub module "shadow"
    [     5.770] (II) LoadModule: "shadow"
    [     5.770] (II) Loading /usr/lib/xorg/modules/libshadow.so
    [     5.772] (II) Module shadow: vendor="X.Org Foundation"
    [     5.772]    compiled for 1.19.6, module version = 1.1.0
    [     5.772]    ABI class: X.Org ANSI C Emulation, version 0.4
    [     5.772] (II) UnloadModule: "vesa"
    [     5.772] (II) Unloading vesa
    [     5.772] (==) Depth 24 pixmap format is 32 bpp
    [     5.772] (II) FBDEV(0): FBIOBLANK: Invalid argument (Screen blanking not supported by kernel - disabling)
    [     5.773] (==) FBDEV(0): Backing store enabled
    [     5.773] (==) FBDEV(0): DPMS enabled
    [     5.773] (==) RandR enabled
    [     5.774] (II) SELinux: Disabled on system
    [     5.775] (II) AIGLX: Screen 0 is not DRI2 capable
    [     5.775] (EE) AIGLX: reverting to software rendering
    

    Edit 6 Still not resolved for me. One intermittent delay today. Looked into dmesg

    # dmesg | grep nvidia
    [    2.391066] nvidia: loading out-of-tree module taints kernel.
    [    2.391070] nvidia: module license 'NVIDIA' taints kernel.
    [    2.393241] nvidia: module verification failed: signature and/or required key missing - tainting kernel
    [    2.397378] nvidia-nvlink: Nvlink Core is being initialized, major device number 240
    [    2.397558] nvidia 0000:01:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=io+mem
    [    2.398536] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  396.24  Wed Apr 25 23:54:18 PDT 2018
    [    2.399519] [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
    [    2.399519] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:01:00.0 on minor 0
    [    4.259151] nvidia-uvm: Loaded the UVM driver in 8 mode, major device number 238
    [    7.067363] nvidia-modeset: Allocated GPU:0 (GPU-2299f1b5-2a33-6f69-67d2-919f812a967a) @ PCI:0000:01:00.0
    

    Edit 7 Yesterday got one Comment from "Organic Marble" - I thought let me try during the weekend. But before starting as a good practice - i wanted to record my current state and issued these commands:

    ashu# lspci -k | grep -EA2 'VGA|3D'
    01:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] (rev a1)
        Subsystem: Dell GP106 [GeForce GTX 1060 6GB]
        Kernel driver in use: nvidia
    

    My /etc/default/grub has

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
    
    /var/log# cat gpu-manager.log
    log_file: /var/log/gpu-manager.log
    last_boot_file: /var/lib/ubuntu-drivers-common/last_gfx_boot
    new_boot_file: /var/lib/ubuntu-drivers-common/last_gfx_boot
    can't access /opt/amdgpu-pro/bin/amdgpu-pro-px
    Looking for nvidia modules in /lib/modules/4.15.0-22-generic/updates/dkms
    Found nvidia module: nvidia.ko
    Looking for amdgpu modules in /lib/modules/4.15.0-22-generic/updates/dkms
    Is nvidia loaded? yes
    Was nvidia unloaded? no
    Is nvidia blacklisted? no
    Is intel loaded? yes
    Is radeon loaded? no
    Is radeon blacklisted? no
    Is amdgpu loaded? no
    Is amdgpu blacklisted? no
    Is amdgpu versioned? no
    Is amdgpu pro stack? no
    Is nouveau loaded? no
    Is nouveau blacklisted? yes
    Is nvidia kernel module available? yes
    Is amdgpu kernel module available? no
    Vendor/Device Id: 8086:3e92
    BusID "PCI:0@0:2:0"
    Is boot vga? no
    Vendor/Device Id: 10de:1c03
    BusID "PCI:1@0:0:0"
    Is boot vga? yes
    Skipping "/dev/dri/card0", driven by "i915"
    Skipping "/dev/dri/card1", driven by "nvidia-drm"
    Skipping "/dev/dri/card0", driven by "i915"
    Skipping "/dev/dri/card1", driven by "nvidia-drm"
    Skipping "/dev/dri/card0", driven by "i915"
    Skipping "/dev/dri/card1", driven by "nvidia-drm"
    Found "/dev/dri/card0", driven by "i915"
    Number of connected outputs for /dev/dri/card0: 0
    Does it require offloading? no
    last cards number = 2
    Has amd? no
    Has intel? yes
    Has nvidia? yes
    How many cards? 2
    Has the system changed? No
    Unsupported discrete card vendor: 8086
    Nothing to do
    
    
    
    
     root@ashu-XPS-8930:/var/log# lshw -c video 2>&1 | grep driver
               configuration: driver=nvidia latency=0
               configuration: driver=i915 latency=0
    
    root@ashu-XPS-8930:/var/log# dmesg | grep nvidia
    [    2.438396] nvidia: loading out-of-tree module taints kernel.
    [    2.438399] nvidia: module license 'NVIDIA' taints kernel.
    [    2.440419] nvidia: module verification failed: signature and/or required key missing - tainting kernel
    [    2.444471] nvidia-nvlink: Nvlink Core is being initialized, major device number 240
    [    2.444631] nvidia 0000:01:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=io+mem
    [    2.449781] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  396.24.02  Thu May 24 03:44:56 PDT 2018
    [    2.450402] [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
    [    2.450403] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:01:00.0 on minor 1
    [    4.272315] nvidia-uvm: Loaded the UVM driver in 8 mode, major device number 238
    [    7.201052] nvidia-modeset: Allocated GPU:0 (GPU-2299f1b5-2a33-6f69-67d2-919f812a967a) @ PCI:0000:01:00.0
    

    And additional drivers also says the same.

    Yes, it's fixed but how and when? I have no idea? Thanks everybody for your help and suggestions.

    Edit 8 Was able to fix on my Dell XPS 9560 laptop also. One should check this file:

    /etc/modprobe.d/disable-nouveau.conf
    blacklist nouveau
    blacklist vga16fb
    blacklist rivafb
    blacklist nvidiafb
    blacklist rivatv
    blacklist amd76_edac
    options nouveau modeset=0
    
    • Organic Marble
      Organic Marble about 6 years
      To kill the nouveau driver you could do the steps in the middle of this webpage starting with sudo su - adufray.com/blog/2018/06/02/nvidia-304-127-on-bionic and ending with reboot. This procedure worked for me when manually installing a driver.
    • Ashu
      Ashu about 6 years
      @OrganicMarble. thanks I will try and will let you know.
    • Organic Marble
      Organic Marble about 6 years
      Glad you got it sorted!
    • Maniacal Science
      Maniacal Science over 5 years
      Ubuntu should probably warn users more directly -- if you have UEFI secure boot enabled, you can't install the proprietary NVIDIA drivers. Google UEFI secure boot and mokutil.
  • Ashu
    Ashu about 6 years
    Thanks..getting the error while installing nvidia-driver-396
  • Luis Alvarado
    Luis Alvarado about 6 years
    Hi @Ashu the error you mentioned is because you previously tried to install either another package for nvidia or a similar one. My recommendation is to install Ubuntu from scratch again instead of chasing into what happened there (To save you time of course).
  • Ashu
    Ashu about 6 years
    Hi @Luis - i didn't tried any other than nvidia-390...hate to install linux all over again...any other tip?
  • Luis Alvarado
    Luis Alvarado about 6 years
    @Ashu I have other tips but you would spend more time doing that, that installing Ubuntu. Also pin pointing the issue would be too long to track. This is because the error is very general so I have about 5 ideas but to save us time, best solution is to start ubuntu over from scratch.
  • Ashu
    Ashu about 6 years
    how to install Ubuntu all over again on the already installed Ubuntu along side Windows? Haven't done that recently and that's why somewhat nervous to do that.
  • Ashu
    Ashu about 6 years
    this issue happened on my Dell XPS 15 - 9560 laptop also(Nvidia 1050) which is totally fresh install of Ubuntu 18.04 LTS...i tried re-installing ubuntu 18.04...well it's not smooth...i have the delete the previous one manually and going thru all the painful process. Seems like ubuntu 18.04 is not that stable and there is a lot of pain for nividia drivers.
  • Ashu
    Ashu about 6 years
    thanks for your answer...unfortunately not working in my case.
  • Ashu
    Ashu about 6 years
    This one is good but i am still seeing nouveau kernel driver. lspci -k | grep -EA2 'VGA|3D' 01:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] (rev a1) Subsystem: Dell GP106 [GeForce GTX 1060 6GB] Kernel driver in use: nouveau. How you fixed it?
  • cmak.fr
    cmak.fr about 6 years
    With 18.04 there no need to apt update while add-apt have it done
  • Ashu
    Ashu about 6 years
    can you verify which driver is in use?
  • alvarlagerlof
    alvarlagerlof almost 6 years
    Purgeing the drivers always break everything for me. I get locked to 640x480 on my 4k monitor every time.
  • Aaron Franke
    Aaron Franke almost 6 years
    When I run sudo apt install nvidia-driver-396 I get The following packages have unmet dependencies: nvidia-driver-396 : Depends: libnvidia-gl-396 (= 396.54-0ubuntu0~gpu18.04.1) but it is not going to be installed
  • Aaron Franke
    Aaron Franke almost 6 years
    sudo apt install nvidia-kernel-source-396 fixed the problem for me, thanks!
  • Cornea Valentin
    Cornea Valentin over 5 years
    sudo apt purge 'nvidia.*' << this will remove a lot things not only driver. For example cuda and so go on
  • dannyman
    dannyman over 5 years
    This pattern works for 418 as well.