I’m trying to update my grub boot order back to booting the first option instead of the second, so I run sudo nano /etc/default/grub, but it brings up this, which is not the file I want to edit.

I’m on fedora 38

  • Jordan_U@lemmy.ml
    link
    fedilink
    arrow-up
    29
    ·
    10 months ago

    This should get you back to defaults:

    sudo cp /usr/share/grub/default/grub /etc/default/grub && sudo update-grub

    At some point you definitely did accidentally write to /etc/default/grub when you meant to write to /boot/grub/grub.cfg.

    There’s no shame in that; Grub’s configuration process is very confusing and counter-intuitive.

    Everybody who has used Linux long enough has stories of breaking their systems in sillier ways, and this didn’t even really break your system 🙂.

    • Interstellar_1@pawb.socialOP
      link
      fedilink
      arrow-up
      3
      ·
      10 months ago

      THanks! but I’m getting the error cp: cannot stat '/usr/share/grub/default/grub': No such file or directory when running this.

      • Jordan_U@lemmy.ml
        link
        fedilink
        arrow-up
        2
        arrow-down
        2
        ·
        edit-2
        10 months ago

        What version of Ubuntu are you using?

        What is the output of the following command?:

        dpkg -l | grep grub

        If you urgently want your grub menu to default to the first entry that can be done first, but unless that’s needed I’d prefer to get to the root of the problem(s) and get a proper fix.

          • Jordan_U@lemmy.ml
            link
            fedilink
            arrow-up
            2
            ·
            edit-2
            10 months ago

            Ahh, sorry.

            For Fedora it looks like the default /etc/default/grub looks like this:

            GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="rhgb quiet" GRUB_DISABLE_RECOVERY="true" GRUB_ENABLE_BLSCFG=true

            ( Taken from https://discussion.fedoraproject.org/t/how-to-regenerate-etc-default-grub/72677/9 )

            If you’re using LVM / LUKS you may need additional kernel parameters, like resume=… for suspend to disk to work properly.

            Please, before doing anything else, post the output of the following:

            cat /proc/cmdline

            And make a backup of your existing grub.cfg with:

            sudo cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg-backup-$(date --iso-8601=s)

            Also, be sure that you have a LiveUSB on hand. You don’t want to be SOL if we break something and can’t boot again without fixing it first.

            • Jordan_U@lemmy.ml
              link
              fedilink
              arrow-up
              1
              ·
              10 months ago

              [email protected]

              Sorry again. I wrote this last comment (and this one, TBH) from my phone and “–iso=s” should have been “–iso-8601=s” . I’ve edited my comment and the command should now work (Making a backup of your grub.cfg containing the date, to the second, in the filename. I did that to hopefully avoid you running the same command again after trying some fixes and accidentally clobbering your backup).