Ubuntu update locks up computer

I am running Linux Ubuntu 20.04 on a System 76 standalone Desktop computer - 64bit with a Intel processor. I attempted to install ubuntu - focal software updates, but the updates never completed and locked up my computer. After 24 hours, I had to reboot my computer. After re-booting, my desktop appeared, displaying my favorites along the left side of the screen. I can run “Calculator”, “Solitaire”, “ScreenShot” “Gedit text editor” and open a terminal. When I try to open “Thunderbird”, “Firefox”, and any LibreOffice software, none of these open. I tried to open both Thunderbird and Firefox via the command line withot sucess. Furthermore, when I mouse click anywhere on the desktop, my screen turns black and the computer reboots. I tried re-installing Thunderbird and Firefox without sucess. Has anyone seen this behavior before; how can it be fixed?

Never seen this before. If I were you, I’d install XUbuntu 20.04 (i.e. format the partition and then install XUbuntu on it), because it’s more compatible.

If the problem persisted, I’d then add the nomodeset option to GRUB, as explained here, and see what happens.

If your GPU (graphics processing unit a.k.a. “graphics board”) happens to be NVidia, maybe (X)Ubuntu is running the problematic nouveau kernel module (device driver). You may disable it by following the instructions presented here.

Thanks for the Info.

No problem. I hope this helps. :v:t2:

@ButchS I forgot to ask if you added the System 76 driver repos to Ubuntu. If not, these are the required commands to run:

Add the System 76 PPA (repository) to Ubuntu:

sudo apt-add-repository ppa:system76-dev/stable

Install the System 76 driver:

sudo apt update ; sudo apt install system76-driver -y

If your System 76 machine has a NVIDIA GPU, you also need to manually install the closed source drivers for your GPU by running this command:

sudo apt install system76-driver-nvidia

PS: info retrieved from System 76’s website.

Yuri - The GUI to my Firefox web browser does not work, Can I install XUbuntu20.04 from the command line?

Yup, here’s how:

  • Download the 64-bit XUbuntu ISO and save it in /tmp as xubuntu.iso by running this terminal command:

    wget http://mirror.us.leaseweb.net/ubuntu-cdimage/xubuntu/releases/20.04/release/xubuntu- -O /tmp/xubuntu.iso

    The download server above is a mirror server located in the US. The following commands download the ISO from a mirror located in…

    • Australia:

      wget http://mirror.aarnet.edu.au/pub/xubuntu/releases/20.04/release/xubuntu- -O /tmp/xubuntu.iso
    • Germany:

      wget http://ftp.uni-kl.de/pub/linux/ubuntu-dvd/xubuntu/releases/20.04/release/xubuntu- -O /tmp/xubuntu.iso
    • Japan:

      wget http://ubuntutym2.u-toyama.ac.jp/xubuntu/20.04/release/xubuntu- -O /tmp/xubuntu.iso

After the download of the ISO file is finished…

  • If you intend to burn the ISO into an empty/blank writeable DVD disc, install growisofs by running:

    sudo apt install growisofs -y

    …then insert your empty DVD disc in the DVD drive/writer and run this command:

    growisofs -dvd-compat -Z /dev/sr0=/tmp/xubuntu.iso

    …or this command:

    growisofs -dvd-compat -Z /dev/dvdrw=/tmp/xubuntu.iso

    …and then reboot the system when the burning is done, so you can boot from such DVD and install XUbuntu:


    (other valid reboot comands are sudo init 6, sudo telinit 6 and sudo shutdown -r now)

  • If you intend to record the ISO file in a USB flash drive, connect such flash drive to a USB port and then run this command in order to find its device file:

    df |grep -i `whoami`

    If such command doesn’t help you, run lsblk to find it. E.g. /dev/sdb (the USB flash drive device) and /dev/sdb1 (its first partition). From now on I will presume that your flash drive is indeed the device linked to /dev/sdb and that it has only 1 primary partition (i.e. /dev/sdb1).

    The next step is to unmount your flash drive’s mounted partition:

    sudo umount /dev/sdb1

    …and then format it as FAT 32:

    sudo mkfs.vfat /dev/sdb1

    Check if the formatting was successful:

    sudo fsck /dev/sdb1

    If the answer of fsck is 0 files (i.e. no errors found), then use the dd command to record the content of the ISO file into the USB flash drive:

    sudo dd bs=4M if=/tmp/xubuntu.iso of=/dev/sdb conv=fdatasync status=progress

    Once the recording process is completed, restart the computer and then boot from the USB flash drive so you can install XUbuntu.

Thanks Yuri. I’ll let you know the outcome!

Fingers crossed. :slightly_smiling_face::crossed_fingers:t2:

I get the following error:
libdvd-pkg: apt-get check failed, you may have broken packages. Aborting…

Try fixing it with this:

sudo dpkg-reconfigure libdvd-pkg

If it doesn’t work, remove libdvd-pkg and see how it goes:

sudo apt remove libdvd-pkg ; sudo apt update ; sudo apt-get check ; sudo apt dist-upgrade -y

I did your suggested commands and now I get:
2021-04-13 17:16:56 ERROR 404: Not Found

This is very a weird error. Makes me wonder about who could be the culprit. I think these are the most likely ones to blame:

  1. Your computer’s primary mass storage media device (i.e. HD / hard disk, or SSD / solid state drive) is damaged.

  2. Your System 76’s hardware is too customized – to the extreme that it requires specific device drivers that however are not available in the Ubuntu repos(itories) of DEB packages. Hence, your HD/SSD isn’t damaged, but you need to manually add a repo that is specific for System 76 machines (i.e. a repo that provides DEB packages that provide the required device drivers and other specific resources). The missing device drivers may be causing misbehaviors in both your machine’s GPU (thus the issues with the GUI / graphical user interface) and your machine’s HD/SSD (thus the issues with file management and package installation).

I can’t be sure, but it seems that these are the most likely causes (simultaneously or not).

Well, let’s put libdvd-pkg back:

sudo apt install libdvd-pkg -y --reinstall

We have to make sure that your main list of PPAs (Ubuntu’s repositories) is coherent. First, lets access the /etc/apt directory and create a backup of the main PPA list:

cd /etc/apt ; sudo mv sources.list sources.list.backup

The next step is to create a new sources.list file in /etc/apt by copying the long text below, then pasting it in the command line (use Ctrl V i.e. Ctrl Shift V in order to paste the copied text into the terminal) and then hitting Enter (the code below is exactly the content of my own sources.list file. I’m using 64-bit XUbuntu 20.04):

echo "# Packages
deb http://archive.ubuntu.com/ubuntu focal main multiverse restricted universe
deb http://archive.ubuntu.com/ubuntu focal-updates main multiverse restricted universe
deb http://archive.ubuntu.com/ubuntu focal-backports main multiverse restricted universe
deb http://archive.canonical.com/ubuntu/ focal partner
deb http://security.ubuntu.com/ubuntu/ focal-security main multiverse restricted universe

# Development packages
deb-src http://archive.ubuntu.com/ubuntu focal main multiverse restricted universe
deb-src http://archive.ubuntu.com/ubuntu focal-updates main multiverse restricted universe
deb-src http://archive.ubuntu.com/ubuntu focal-backports main multiverse restricted universe
deb-src http://archive.canonical.com/ubuntu/ focal partner
deb-src http://archive.ubuntu.com/ubuntu focal-security main multiverse restricted universe" | sudo tee /etc/apt/sources.list

The command above is very long, but it will create /etc/apt/sources.list strictly with the required official (X)Ubuntu repositories.

The next step is to add System 76’s repository of customized DEB packages:

sudo apt-add-repository -y ppa:system76-dev/stable

We need to make System 76’s repository the default/preferrable/priority one. This is the command that you need to execute in order to achieve that:

echo "Package: *
Pin: release o=LP-PPA-system76-dev-stable
Pin-Priority: 1001

Package: *
Pin: release o=LP-PPA-system76-dev-pre-stable
Pin-Priority: 1001" | sudo tee /etc/apt/preferences.d/system76

The command above will create /etc/apt/preferences.d/system76 (i.e. the file system76 in /etc/apt/preferences.d/) and then paste all that code into it.

Now we need to update APT so these changes take effect:

sudo apt update ; sudo apt-get check

If the command above does not return any error, it’s time to install the System 76 driver package:

sudo apt install system76-driver -y

…but if that command returned an error, then, instead of trying to install the System 76 driver package, run these other commands (their intent is to fix the APT database):

sudo apt clean
sudo apt update -m
sudo apt autoremove --purge
sudo dpkg --configure -a
sudo apt install -f
sudo apt full-upgrade


  • clean cleans the APT cache, so broken cached packages are deleted and therefore APT has to download new (functional) ones in case you tell APT to (re)install them
  • update -m updates the APT cache ignoring missing packages (it circumvents this type of issue so you can proceed in your attempt to fix everything else that is problematic)
  • autoremove --purge uninstalls unecessary packages that are currently installed
  • --configure -a asks DPKG to reconfigure the entire database of DEB packages
  • install -f forcefully tries to fix broken installations, and
  • full-upgrade benefits from the recently added System 76 repository in order to upgrade the system with the System 76-specific packages

Next, once again try to install the System 76 driver package:

sudo apt install system76-driver -y

After installing this package, run APT’s full upgrade again:

sudo apt full-upgrade

If after all this you still get errors, it’s time to contact System 76’s support and submit them a ticket with a link to this thread so they have a more contextualized understanding of what you’re experiencing and what you’ve done so far in an attempt to fix the issue. They likely know what peculiarities in a System 76 hardware usually prevent the user from getting a fully functional O.S. and machine after installing Ubuntu.

Yuri I get “E: Invalid operation check”

My bad: the correct is sudo apt-get check. I’m gonna fix my previus reply.