I have ArcoLinux installed on my nvme drive & EndeavourOS installed on a seperate ssd, when I boot I select EndeavourOS and boot to it no problems. But when i reboot then select ArcoLinux from the list it boots to a black screen and nothing else. Any help would be much appreciated, thanks!
Welcome to the EndeavourOS forums, and thanks for giving us a try.
I hope you enjoy your time here.
When you talk about selecting one OS or the other, I assume this is in Grub?
If so, then it sounds like osparser is going to be involved. I don’t know much about it, because I never use it. I am sure someone around here can help with that.
Here is what I do. Instead of choosing the device during Grub, I choose the device during boot up using F11 to choose which device I want. I put the Device I want to boot into the most on SATA 1, and the other device on SATA2. I then set what device to boot from in BIOS. Then the OS used the most boots without intervention. To boot the other device, press F11 and choose the lesser used OS device. F11 is a one time thing that over rides the BIOS on which device to boot, then after a re-boot, it goes back to the device chosen in BIOS.
Saves a lot of headaches.
which Function key to press varies among different computer brands
Ok I went into the bios and swapped boot order & that did work. But I thought OS Prober would give me the option of selecting which OS i wanted to boot to, without having to go to the bios and swap the boot order to choose which OS i wanted?
Like I said, I’m not real familiar with this, but I think you will have to go into both distributions, and use grub-install and grub-mkconfig to manually reinstall Grub. This will let both OS’s use os prober to discover each other. You might only need grub-mkconfig, I’m not sure.
I would wait until someone with more experience can chime in. I’d hate to see you loose one of your installs.
EDIT: I have been through this, and if I recall correctly, using Grub to switch between two OS’s on the same storage device works well. However, when each OS has it’s own storage device, using Grub gets problematic.
Thanks for all your help, i appreciate it.
I have a similar set up as you do although i am dual booting with Windows 10 on my m.2 drive (Nvme) and EndeavourOS is on my SSD. I guess you could try the following. Boot up into EndeavourOS and in the terminal run sudo os-prober and see if it finds the os on the nvme drive.
Then run grub-mkconfig -o /boot/grub/grub.cfg
Edit: Do you know what graphics card you have? That may be an issue with the black screen. You could post this command inxi -FGz
I have a Sapphire PULSE Radeon RX 570 4GB GDDR5
Yea it does detect the Arco OS on my nvme drive
Did you run the grub command?
Edit: Do this in EndeavourOS
Yep just did it & i got this
Generating grub configuration file …
Found theme: /boot/grub/themes/EndeavourOS/theme.txt
Found linux image: /boot/vmlinuz-linux
Found initrd image: /boot/amd-ucode.img /boot/initramfs-linux.img
Found fallback initrd image(s) in /boot: initramfs-linux-fallback.img
Found ArcoLinuxB-xfce (v20.3.3) on /dev/nvme0n1p1
Okay …then reboot and see what happens…
That’s good card i have an RX 590 to use with the Ryzen 7 3800X
Same thing still happens, I have EndeavourOS at the top of the list & below that is ArcoLinux. When I select Arco it goes to a black screen.
I’m not sure if it’s an issue with the microcode or something else? Both would be using the AMD graphics when loading.
IF I go to the bios and swap the boot order i can boot into Arco no issues.
That’s why it is something in the grub loading and then when you switch to Arco it loads and some conflict causes the black screen i think? That’s why i’m thinking the microcode but it could also be something else.
Have a look at these tools here. I haven’t tried them but it maybe of some help.
I guess @ricklinux is on the right track. The problem sounds like an invalid /boot/grub/grub.cfg. It may have invalid initrd lines.
So you can fix the lines manually, or fix the grub generator.
I think you might find it will be fixed by installing grub-tools as mentioned by @ricklinux
grub-fix-initrd-generation (might have to be sudo don’t remember)
sudo grub-mkconfig -o /boot/grub/grub.cfg
and it should work.
I certainly had to do that when I installed EndeavourOS in parallel with Antergos
Sounds to me like a possible problem with the amd-ucode on one or both systems. I saw a fix here on EndeavourOS website somewhere, but I have not personally tried it. What happens is that grub’s os-prober finds things, but creates an entry that tries to intrd the amd-ucode file instead of initramfs…
This is basically why I switched over to using rEFInd instead of grub, because I have 3 arch-based distros Arch, Arcolinux, EndeavourOS) of the 5 on here Saves a fair bit of fiddling! And a fair bit of ‘illegal/foolish’ quick fixes like adding on initramfs to the initrd line in the grub file you shouldn’t edit…