Update errors including unmet dependencies

Ubuntu 22.04 on Del Latitude E5570 laptop.

A rather long warning notice appeared this morning, the upshot being that “my installed packages have unmet dependencies”.
So I performed and update and upgrade which told me about some errors and recommended that I run “sudo ap-get update --fix-missing” option. I did this with a much improved result.

This Update command ended with these lines:

N: Repository ‘Index of /ubuntu jammy-updates InRelease’ changed its ‘Suite’ value from ‘jammy-backports’ to ‘jammy-updates’
E: Repository ‘Index of /ubuntu jammy-updates InRelease’ changed its default priority for apt_preferences(5) from 100 to 500.
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.
N: Repository ‘Index of /ubuntu jammy-security InRelease’ changed its ‘Suite’ value from ‘jammy-backports’ to ‘jammy-security’
E: Repository ‘Index of /ubuntu jammy-security InRelease’ changed its default priority for apt_preferences(5) from 100 to 500.
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.
N: Skipping acquisition of configured file ‘main/binary-i386/Packages’, as repository ‘https://brave-browser-apt-release.s3.brave.com stable InRelease’ doesn’t support architecture ‘i386’
W: http://linux.dropbox.com/ubuntu/dists/disco/Release.gpg: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.

Following a change by the s/w suppliers, some things need to be changed explicitly by the user, but without any advice on how to do that. Perhaps someone could advise me. I was confused by the reference to i386 architecture as this laptop is i486 (I thought).
And I am not sure about the keyring reference.

Then “sudo apt-get upgrade --fix missing” went well but with these lines at the end:

Setting up gnome-control-center (1:41.7-0ubuntu0.22.04.9) …
E: Failed to fetch http://gb.archive.ubuntu.com/ubuntu/pool/main/l/linux/linux-libc-dev_5.15.0-126.136_amd64.deb 404 Not Found [IP: 185.125.190.81 80]

The laptop appears to be working OK, but if I let these errors accumulate I guess I will be in trouble eventually. Any help and advice would be appreciated.
And a Happy New Year to all my readers!
Keith

Hi, so where to start … Happy New Year! :tada:

Heh, so you thought the warning was long, just wait for the explanation :wink:

So, first thought is that you really need to be in 24.04 as this upgrade in itself is likely to fix 90%+ of problems like this.

The info lines listed, this is just “housekeeping”, doesn’t look like anything to worry about. With regards to i386/i486, someone correct me if I’m wrong, but as I understand this, x86 binaries (subject to shared libraries) should still run on AMD64 architecture. So whereas you can’t run an AMD64 binary on an x86 system, a statically linked x86 binary should be portable across architectures. As a result (historically) some vendors decided to maintain and distribute x86 binaries which would work generically across multiple architectures, albeit a little less efficient than they could be when running on AMD64. Cuts down on maintaining multiple distributions and on people needing to know which architecture they have before downloading the “right” binary.

(From a support perspective, the question “what Operating System do you have” can sometimes be challenging, let alone “what is your CPU architecture?”)

Anyway, this is why you can still see i386 references, particularly in the case of third-party / potentially non-free distributed software.

In terms of keyrings, all Linux software publishers are required to sign packages, so when you install them the system can compare the signature against the “known” signature of the author to make sure the copy it just downloaded did actually come from the real author, as opposed to a copy some miscreant has modified and added malware to. Distributions maintain lists of keys (which are stores on keyrings) of verified software publishers, which will be installed on your machine so your machine can perform validation checks when you run “apt”.

Keys can expire periodically, which means software authors need to add news ones and verify them. If they don’t, you might end up with a package on your system whose authenticity can’t be verified because the publisher key on your keyring (which comes from your distribution) doesn’t match the key used to sign the package. This should generate a warning, and to be safe, you shouldn’t install the package as it’s a sign of potential tampering … or … sign the package isn’t being maintained as agressively as maybe it should.

So for gnome-control-center , I’d try an apt get update again, then see if it does anything different. It could be that one of the fixes that worked changed the dependency tree, in which case the version (for example) of gnome-control-center could have changed and become valid. If it still fails, then it looks like the Ubuntu repo is broken, which doesn’t happen all that often. But in this instance, the easy fix is do-release-upgrade (on Ubuntu, from memory).

Hi MP - and a very Happy New Year to you also.

Many thanks for your informative response. I’ve been having reminders to upgrade to 24.04 but keep postponing it until it’s likely to have all the bugs ironed out, which will have happened ages, of course.

A repeat update & upgrade shows the same behaviour so I shall upgrade now and report back.

Keith

Ah! Here’s the effect:

keith@E5570:~$ sudo do-release-upgrade
Checking for a new Ubuntu release
Please install all available updates for your release before upgrading.
keith@E5570:~$

So it still needs the unmet dependencies.

Mmm, if you do apt remove gnome-control-center, will it let you remove “just” that, or does it prompt you to remove the entire Gnome desktop?
If you can remove “just” that, it’s an easy answer.

Otherwise, you could try dpkg --remove gnome-control-center , once it’s gone, the system should be up-to-date and do-release-upgrade should work …

apt remove gnome-control-center seemed to work as a repeat command yielded:

keith@E5570:~$ sudo apt remove gnome-control-center
Reading package lists… Done
Building dependency tree… Done
Reading state information… Done
Package ‘gnome-control-center’ is not installed, so not removed
0 to upgrade, 0 to newly install, 0 to remove and 25 not to upgrade.
keith@E5570:~$

but sudo apt-get update still yields:

N: Repository ‘Index of /ubuntu jammy-updates InRelease’ changed its ‘Suite’ value from ‘jammy-backports’ to ‘jammy-updates’
E: Repository ‘Index of /ubuntu jammy-updates InRelease’ changed its default priority for apt_preferences(5) from 100 to 500.
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.
N: Skipping acquisition of configured file ‘main/binary-i386/Packages’, as repository ‘https://brave-browser-apt-release.s3.brave.com stable InRelease’ doesn’t support architecture ‘i386’
N: Repository ‘Index of /ubuntu jammy-security InRelease’ changed its ‘Suite’ value from ‘jammy-backports’ to ‘jammy-security’
E: Repository ‘Index of /ubuntu jammy-security InRelease’ changed its default priority for apt_preferences(5) from 100 to 500.
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.
W: http://linux.dropbox.com/ubuntu/dists/disco/Release.gpg: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.

and

keith@E5570:~$ sudo do-release-upgrade
Checking for a new Ubuntu release
Please install all available updates for your release before upgrading.
keith@E5570:~$

So I still need to accept explicitly the new “Suite values” and “apt_preferences” before I can upgrade.
It’s starting to look hard!

Did you do an “apt upgrade” before the “do-release-upgrade” ?

Yes - in that order.
Just now, apt update then apt upgrade (with the option “–fix-missing”) results as follows:

Err:1 Index of /ubuntu jammy-updates/main amd64 linux-libc-dev amd64 5.15.0-126.136
404 Not Found [IP: 185.125.190.82 80]
E: Failed to fetch http://gb.archive.ubuntu.com/ubuntu/pool/main/l/linux/linux-libc-dev_5.15.0-126.136_amd64.deb 404 Not Found [IP: 185.125.190.82 80]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

So a slight improvement.
Then:

keith@E5570:~$ sudo do-release-upgrade
Checking for a new Ubuntu release
Please install all available updates for your release before upgrading.
keith@E5570:~$

Ok, so as root, look in /etc/apt … probably sources.list … and the like with “jammy-updates”, you’re looking for “gb.archive.ubuntu.com”. Remove the gb. prefix so it reads “archive.ubuntu.com”. Then apt update and apt upgrade.

Looks like there is a problem with name resolution for you re; the Ubuntu (gb) server.

Alternatively, add a line to /etc/hosts;

91.189.91.83 gb.archive.ubuntu.com

Change all these? Just checking!
The commented-out lines don’t need to be changed, I know, but I would do that anyway to be systematic.

Mmm, looking on more detail, neither. It looks like something is dependent on this file, and the file available in the repo is one increment newer … I’m just so used to the “gb.” , being broken. Looks like they’re both out of sync with your install. So either your install is corrupt in some way, or the Ubuntu tree is corrupt.

Try to download this;

http://launchpadlibrarian.net/757526525/linux-libc-dev_5.15.0-126.136_amd64.deb

Which should be the version of the referenced missing file. Install with;

sudo apt install ./linux-libc-dev_5.15.0-126.136_amd64.deb
or 
sudo dpkg -i linux-libc-dev_5.15.0-126.136_amd64.deb

Then try an apt update, apt upgrade, do-release-upgrade …

Wonderful! It’s installing as I write. Apparently some parts of 3rd party s/w have been disabled and I’ll have to re-enable them - if necessary I’ll come back to you on that when things start to fail.
So far so good and I’ll report back when the installation has finished - several hours apparently, so probably tomorrow.

Mmm, some of the repo’s can be a little on the slow side … checkout the fibre deals that are kicking around now, in many cases they seem to be cheaper than the old copper offerings … just to get people to upgrade.

That’s true, but I need to install an underground pipe for the fibre first as I don’t want overhead fibre/copper damaged by my growing trees.
Re the installation: I pressed a wrong button at some point and have started again! Dimwit.

Oh dear!
Had to apt update --fix-missing, apt upgrade --fix-missing then apt --fix-broken install first then do-release-upgrade again.

The installation appeared to go well although I noticed many apparent error messages that flashed by. e.g.

Setting up snapd (2.66.1+24.04) …
snapd.failure.service is a disabled or a static unit not running, not starting it.
snapd.snap-repair.service is a disabled or a static unit not running, not starting it.

The last lines are:

Installing new version of config file /etc/ssh/moduli …
keith@E5570:~$

whereupon it just stopped.
“About this computer” tells me that I now have Version 24.04 installed so I am very hopeful.
Very many thanks for your great patience and encyclopaedic knowledge (as usual).

Keith

Mmm, there’s “errors” and “warnings” … I’m guessing if it didn’t stop they were warnings, which should be Ok … that said, I would’ve expected it to want a reboot when finished …

cat /etc/lsb-release

If this says “24.04” then it’s probably good, be interesting to see what an apt update / upgrade does now it’s finished …

Disaster! I’ll return after some essential domestic work.

When I rebooted, the system went into what appears to be the KDE plasma desktop overlaid with a s/w keyboard for entering password (I assume). But logging in just gets me back to that screen.
I did once manage to get a terminal but not again.
I plugged in a live MINT usb to see if I could access any files and this is the result:


You can see that it thinks there are no files in my home directory.

Using a terminal, I can cd to the pc’s 127GB volume:
mint@mint:~$ cd /media/mint/65edaa42-1455-4375-90ca-a18352f55b6e
…and list items:
mint@mint:/media/mint/65edaa42-1455-4375-90ca-a18352f55b6e$ ls
bin boot dev home lib.usr-is-merged lib64 lost+found mnt proc run sbin.usr-is-merged srv …etc.
I can cd to home but not to my home diresctory (keith):
mint@mint:/media/mint/65edaa42-1455-4375-90ca-a18352f55b6e$ cd home
mint@mint:/media/mint/65edaa42-1455-4375-90ca-a18352f55b6e/home$ cd keith
bash: cd: keith: Permission denied
mint@mint:/media/mint/65edaa42-1455-4375-90ca-a18352f55b6e/home$ sudo cd keith
sudo: cd: command not found
sudo: “cd” is a shell built-in command, it cannot be run directly.
sudo: the -s option may be used to run a privileged shell.
sudo: the -D option may be used to run a command in a specific directory.

But I can search my home directory:
mint@mint:/media/mint/65edaa42-1455-4375-90ca-a18352f55b6e$ sudo ls -1 home/keith
Desktop
Documents
Downloads
etc…
…and delve into the contents of directories. But I can’t access the contents of files. e.g.:
mint@mint:/media/mint/65edaa42-1455-4375-90ca-a18352f55b6e/home$ sudo ls keith/.bin/memlist
keith/.bin/memlist
mint@mint:/media/mint/65edaa42-1455-4375-90ca-a18352f55b6e/home$ cat keith/.bin/memlist
cat: keith/.bin/memlist: Permission denied
mint@mint:/media/mint/65edaa42-1455-4375-90ca-a18352f55b6e/home$ sudo cat keith/.bin/memlist
mint@mint:/media/mint/65edaa42-1455-4375-90ca-a18352f55b6e/home$ (no response)

Bizarrely, I can copy a file to another name and then delete it, but can’t open it. Trying to open it with office writer tells me that the file is corrupted beyond repair. So I have lost all my files - apart from my 30-day-old backup, which is not too bad.
Looks like I shall simply have to re-install Ubuntu from a live usb, and then the plethora of s/w that I had installed. Might be time to buy a better laptop anyway.

I await any comments that anyone might have.

Ok, so you’re booting from a live CD, and trying to look at your hard drive’s files when mounted under /media.

In order to see the files you will need to be “root”, so either do a “sudo su” (once) or prefix each command with a “sudo”, in order to bypass the “permission denied”.

There are lots of ways to recover the system and you will certainly be able to copy off any files you want to keep.

The easiest way to try to recover is to reboot the system and hit tab or esc when it’s coming up in order to get the boot menu. That should offer you either the option to boot a previous kernel, or to boot in safe or recovery mode.

What you’re looking for is to boot from the hard drive and get some sort of root console session, then try “apt update && apt upgrade” to see if it can “right” itself. The problem would seem to be that although it looked like it finished, it didn’t. If you can get it to finish, the cleanup might well fix it.

Failing that, you can boot from a live usb, then mount the root filesystem and a few other bits, then “chroot” to the device, then have a crack at “apt update && apt upgrade”.

This is very encouraging. Note, though that I did have to use sudo for some commands but not all, and even using sudo didn’t always work.
Anyway, I’ll have a go with your suggestions tomorrow night. I am spending the days removing a 40’ ft Scots pine branch that came down in the storm. It will take weeks to dispose of it!
Thank you for your advice.