I installed manjaro a while ago alongside windows 10 and I just upgraded my CPU and motherboard all my other hardware is the same. my windows install works fine but when I boot my computer I don’t have an option to boot to manjaro it just boots straight to windows.
is there a way to restore the boot loader thing so I don’t have to reinstall my Linux partition?
Hi @Kodi4444, and welcome!
Some is welcome to correct me if I’m wrong, but I believe the steps would be:
- Boot with an installation USB into a Live ISO environment.
- Once successfully booted, open up a terminal and run
manjaro-chroot -a
to enter a chroot
environment. If requested and Manjaro is your only Linux installation, press 0
to enter it, else select the correct one from the list.
- Once in the
chroot
environment, browse to/etc/default
cd /etc/default/
- Once there, you can update Grub.
update-grub
- Close your eyes, hold your thumbs, and
reboot
Reason:
When upgrading/changing your motherboard, where the drives are plugged onto, it is quite possible the hard drives’ identifiers sda
/hda
/nvme1
or so changed. This means grub can no longer find and identify them. So it has to be rebuilt.
Or that’s how I understand it, anyway.
@Mirdarthos
this is what i got:
[manjaro@manjaro ~]$ manjaro-chroot -a
==> Detected systems:
--> 0) ManjaroLinux
==> Select system to mount [0-0] :
0
==> ERROR: You can't mount 0!
now what do i do?
Right there is where my expertise ends. Never seen that before and don’t know what’s next.
Perhaps somene else can help. I know I can’t. Sorry.
well you got me this far at least.
Sorry it wasn’t further.
I have read that in an older version of that utility the text said to put 0
but what was actually needed to make it work as expected was to put 1
You can also chroot without that little helper program.
It’s just a few commands which I can’t remember correctly of the top of my head.
It’s probably in the Manjaro wiki - it definitely is in the Arch wiki.
So your saying I should just put in 1 and it should work?
I’m saying that I read that the tool had a bug and it was like this.
1 instead of 0 - everything shifted up by 1 …
There is a chance that you have this buggy tool when your live iso is a bit older.
Here is what that tool essentially does and how you can do it without it.
It’s just a helper to hide the process which is a little bit too involved for many newbies.
Try both - you can’t destroy anything by chrooting alone - it’ll just not work, like you already discovered.
To verify that it worked just list the directory structure
ls
or
ls /home/$username
or …
have a look around whether you actually now are in your system and not in the live system anymore …
A good indicator for me (not that I need it to confirm) is my filemanager (mc) - which is never present by default in any live iso.
If I can run and use that - I’m chrooted in my system.
I’m not good with the command line. This tool is essential for me and the first thing I install on any system.
[manjaro@manjaro ~]$ manjaro-chroot -a
==> Detected systems:
--> 0) ManjaroLinux
==> Select system to mount [0-0] :
1
==> Mounting (ManjaroLinux) [/dev/sdb3]
--> mount: [/mnt]
--> mount: [/mnt/boot/efi]
[manjaro /]#
so does that mean it worked?
what do i do now? @Mirdarthos @Nachlese
I assume I chose ether [/mnt]
or [/mnt/boot/efi]
but i don’t know what they mean.
go fix your boot loader
like @Mirdarthos said
I’d have to look it up - and will very likely arrive at the same result
update-grub
should be the only thing you need to run
I assume I chose ether
[/mnt]
or[/mnt/boot/efi]
but i don’t know what they mean.
You didn’t choose anything - the tool did that for you.
That is just informational - your system was mounted to /mnt of the live system
several directories within it also
and that then became your system root —> hence the name: chroot (change root)
im still in the chroot
do i exit out? then run update-grub
?
yes, you are in chroot - in your system
and yes, you need to run the update-grub command from there
that was the point of the exercise
don’t exit out before you did that
oh i see. now it says done.
now do i restart my computer to see if i can now boot to Manjaro?
sync
just to be sure
CTRL-D or CTRL-C
to exit the chroot
(I have never used that tool …)
Then shut the live system down and (try to) reboot.
@Nachlese
it didn’t work. i restarted and it went strait to windows again.
now I’m back on my live disk.
well my live disk isnt the newest verson should i update it and try again?
I would - as you will - have to research a bit deeper into how to fix grub in a dual boot setup.
Probably, update-grub needs to be given some options … I don’t know.
Not now anyway, not yet.
I’ll have to leave - it’s nearly 2.30 am here.
later!
or someone else in the meantime
That’ll probably make no difference - only the 1 will be a 0 then …
But you could try.
ok i tried it again with the latest ISO
it still wouldn’t work with 0
[manjaro@manjaro ~]$ manjaro-chroot -a
grub-probe: error: cannot find a GRUB drive for /dev/sdd1. Check your device.map.
grub-probe: error: cannot find a GRUB drive for /dev/sdd1. Check your device.map.
==> Detected systems:
--> 0) ManjaroLinux
==> Select system to mount [0-0] :
0
==> ERROR: You can't mount 0!
or with 2
manjaro@manjaro ~]$ manjaro-chroot -a
grub-probe: error: cannot find a GRUB drive for /dev/sdd1. Check your device.map.
grub-probe: error: cannot find a GRUB drive for /dev/sdd1. Check your device.map.
==> Detected systems:
--> 0) ManjaroLinux
==> Select system to mount [0-0] :
2
==> ERROR: You can't mount 2!
it did seem to work with 1
[manjaro@manjaro ~]$ manjaro-chroot -a
grub-probe: error: cannot find a GRUB drive for /dev/sdd1. Check your device.map.
grub-probe: error: cannot find a GRUB drive for /dev/sdd1. Check your device.map.
==> Detected systems:
--> 0) ManjaroLinux
==> Select system to mount [0-0] :
1
==> Mounting (ManjaroLinux) [/dev/sdb3]
--> mount: [/mnt]
--> mount: [/mnt/boot/efi]
[manjaro /]# update-grub
Generating grub configuration file ...
Found theme: /usr/share/grub/themes/manjaro/theme.txt
Found linux image: /boot/vmlinuz-4.19-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-4.19-x86_64.img
Found initrd fallback image: /boot/initramfs-4.19-x86_64-fallback.img
grub-probe: error: cannot find a GRUB drive for /dev/sdd1. Check your device.map.
grub-probe: error: cannot find a GRUB drive for /dev/sdd1. Check your device.map.
Adding boot menu entry for UEFI Firmware Settings ...
Found memtest86+ image: /boot/memtest86+/memtest.bin
done
[manjaro /]#
but it still no option to boot to Manjaro.
perhaps it has something to do with the stuff that got printed after i did
[manjaro /]# update-grub
because i did see that there was 2 errors.