I solved in the following way.
Firstly, I got the partitions' UUIDs:
/dev/vda1: UUID="1c698c6b-ace0-4021-8cf9-4c0ee7d5364e" TYPE="ext4" PARTUUID="55d1a726-01"
/dev/vda2: LABEL="swap" UUID="4c30643f-055d-4ad7-babc-b2a6b8ac3138" TYPE="swap" PARTUUID="55d1a726-02"
/dev/vdb1: LABEL="video" UUID="60b104ef-36ea-440f-806d-e9f71cff8732" TYPE="ext4" PARTUUID="c075fe69-01"
/dev/loop0: TYPE="squashfs"
/dev/loop1: TYPE="squashfs"
/dev/loop2: TYPE="squashfs"
/dev/loop4: TYPE="squashfs"
and checked the /boot
directory:
config-4.15.0-173-generic initrd.img-4.15.0-173-generic vmlinuz-4.15.0-173-generic
config-4.15.0-175-generic initrd.img-4.15.0-175-generic vmlinuz-4.15.0-175-generic
grub System.map-4.15.0-173-generic
grub.bak System.map-4.15.0-175-generic
I used that info to recreate manually the menu.lst
(copying the default commented code from another machine):
# menu.lst - See: grub(8), info grub, update-grub(8)
# grub-install(8), grub-floppy(8),
# grub-md5-crypt, /usr/share/doc/grub
# and /usr/share/doc/grub-legacy-doc/.
#
# Set the default entry to the entry number NUM. Numbering starts from 0, and
# the entry number 0 is the default if the command is not used.
#
# is the entry saved with the command 'savedefault'.
# WARNING: If you are using dmraid do not use 'savedefault' or your
# array will desync and will not let you boot your system.
default 0
#
# Set a timeout, in SEC seconds, before automatically booting the default entry
# (normally the first entry defined).
# on ec2, with no console access, there is no reason for a timeout. set to 0.
timeout 0
#
# Hides the menu by default (press ESC to see the menu)
hiddenmenu
# Pretty colours
#color cyan/blue white/blue
#
# If used in the first section of a menu file, disable all interactive editing
# control (menu entry editor and command-line) and entries protected by the
# command 'lock'
# e.g. password topsecret
# password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/
# password topsecret
#
#
# root (hd0,0)
# makeactive
# chainloader +1
#
# root (hd0,1)
# kernel /vmlinuz root=/dev/hda2 ro
#
#
#
#
#
#
#
#
#
#
#
#
#
#
# kopt=root=/dev/mapper/vg-lv_root ro
#
#
# groot=(hd0)
#
#
#
# alternative=true
#
#
#
# lockalternative=false
#
#
#
# defoptions=console=hvc0
#
#
#
# lockold=false
#
# xenhopt=
#
# xenkopt=console=tty0
#
#
#
#
# altoptions=(recovery mode) single
#
#
#
#
#
# howmany=all
#
#
#
#
#
# indomU=true
#
#
#
# memtest86=true
#
#
# updatedefaultentry=false
#
#
# savedefault=false
#
title Ubuntu 18.04.6 LTS, kernel 4.15.0-173-generic
root (hd0)
kernel /boot/vmlinuz-4.15.0-173-generic root=UUID=1c698c6b-ace0-4021-8cf9-4c0ee7d5364e ro console=hvc0
initrd /boot/initrd.img-4.15.0-173-generic
title Ubuntu 18.04.6 LTS, kernel 4.15.0-173-generic (recovery mode)
root (hd0)
kernel /boot/vmlinuz-4.15.0-173-generic root=UUID=1c698c6b-ace0-4021-8cf9-4c0ee7d5364e ro single
initrd /boot/initrd.img-4.15.0-173-generic
#
Then I rebooted, and finally:
# apt install -f
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
liblua5.1-0 libyajl2
Use
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up linux-image-4.15.0-175-generic (4.15.0-175.184) ...
Processing triggers for linux-image-4.15.0-175-generic (4.15.0-175.184) ...
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-4.15.0-175-generic
W: initramfs-tools configuration sets RESUME=/dev/mapper/vg-lv_swap
W: but no matching swap device is available.
I: The initramfs will attempt to resume from /dev/vda2
I: (UUID=4c30643f-055d-4ad7-babc-b2a6b8ac3138)
I: Set the RESUME variable to override this.
/etc/kernel/postinst.d/x-grub-legacy-ec2:
Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-4.15.0-173-generic
Replacing config file /run/grub/menu.lst with new version
Found kernel: /boot/vmlinuz-4.15.0-175-generic
Found kernel: /boot/vmlinuz-4.15.0-173-generic
Replacing config file /run/grub/menu.lst with new version
Updating /boot/grub/menu.lst ... done
/etc/kernel/postinst.d/zz-update-grub:
Sourcing file `/etc/default/grub
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.15.0-175-generic
Found initrd image: /boot/initrd.img-4.15.0-175-generic
Found linux image: /boot/vmlinuz-4.15.0-173-generic
Found initrd image: /boot/initrd.img-4.15.0-173-generic
done
W: APT had planned for dpkg to do more than it reported back (0 vs 4).
Affected packages: linux-image-4.15.0-175-generic:amd64
During the installation process, I selected:

At the end, I rebooted again and the new kernel was loaded correctly.