3

When installing Kubuntu 18.10 and 19.04, I have run into the issue of seeing a grub error message "couldn't find suitable memory target" and then after the kernel starts there is kernel panic message of "not syncing: VFS: Unable to mount rooot fs on unknown-block(0,0)" When I downgrade to Kubuntu 17.04 everything works.

My computer is running a asrock x99 extreme6 with >32G ram with a E5-2690v3 Xeon cpu. The bios is a full UEFI bios with CSM disabled. I have only 1 SSD present in the system and have removed all other storage devices (except for the installation USB drive). I have two video cards, one Nvidia and the other AMD. I am clicking through the install procedure to make the installation as generic as possible.

I have managed to figure out that the initramfs images of the newer OS distributions are greater than 55M where the the 17.04 Distro initramfs is 41M. Searching around I have found that this is a problem if /boot is full and the kernel is unable to load the initramfs image. However, I am installing from a liveUSB and there are no issues booting the liveUSB and installing from the USB. I have successfully installed 19.04 on my laptop which has 16G of ram and is an older i7.

What does "couldn't find suitable memory target" actually mean and if its a lack of memory issue, how do I increase the amount of ram for the initramfs image. I am stumped on why the kernel is unable to load the root file system when the UUID is correctly specified via the installer.

What more information can I provide to help properly solve this problem. A google search shows this coming up in previous and much older releases, however, the solutions provided there do not work for my current problem manifestation.

I am not dual booting my desktop but I AM dual booting my laptop that is running Kubuntu 19.04

This appears to be a directly related to the size of the initramfs image.

Another question, how do I unbloat the standard image?

Thanks.

Additional Discoveries:

  1. Kubuntu 18.04.02 LTS does install successfully and startup properly.

  2. Interestingly, after installing the nvidia proprietary driver via the KDE driver utility I have hit the "couldn't find suitable memory target." error again.

  3. Reinstalling 18.04.02 LTS and checking the initrd.img-4.18.0-25-generic image size shows 55M, after installing the Nvidia drivers, the new images size is 64M. After doing a reboot, grub fails again with "couldn't find suitable memory target."

This still doesn't answer the question why in 19.04 the initramfs image is 72M and works on my laptop but my desktop which is fair more capable is unable to handle a 64M image.

2
  • Please edit your question to provide additional information instead of posting comments.
    – DK Bose
    Jul 9, 2019 at 4:19
  • @DKBose...Done!
    – user973434
    Jul 9, 2019 at 4:34

1 Answer 1

0

Ok, so the problem is most definitely centered around the bootloader grub. However, I am unable further debug the issue without a serial connection to my computer.

The good news is that there is a way to work around this problem. Shrink the initrd.img image. 3 steps are needed

  1. reconfigure initramfs-tools to use the 'xz' compression algorithm. This is achieved by editing the /etc/initramfs-tools/initramfs.conf file. Set COMPRESS=xz
    You will need to update the initrd file by running command: 'update-initramfs -u'

  2. If installed, uninstall cryptsetup-initramfs, this will update the initramfs image for you.

These two steps alone shrunk for me a 72M initrd image down to 37M. Which allowed me to boot my desktop successfully.

The last step will only gain you a few megabytes but its something. Goto the modules directory for you current kernel and run the command: ' find . -iname *.ko -exec strip --strip-unneeded {} + ' You will need to update your initramfs image after this command is run, see step 1.

If you have to do this from a livecd/USB then you will have to mount you root partition and run the following commands. It is assumed that your root filesystem is mounted at ' /mnt '

sudo mount --bind /dev /mnt/dev

sudo mount --bind /dev/pts /mnt/dev/pts

sudo mount --bind /proc /mnt/proc

sudo mount --bind /sys /mnt/sys

sudo chroot /mnt

Run the 3 steps mentioned above, check the size of you initrd image to ensure everything worked, unmount all devices and reboot.

This should due the trick. This doesn't fix the bootloader issue but it works around it.

You must log in to answer this question.

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