Hi I am Rupesh from India and I brought a new pc with AMD ryzen 5500GT Asus prime b450 motherboard. I have tried a number of Linux operating systems and at present I have installed successfully Fedora, Debian, and Arch Linux but I can't install gentoo safely.
I have tried the instructions specified in gentoo AMD handbook to install gentoo safely as follows
-
I have downloaded gentoo live iso image from the official gentoo website.
-
I created usb installation medium using dd in Arch Linux.
-
I booted into the gentoo live environment.
-
using Firefox web browser I have downloaded stage 3 desktop systemd tar ball.
-
I created 40 Gb xfs partition for new gentoo root.
-
I created 600 mb fat 32 alias vfat for gentoo efi.
-
I created 3 gb swap partition for new gentoo
-
I mounted 40 Gb xfs partition to /mnt/gentoo
-
I have mounted vfat partition to /mnt/gentoo/efi
-
I copied the stage 3 tar ball to /mnt/gentoo and extracted it as specified in handbook.
-
I modified the fstab file and added entries for root, efi and swap.
-
I added -march=znver3 to COMMON_FLAGS entry in /etc/portage/make.conf and made symbolic link to /etc/make.conf.
-
rebooted my system and entered into Arch Linux and issued the following command
sudo grub-mkconfig -o /boot/grub/grub.cfg
I found something as "found gentoo on /dev/nvme0n1p18
After that I entered the following command
grub install /dev/nvme0n1
-
I have rebooted my system and in grub I selected gentoo but I got error as kernel not found.
-
I restarted my system and entered into gentoo live environment and searched Firefox for gentoo install kernel and found article saying to install gentoo-kernel
So I done chroot into my new gentoo and issued the following command
emerge gentoo-kernel
- After that I have rebooted my system and entered into Arch Linux and issued the following command
sudo grub-mkconfig -o /boot/grub/grub.cfg
After that I issued grub install in Arch Linux.
- After that I have restarted my system and in grub I have selected gentoo but this time I got error something as
cannot open /dev/root
- After that I have restarted my system and entered into gentoo live environment and searched for gentoo install kernel and this time I found an article saying that linux-firmware to install first before doing anything else.
Even though I issued the following command
emerge linux-firmware
-
After that I have restarted my system and entered into Arch Linux and issued grub commands as before.
-
As usually I restarted my system and in grub I have selected gentoo but unfortunately this time also I got the same error as
/dev/root: Cannot open blockdev
- I tried a number of times to remove the installed kernel and compile it from source from the beginning but no use I am getting the same error as
/dev/root: Cannot open blockdev
If I want to install or remove packages I must enter into gentoo live environment and do chroot and do anything.
In the gentoo live environment chroot when I issue emerge command I am getting error as the current package is masked. For example the following command
emerge linux-firmware
I have searched portage for some packages like sudo, grub, network manager etc., and mostly I found 50 percent in the repository are masked.
Upto now I have used a number of Linux operating systems and upon installing them to my system I found a working kernel all utilities like sudo, grub, network manager etc.,.
I can't understand why gentoo stage 3 tar ball doesn't have kernel installation files and grub.
At present I am getting error /dev/root cannot open blockdev and in chroot environment sometimes I am getting error as "efi directory not found".
My requirement is I want a working Linux operating system through compilation of all packages optimised for my ryzen zen3 processor. For this I included -march=znver3 in /etc/.
Another requirement is if I issue the command "emerge kde" all the packages related to kde must be downloaded and compiled properly and the system must not be in a broken state.
Kindly try to suggest how to install gentoo properly and if you want I am ready to provide diagnostic output of the commands provided by you.
Regards,
Rupesh.