The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.
Install/Bootloader/ru
Руководство по установке: Установка загрузчика
Install Guide, Chapter 14 | < Prev | Next > |
How Booting Works
In order for Funtoo Linux to boot, it must detect the boot filesystem, root filesystem and swap. The most reliable way to do this is to use the UUID,
or unique identifier, of the partitions holding these filesystems. We will use these UUID values in the /etc/fstab
, which we will set up next.
The UUID allows Linux to find the right filesystem, even if it detects the disks differently or you move them around in your computer. Funtoo Linux
uses a Linux kernel and initial RAM disk to boot, and to get everything set up, we need to set up /etc/fstab
correctly, and then install the
GRUB boot loader -- and there are two different commands for this, depending on whether you are using MBR or UEFI. Then, finally, we run ego boot update
which is a Funtoo command that configures everything for us.
Label partitions
To see the UUIDs for your existing filesystems, type the following command:
root # ls -l /dev/disk/by-uuid/ total 0 lrwxrwxrwx 1 root root 10 Jan 27 13:42 6883428138129353569 -> ../../sdb1 lrwxrwxrwx 1 root root 15 Jan 27 13:42 CE4B-855D -> ../../nvme0n1p1 lrwxrwxrwx 1 root root 15 Jan 27 13:42 ac280eb5-1ea7-4742-9e71-9c7addd35c54 -> ../../nvme0n1p2 lrwxrwxrwx 1 root root 15 Jan 27 13:42 e5a76428-8b3f-4349-81af-cbe29c7f7d09 -> ../../nvme0n1p3
The UUIDs are listed to the left-hand side of the ->
. Use these values for setting up the /etc/fstab
file, below.
/etc/fstab
/etc/fstab
is used by the mount
command which is run when your system boots. Lines in this file inform mount
about filesystems to be mounted and how they should be mounted. In order for the system to boot properly, you must edit /etc/fstab
and ensure that it reflects the partition configuration you used earlier in the install process. If you can't remember the partition configuration that you used earlier:
chroot # nano -w /etc/fstab
/etc/fstab
- An example fstab fileUUID=CE4B-855D /boot vfat noauto,noatime 1 2
UUID=ac280eb5-1ea7-4742-9e71-9c7addd35c54 none swap sw 0 0
UUID=e5a76428-8b3f-4349-81af-cbe29c7f7d09 / ext4 noatime 0 1
Be sure to use the actual UUIDs from your system, not the example values above!
If you mounted a /var or /home partition, add them to your fstab, or your system may not boot correctly.
boot.conf
/etc/boot.conf
отвечает за настройки загрузчика в Funtoo. Вот содержание файла по умолчанию:
Here is what is in the file by default:
/etc/boot.conf
boot {
generate grub
default "Funtoo Linux"
timeout 3
}
"Funtoo Linux" {
kernel kernel[-v]
initrd initramfs[-v]
params += real_root=auto rootfstype=auto
}
"Funtoo Linux (nomodeset)" {
kernel kernel[-v]
initrd initramfs[-v]
params += real_root=auto rootfstype=auto nomodeset
}
Если Вы используете собственное, нестандартное ядро, ознакомьтесь с man boot.conf
на предмет различных параметров, которые вам доступны.
nomodeset
После загрузки вы увидите, что среди вариантов загрузки есть режим nomodeset
. Мы не рекомендуем использовать этот режим по умолчанию, но он будет хорош в некоторых ситуациях:
- Для HiDPI (4K+) экранов, особенно на ноутбуках: Если вы не настроили графическую среду, когда ядро автоматически меняет видеорежим, шрифт в консоли может быть слишком мелким, нечитаемым.
- Для несовместимых видеокарт: Некоторые видеокарты не поддерживают настройки режимов правильно и в результате получается черный экран после загрузки. Используйте настройку
nomodeset
как временное решение.
Для использования параметра nomodeset
просто выберите его в меню GRUB при загрузке системы.
rootwait
If you are using a root partition on an nvme
device, add the rootwait
kernel parameter to force the kernel to wait for it to asynchronously initialize or the kernel will panic on some hardware.
Intel Microcode
ego boot
проверит, что в системе самая последняя прошивка для процессора Intel, если вы соберете следующие пакеты:
chroot # emerge intel-microcode iucode_tool
Этот шаг не нужно делать для AMD процессоров.
MBR - классическая загрузочная запись (BIOS)
Следуя классическому способу, выполните следующую команду для установки GRUB на MBR, и создайте конфигурационный файл /boot/grub/grub.cfg
, используемый GRUB при загрузке.
chroot # grub-install --target=i386-pc --no-floppy /dev/sdX chroot # ego boot update
UEFI - современная загрузочная запись
Если Вы следуете современному способу, выполните следующий набор команд, в зависимости от того, устанавливаете 32- или 64-битную систему. Это добавит GRUB как загрузочную запись UEFI.
Для 64-битных x86-систем:
chroot # mount -o remount,rw /sys/firmware/efi/efivars chroot # grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id="Funtoo Linux [GRUB]" --recheck /dev/sda chroot # ego boot update
Для 32-битных x86-систем:
chroot # mount -o remount,rw /sys/firmware/efi/efivars chroot # grub-install --target=i386-efi --efi-directory=/boot --bootloader-id="Funtoo Linux [GRUB]" --recheck /dev/sda chroot # ego boot update
Ego!
Now, let's run Funtoo's ego boot update
command to get everything configured. This will detect the current kernel(s) on your system and create the necessary GRUB boot entries to get your system booted:
chroot # ego boot update
Осталось только выполнить grub-install
, если это первая установка Funtoo Linux. Также нужно будет выполнять ego boot update
каждый раз как вы отредактируете файл /etc/boot.conf
или добавите новые ядра в систему. Эта команда пересоздаст файл /etc/boot.conf
и после перезагрузки ваши новые ядра появятся в загрузочном меню GRUB.
UEFI. Решение проблем после перезагрузки
В случае, если запись UEFI NVRAM boot отсутствует в BIOS, и GRUB не стартует, попробуйте переместить уже установленный GRUB EFI исполняемый файл в default/fallback path
chroot # mv -v '/boot/EFI/Funtoo Linux [GRUB]' /boot/EFI/BOOT chroot # mv -v /boot/EFI/BOOT/grubx64.efi /boot/EFI/BOOT/BOOTX64.EFI
Первая загрузка и продолжение
ОК, все готово к загрузке!
Install Guide, Chapter 14 | < Prev | Next > |