Debian – Why does the server boot the old debian kernel

debiankernellinux-kernelupgradexen

I got a vServer with Debian installed (important because I have no idea of how Debian was installed and/or built). Output of ~# uname -r: 2.6.26-2-xen-amd64.

After execution of (first some other version 3.2 kernel installations and then) ~# apt-get install xen-linux-system-3.2.0-4-amd64 and preceding ~# update-grub and ~# reboot the kernel version seems to be unchanged. Why?

~# dpkg -l | grep xen gives (reformatted):

libxen-4.1 (4.1.4-2)
libxenstore3.0 (4.1.4-2)
xen-hypervisor-4.1-amd64 (4.1.4-2)
xen-linux-system-3.2.0-4-amd64 (3.2.35-2)
xen-system-amd64 (4.1.4-2)
xen-utils-4.1 (4.1.4-2)
xen-utils-common (4.1.4-2)
xenstore-utils (4.1.4-2)

~# cat /boot/grub/grub.cfg gives:

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  load_env
fi
set default="0"
if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}

function load_video {
  insmod vbe
  insmod vga
  insmod video_bochs
  insmod video_cirrus
}

insmod ext2
set root='(/dev/hda1)'
search --no-floppy --fs-uuid --set=root 5c2c9779-894e-4dfc-9707-9fecdbc085c5
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=640x480
  load_video
  insmod gfxterm
  insmod ext2
  set root='(/dev/hda1)'
  search --no-floppy --fs-uuid --set=root 5c2c9779-894e-4dfc-9707-9fecdbc085c5
  set locale_dir=($root)/boot/grub/locale
  set lang=de_DE@euro
  insmod gettext
fi
terminal_output gfxterm
set timeout=5
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux, mit Linux 3.2.0-4-amd64' --class debian --class gnu-linux --class gnu --class os {
    load_video
    insmod gzio
    insmod ext2
    set root='(/dev/hda1)'
    search --no-floppy --fs-uuid --set=root 5c2c9779-894e-4dfc-9707-9fecdbc085c5
    echo    'Linux 3.2.0-4-amd64 wird geladen ...'
    linux   /boot/vmlinuz-3.2.0-4-amd64 root=UUID=5c2c9779-894e-4dfc-9707-9fecdbc085c5 ro  quiet
    echo    'Initiale Ramdisk wird geladen ...'
    initrd  /boot/initrd.img-3.2.0-4-amd64
}
menuentry 'Debian GNU/Linux, mit Linux 3.2.0-4-amd64 (Wiederherstellungsmodus)' --class debian --class gnu-linux --class gnu --class os {
    load_video
    insmod gzio
    insmod ext2
    set root='(/dev/hda1)'
    search --no-floppy --fs-uuid --set=root 5c2c9779-894e-4dfc-9707-9fecdbc085c5
    echo    'Linux 3.2.0-4-amd64 wird geladen ...'
    linux   /boot/vmlinuz-3.2.0-4-amd64 root=UUID=5c2c9779-894e-4dfc-9707-9fecdbc085c5 ro single 
    echo    'Initiale Ramdisk wird geladen ...'
    initrd  /boot/initrd.img-3.2.0-4-amd64
}
menuentry 'Debian GNU/Linux, mit Linux 3.2.0-0.bpo.4-amd64' --class debian --class gnu-linux --class gnu --class os {
    load_video
    insmod gzio
    insmod ext2
    set root='(/dev/hda1)'
    search --no-floppy --fs-uuid --set=root 5c2c9779-894e-4dfc-9707-9fecdbc085c5
    echo    'Linux 3.2.0-0.bpo.4-amd64 wird geladen ...'
    linux   /boot/vmlinuz-3.2.0-0.bpo.4-amd64 root=UUID=5c2c9779-894e-4dfc-9707-9fecdbc085c5 ro  quiet
    echo    'Initiale Ramdisk wird geladen ...'
    initrd  /boot/initrd.img-3.2.0-0.bpo.4-amd64
}
menuentry 'Debian GNU/Linux, mit Linux 3.2.0-0.bpo.4-amd64 (Wiederherstellungsmodus)' --class debian --class gnu-linux --class gnu --class os {
    load_video
    insmod gzio
    insmod ext2
    set root='(/dev/hda1)'
    search --no-floppy --fs-uuid --set=root 5c2c9779-894e-4dfc-9707-9fecdbc085c5
    echo    'Linux 3.2.0-0.bpo.4-amd64 wird geladen ...'
    linux   /boot/vmlinuz-3.2.0-0.bpo.4-amd64 root=UUID=5c2c9779-894e-4dfc-9707-9fecdbc085c5 ro single 
    echo    'Initiale Ramdisk wird geladen ...'
    initrd  /boot/initrd.img-3.2.0-0.bpo.4-amd64
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
submenu "Xen 4.1-amd64" {
menuentry 'Debian GNU/Linux, mit Xen 4.1-amd64 und Linux 3.2.0-4-amd64' --class debian --class gnu-linux --class gnu --class os --class xen {
    insmod ext2
    set root='(/dev/hda1)'
    search --no-floppy --fs-uuid --set=root 5c2c9779-894e-4dfc-9707-9fecdbc085c5
    echo    'Xen 4.1-amd64 wird geladen ...'
    multiboot   /boot/xen-4.1-amd64.gz placeholder  
    echo    'Linux 3.2.0-4-amd64 wird geladen ...'
    module  /boot/vmlinuz-3.2.0-4-amd64 placeholder root=UUID=5c2c9779-894e-4dfc-9707-9fecdbc085c5 ro  quiet
    echo    'Initiale Ramdisk wird geladen ...'
    module  /boot/initrd.img-3.2.0-4-amd64
}
menuentry 'Debian GNU/Linux, mit Xen 4.1-amd64 und Linux 3.2.0-4-amd64 (Wiederherstellungsmodus)' --class debian --class gnu-linux --class gnu --class os --class xen {
    insmod ext2
    set root='(/dev/hda1)'
    search --no-floppy --fs-uuid --set=root 5c2c9779-894e-4dfc-9707-9fecdbc085c5
    echo    'Xen 4.1-amd64 wird geladen ...'
    multiboot   /boot/xen-4.1-amd64.gz placeholder 
    echo    'Linux 3.2.0-4-amd64 wird geladen ...'
    module  /boot/vmlinuz-3.2.0-4-amd64 placeholder root=UUID=5c2c9779-894e-4dfc-9707-9fecdbc085c5 ro single 
    echo    'Initiale Ramdisk wird geladen ...'
    module  /boot/initrd.img-3.2.0-4-amd64
}
menuentry 'Debian GNU/Linux, mit Xen 4.1-amd64 und Linux 3.2.0-0.bpo.4-amd64' --class debian --class gnu-linux --class gnu --class os --class xen {
    insmod ext2
    set root='(/dev/hda1)'
    search --no-floppy --fs-uuid --set=root 5c2c9779-894e-4dfc-9707-9fecdbc085c5
    echo    'Xen 4.1-amd64 wird geladen ...'
    multiboot   /boot/xen-4.1-amd64.gz placeholder  
    echo    'Linux 3.2.0-0.bpo.4-amd64 wird geladen ...'
    module  /boot/vmlinuz-3.2.0-0.bpo.4-amd64 placeholder root=UUID=5c2c9779-894e-4dfc-9707-9fecdbc085c5 ro  quiet
    echo    'Initiale Ramdisk wird geladen ...'
    module  /boot/initrd.img-3.2.0-0.bpo.4-amd64
}
menuentry 'Debian GNU/Linux, mit Xen 4.1-amd64 und Linux 3.2.0-0.bpo.4-amd64 (Wiederherstellungsmodus)' --class debian --class gnu-linux --class gnu --class os --class xen {
    insmod ext2
    set root='(/dev/hda1)'
    search --no-floppy --fs-uuid --set=root 5c2c9779-894e-4dfc-9707-9fecdbc085c5
    echo    'Xen 4.1-amd64 wird geladen ...'
    multiboot   /boot/xen-4.1-amd64.gz placeholder 
    echo    'Linux 3.2.0-0.bpo.4-amd64 wird geladen ...'
    module  /boot/vmlinuz-3.2.0-0.bpo.4-amd64 placeholder root=UUID=5c2c9779-894e-4dfc-9707-9fecdbc085c5 ro single 
    echo    'Initiale Ramdisk wird geladen ...'
    module  /boot/initrd.img-3.2.0-0.bpo.4-amd64
}
}
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###

Best Answer

In accord with EEAA's and Tim Haegele's comments (not answers so they can't get reputation for it, sorry), it was the VM host which was configured for a specific kernel version. Sadly I could not get my provider to change that, now I had instead to downgrade my Debian from Sid to Lenny (which is not possible and led to restoring the backup) but that is another story.

Related Topic