From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Handbook:PPC64/Installation/Bootloader and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎italiano • ‎polski • ‎русский • ‎தமிழ் • ‎中文(中国大陆)‎ • ‎日本語 • ‎한국어
PPC64 Handbook
Об установке
Выбор подходящего источника для установки
Настройка сети
Подготовка дисков
Установка stage3
Установка базовой системы
Настройка ядра
Настройка системы
Установка системных утилит
Настройка загрузчика
Работа с Gentoo
Введение в Portage
Возможности Portage
Система сценариев инициализации
Переменные окружения
Работа с Portage
Файлы и каталоги
Смешение ветвей программного обеспечения
Дополнительные утилиты
Дополнительные репозитории пакетов
Расширенные возможности
Настройка сети
Начальная настройка
Расширенная настройка
Модульное построение сети
Беспроводная сеть
Добавляем функциональность
Динамическое управление

With the kernel configured and compiled and the necessary system configuration files filled in correctly, it is time to install a program that will fire up the kernel when the system boots. Such a program is called a boot loader.

On Linux/PPC64 we have yaBoot as a bootloader.

Использование yaboot


When using a 64-bit userland (PPC64), the yaboot-static package must be used because yaboot cannot be compiled as a 64-bit application. The 32-bit userlands should use the regular (non-statically linked) yaboot package.

In order to find the boot devices, yaboot needs access to the device nodes created by udev on startup and the sysfs filesystem. These two filesystems are found at /dev/ and /sys/ respectively. Early in the installation, these locations should have been bind-mounted into the chroot.

The yabootconfig/ybin commands will not work on IBM. Please refer to Using yaboot on IBM hardware.

To set up yaboot, either use yabootconfig to automatically create a configuration file or manually configure the bootloader. When installing Gentoo on a Power Mac G5 (where yabootconfig does not always work), or when the system needs to boot from FireWire or USB, then manually configuring yaboot is mandatory.


Install the appropriate version of yaboot for the system architecture and type:

Для 32 бит (PPC):

root #emerge --ask sys-boot/yaboot

Для 64 бит (PPC64):

root #emerge --ask sys-boot/yaboot-static

По умолчанию: Использование yabootconfig

yabootconfig will auto-detect the partitions on the machine and will set up dual and triple boot combinations with Linux, Mac OS, and Mac OS X.

To use yabootconfig, the drive must have a bootstrap partition, and /etc/fstab must be configured to reflect the Linux partitions (note that the Bootstrap partition should not be in the fstab file). These steps should have already been completed before, but check /etc/fstab before proceeding.

Now run yabootconfig:

root #yabootconfig

First, the program will confirm the location of the bootstrap partition. When using the suggested disk partitioning scheme, the bootstrap partition should be /dev/sda1. Type Y if the output is correct. If not, double check the /etc/fstab file. yabootconfig will then scan the system setup, create a /etc/yaboot.conf configuration file, and attempt to run mkofboot. The mkofboot command is used to format the bootstrap partition, and install the yaboot configuration file into it.

It may be necessary to run mkofboot command manually to install the bootloader:

root #mkofboot

After installation, verify the contents of /etc/yaboot.conf. When making changes to /etc/yaboot.conf (like setting the default/boot OS), make sure to rerun ybin -v (as root) to apply changes to the bootstrap partition.

Альтернатива: Ручная конфигурация yaboot

An example yaboot.conf file is given below, but it will need to be altered to fit personal preference.

Файл /etc/yaboot.confExample configuration
## /etc/yaboot.conf
## run: "man yaboot.conf" for details. Do not make changes until you have!!
## see also: /usr/share/doc/yaboot/examples for example configurations.
## For a dual-boot menu, add one or more of:
## bsd=/dev/sdaX, macos=/dev/sdaY, macosx=/dev/sdaZ
## our bootstrap partition:
## ofboot is the Open Firmware way to specify the bootstrap partition.
## If this isn't defined, yaboot fails on the G5 and some G4s (unless 
## you pass the necessary arguments to the mkofboot/ybin program).
## hd:X means /dev/sdaX.
## hd: is Open Firmware speak for sda
## This section can be duplicated if you have more than one kernel or set of
## boot options - replace kernel-3.16.5-gentoo with your kernel

Once yaboot.conf is configured, run mkofboot -v to format the bootstrap partition and install the settings:

root #mkofboot -v

If yaboot.conf is changed after the bootstrap partition has been created, then update the settings by running:

root #mkofboot -v

For more information on yaboot, take a look at the yaboot project.

Использование yaboot на оборудовании IBM

На оборудовании IBM невозможно выполнить yabootconfig или ybin. Следуйте следующим инструкциям:

  • Emerge the yaboot-static package.
  • Run the following command, filling in XX with the disk and partition for the PReP partition. {{Path|/dev/sda1}
root #dd if=/usr/lib/yaboot/yaboot.chrp of=/dev/sdXX
  • Construct a yaboot.conf file and place it into /etc/. Take a look at the configuration example above, look into the man page for yaboot.conf (man 8 yaboot.conf, or look at the below yaboot.conf example.
  • Assuming the boot device in OpenFirmware is pointing to the hard drive the prep boot partition is on, then it'll just work. If not, at IPL time, go into the multiboot menu and set the boot device to the one with the prep boot partition.

Вот и всё!

Файл yaboot.confExample yaboot.conf for IBM hardware

For POWER4, POWER5, and blade-based hardware (where the PReP disk partition and the disk partition that contains the kernel are on the same physical disk), it is possible to use a simplified yaboot.conf. The following should be sufficient:

Файл yaboot.confyaboot.conf for PReP hardware
default = linux
timeout = 100
        root = /dev/sda3

To verify that yaboot has been copied to the PReP partition:

root #dd if=/dev/sda1 count=10 | grep ELF
Binary file (standard input) matches
10+0 records in
10+0 records out

A match signifies that yaboot was installed correctly.

Перезагрузка системы

Выйдите из изолированной среды и размонтируйте все смонтированные разделы. Затем введите ту самую волшебную команду, которая запускает последний, настоящий тест: reboot.

root #exit
cdimage ~#cd
cdimage ~#umount -l /mnt/gentoo/dev{/shm,/pts,}
cdimage ~#umount -R /mnt/gentoo
cdimage ~#reboot

Не забудьте вынуть загрузочный компакт-диск, иначе он загрузится снова вместо новой системы Gentoo.

Перезагрузившись во вновь установленную систему, переходите к завершению установки Gentoo.