I’m on debian 11, this error doesn’t show up every time, but once it appear I need more that one reboot and it will fix automatically without doing nothing, don’t know the reason why (just read that can be kernel dependent). What I want to avoid is that maybe it’s just a warning of somethink that will cause a pc break in future (maybe hardware is starting working bad?) Do you have any sugggestion? Thanks

    • @wth
      link
      77 months ago

      I second the advice to switch to a different/previous/known good kernel. That has been the cause a most boot problems for me. I just had it happen on a VM a couple of weeks ago, so I switched to the old kernel, then removed the new kernel. I’ll wait for another kernel before upgrading.

      It’s probably worth scanning your disk just in case as well.

    • @[email protected]
      link
      fedilink
      English
      -17 months ago

      I wouldn’t be quick to assume that this means a failing disk. There would probably be more sporadic issues if this were the case.

        • @[email protected]OP
          link
          fedilink
          3
          edit-2
          7 months ago

          ok, I’ll backup all data first. How can I remove old kernel without enter in grub menu (since usually boot works well) and select the oldone as default? Thanks

            • @[email protected]OP
              link
              fedilink
              3
              edit-2
              7 months ago

              ok, thank you very much for detailed explanation, yes I remember that I had removed timeout from grub in the past, I will follow your procedure and select previous kernel. Another question, once I’v selected the older kernel did you think that removing (it’s fine using apt?) and resinstall newest kernel will fix the issue or I’v to keep the older kernel? In case I’v to keep the older kernel how can I avoid that it will be overwritten once I update the os?

  • monk
    link
    fedilink
    97 months ago

    Disk sometimes being too slow to appear? Try rootwait/rootdelay kernel cmdline options.

    • @[email protected]OP
      link
      fedilink
      37 months ago

      I not on that machine but as far as I remember it’s a full ntfs partition, don’t think I ever changed fstab

      • @[email protected]
        link
        fedilink
        87 months ago

        Your root filesystem is NTFS? That’s likely the problem - I’m surprised it boots at all. Switching to a Linux filesystem is the likely solution. You could also try a newer kernel, too - 5.10 is quite old, current LTS is 6.1. Good luck.

  • @[email protected]
    link
    fedilink
    2
    edit-2
    7 months ago

    Kernel says it can’t mount root device. Maybe it is not specified or kernel just can’t find it. You need to edit root= parameter for kernel. For:

    1. GRUB: press ‘e’ to edit menu entry and then press ‘F10’ to boot
    2. LILO: just append desired root=
    3. EFIStub: change it in config and recompile it

    If you use GRUB you can use its console and search for disk and partition where root fs is located.

  • @[email protected]
    link
    fedilink
    27 months ago

    Depending on if you wrote the kernel cmdline yourself I imagine this might happen using /dev/sdN style device paths? BIOS might change things up every now and then for fun, so using partition UUIDs would be a better way if so.

      • @[email protected]
        link
        fedilink
        07 months ago

        Yes if you have multiple drives some buggy BIOS may not enumerate them in the same order every time. Most modern distros do UUIDs by default but when manually setting up a bootloader it is easy to succumb to such temptations to use the much simpler device paths as the UUIDs are a pain. If you’re not sure how to change the kernel parameters most likely you’re good on that front actually, its in your grub config as others have mentioned. I’ll leave this comment around in case some poor soul who did it manually comes across the thread.

      • @[email protected]
        link
        fedilink
        07 months ago

        Basically just look for things like root=/dev/sda2 in the kernel command line. You can get it at runtime by running “cat /proc/cmdline” having /dev/sda etc in your fstab might also be a problem

        • @[email protected]
          link
          fedilink
          07 months ago

          You can change those to /dev/disk/by-uuid/XYZ (“ls -an” that directory to see the symlinks to your current drives)

    • @[email protected]
      link
      fedilink
      27 months ago

      I hope by partition UUID you mean root=PARTUUID=, not root=UUID= because kernel can understand only PARTUUID.