0

Following my Debian upgrade from Wheezy to Jessie, I wanted to upgrade to Buster while I'm at it.

I have updated my sources.list file to use "buster":

cat /etc/apt/sources.list
deb http://ftp.fr.debian.org/debian/ buster main contrib non-free

Then I did an apt-get update && upgrade then dist-upgrade, which failed midway because my kernel wasn't up to date and libc6 really wants at least a 3.2 kernel.

os-release tells me I'm on Buster.

cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian

But my kernel seems very old:

uname -a
Linux vps54085 2.6.32-042stab127.2 #1 SMP Thu Jan 4 16:41:44 MSK 2018 x86_64 GNU/Linux

apt-cache search linux-image gives me a bunch of 4.19 images.

Now, I tried apt-get install linux-image-amd64 but it fails because it's trying to upgrade libc6

You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
libc-dev-bin : Depends: libc6 (> 2.28) but 2.19-18+deb8u10 is to be installed
Recommends: manpages-dev but it is not going to be installed
libc6-dev : Depends: libc6 (= 2.28-10) but 2.19-18+deb8u10 is to be installed
linux-image-amd64 : Depends: linux-image-4.19.0-5-amd64 but it is not going to be installed
locales : Depends: libc-bin (> 2.28) but 2.19-18+deb8u10 is to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

The suggested apt-get -f install just retries installing libc6 (which fails because of the kernel).

I found posts telling to run dpkg --configure -a but it fails on locales:

dpkg: dependency problems prevent configuration of locales:
locales depends on libc-bin (>> 2.28); however:
Version of libc-bin on system is 2.19-18+deb8u10.
dpkg: error processing package locales (--configure):
dependency problems - leaving unconfigured
Errors were encountered while processing:
locales

And ls /var/cache/apt/archives/partial/ tells me this folder is empty.

I've also tried forcing the install of a previous version of libc6 but it's a mess of dependencies.

So, how do I rollback my apt-get upgrade so I can update my kernel?

2 Answers 2

2

Your VPS is a container on OpenVZ, running a kernel which you can’t upgrade (it’s not inside your VPS). You’ll have to ask your provider how to proceed, starting with whether Debian 10 is supported at all. See Why is my CentOS 7.4 on kernel 2.6.32?.

apt-get doesn’t support rolling upgrades back. It might be possible to downgrade all the packages manually, but it’s unlikely that this will be any easier than starting from scratch.

2
  • Oh :( Thanks, I'll try to find a more up-to-date VPS provider then.
    – thomasb
    Jul 11, 2019 at 20:47
  • 1
    I have created a solution for myself by porting the 2.6.32 kernel compatibility code from glibc v2.25, which is the last version that supported the 2.6.32 kernel, to glibc v2.28 which is the version Debian 10 and CentOS 8 use. It's just a few files and a few lines of code that needs to be changed. It should also work on CenOS 8. If there is enough interest maybe I will make it public eventually after more testing.
    – fred
    Dec 9, 2019 at 0:07
1

Developers chose to remove support for the 2.6.32 kernel in newer versions of official glibc.

You can try this solution which is an unofficial version of glibc that puts 2.6.32 kernel compatibility back in and includes premade OVZ6 templates.

https://github.com/sdwru/glibc-debian-10/releases

https://github.com/sdwru/glibc-centos-8/releases

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .