Ubuntu – How to install Nvidia drivers on Ubuntu 18.04 with secure boot


Yesterday, I tried to upgrade my version of Ubuntu from 17.10* to 18.04 LTS. The update has been achieved correctly except for some elements.

One of these elements is the installation of Nvidia drivers with secure boot.

I tried several things to install nvidia drivers (version 396) with secure boot but it seems that it is not working at the moment…

Finally, I found a workaround: I disabled secure boot. But this is just a trick to solve the problem of the nvidia driver installation…

So I want to know if it is possible to have nvidia drivers working with secure boot.

The procedure that I used when secure boot is activated (Which does not work):

Commands used for the installation:

sudo apt update
sudo apt upgrade
sudo ubuntu-drivers autoinstall

During the installation process when secure boot is enabled the installation phase is stuck with MOK private key. a trick to overcome that is explained in this thread.

But for me, the solution does not work. So I need to interrupt the script and run the update & software application. After a while, a dialogue box appears asking me a password for MOK key.

So I complete the dialogue box and reboot the PC but when secure boot is enabled, the x server settings are still empty.

Thanks in advance for your answers.

Best Answer

My steps to make it work with secure boot were as follows:

When I was installing Ubuntu 18.04.1, when I reached the "updates and other software stage" in the installation, there was an option to set a password for secure boot, so I went ahead and enabled the check box and entered a new password for secure boot.

Later on after the installation, when I wanted to install Nvidia drivers, I did the following:

Standard Ubuntu procedure:

sudo apt-get update
sudo apt-get upgrade
  1. Add the Official Nvidia PPA to Ubuntu

    sudo add-apt-repository ppa:graphics-drivers/ppa
  2. Update and upgrade again

    sudo apt-get update
    sudo apt-get upgrade
  3. I checked which was the recommended driver for my GPU via the command:

    ubuntu-drivers devices
  4. I opened "Software & Updates" and clicked the "Additional Drivers" tab, I then chose the recommended driver and clicked "Apply Changes", while the driver was installing somewhere in the middle it prompted me for secure boot password, that it when I entered the password I set up when I was installing Ubuntu, after it finished applying I restarted my device, when it was rebooting a blue menu appeared asking to press any key, I pressed then a menu labeled as "Perform MOK Management" appeared, there were the following four options:

    1. Continue boot
    2. Enroll Key
    3. Enroll Key from Disk
    4. Enroll Key from Hash

I chose option number 2, then I continued to boot, it finally worked, I went to Ubuntu settings->Details and my Graphic Card name was shown correctly.