Полезные советы по установке Gentoo
Процесс установки Gentoo позволяет использовать очень гибкие подходы к различным методам установки. Поскольку в инструкцию по установке практически невозможно вставить каждый совет или трюк, этот документ пытается иметь дело с распространенными полезными советами и трюками для справочных целей.
Введение
Предварительно
В этом документе содержатся различные советы и трюки для установки Gentoo/x86. Многие из них обсуждаются достаточно серьезно - их нужно воспринимать как полезные советы для установки, а не как её замена.
Расширенная установка
Программный RAID
Если вы не знакомы с понятием программный RAID, пожалуйста, прочтите Software-RAID-HOWTO.
После загрузки с установочного диска загрузите подходящий модуль RAID. Например, если вы планируете использовать RAID-1:
root #
modprobe raid1
При разметке диска, убедитесь, что разделы используют fd
(Linux RAID autodetect) как тип раздела вместо 83
(Linux native). Тип раздела можно изменить с помощью команды t
в программе fdisk
.
Теперь, прежде чем мы начнем создавать RAID-массивы, нам нужно создать ноды мета-устройств:
root #
mknod /dev/md1 b 9 1
root #
mknod /dev/md2 b 9 2
root #
mknod /dev/md3 b 9 3
После разметки диска создайте файл /etc/mdadm.conf (да, прямо в окружении установочного диска) с помощью mdadm
, продвинутая утилита для администрирования RAID. Например, чтобы зеркалировать boot, swap и root разделы (RAID-1) на /dev/sda и /dev/sdb, можно воспользоваться:
root #
mdadm --create --verbose /dev/md1 --level=1 --raid-devices=2 --metadata=0.90 /dev/sda1 /dev/sdb1
root #
mdadm --create --verbose /dev/md2 --level=1 --raid-devices=2 --metadata=0.90 /dev/sda2 /dev/sdb2
root #
mdadm --create --verbose /dev/md3 --level=1 --raid-devices=2 --metadata=0.90 /dev/sda3 /dev/sdb3
Вы не должны использовать любую форму чередования, такую как RAID-0 или RAID-5, на загружаемом вами разделе. Кроме того, для этих критических файловых систем требуется только
--metadata=0.90
. Другие файловые системы могут использовать более свежие форматы метаданных.Программный Linux драйвер RAID начнет создавать мета-устройства. Вы можете наблюдать этот процесс в /proc/mdstat. Прежде чем продолжить, подождите, пока процесс создания мета-устройств полностью закончится.
root #
mdadm --detail --scan > /etc/mdadm.conf
С этого момента используйте /dev/md1 как раздел boot, /dev/md2 как раздел swap и /dev/md3 как раздел root.
Прямо перед chroot, не забудьте скопировать файл /etc/mdadm.conf в /mnt/gentoo/etc.
Во время конфигурации ядра, убедитесь, что поддержка соответсвующего RAID включено в ядре, а не как модуль.
Во время установки дополнительных (системных) утилит, также установите sys-fs/mdadm. Обратите внимание, что он может быть не доступен на всех установочных дисках. Поэтому установка на программный RAID может быть неосуществима, если установка производиться без сети!
Во время установки загрузчика, убедитесь, что установили загрузчик в MBR на обоих дисках, которые используются в зеркале.
ATA RAID с использованием ядер 2.4
Убедитесь, что вы загружаетесь с вашего установочного компакт-диска используя опцию doataraid
. После загрузки проверьте содержимое /dev/ataraid. Он должен содержать различные директории disc* для каждого жесткого диска, доступного в ATA RAID. Весь диск отображается как disc, в то время как разделы - part*.
Введите различные файлы устройств /dev/ataraid/disc*/*, которые вами используются для установки Gentoo. Вам потребуется заменить в примерах /dev/sda на ваш путь.
Перед chroot, bind-mount /dev структуру в новое окружение:
root #
mount --rbind /dev /mnt/gentoo/dev
Во время настройки ядра убедитесь, что включена поддержка вашего чипсета ATA RAID и его параметры. Например, популярная система RAID ATA представляет собой «встроенный RAID-модуль Promise FastTrack», и в этом случае вам определенно нужен Promise FastTrack Options
, встроенный в ваше ядро.
При настройке GRUB сначала необходимо создать загрузочный диск GRUB. Это не так сложно, как вы думаете. Сначала установите GRUB так как обычно, но когда вы перейдете к той части, где GRUB будет установлен в MBR, выполните следующие инструкции:
root #
cd /boot/grub
root #
dd if=stage1 of=/dev/fd0 bs=512 count=1
root #
dd if=stage2 of=/dev/fd0 bs=512 seek=1
Вам все равно нужно написать файл grub.conf. Это ничем не отличается от инструкций по установке, просто убедитесь, что ваш root=
указывает на устройство RAID ATA.
После завершения установки загрузитесь с помощью загрузочного диска GRUB. Вас встретит приглашение GRUB. Теперь настройте GRUB для загрузки с устройства RAID ATA:
grub>
root (hd0,x)
grub>
setup (hd0)
grub>
quit
Теперь перезагрузитесь (с извлеченной загрузочной дискетой GRUB).
Пользователи LILO могут безопасно использовать инструкции, указанные в инструкциях по установке.
Использование ядра из установочного диска
Если вы не хотите компилировать ядро самостоятельно, вы можете использовать ядро из установочного диска, скопировав его на устанавливаемую систему. Когда вы дойдете до компиляции ядра, перейдите на другой терминал (нажмите Alt + F2) и войдите в систему, введя пароль root, который вы указали в начале установки.
Скопируйте ядро и модули на новую установку Gentoo:
${KN} наименование ядра. Обычно что-то вроде 'gentoo' или 'smp'.
root #
cp /mnt/cdrom/isolinux/${KN} /mnt/cdrom/isolinux/${KN}.igz /mnt/gentoo/boot
root #
mkdir -p /mnt/gentoo/lib/modules
root #
cp -Rp /lib/modules/`uname -r` /mnt/gentoo/lib/modules
Чтобы все модули, которые в настоящее время загружены в память (с установочного диска), загружались во время загрузки новой системы Gentoo, выполните следующую команду в окружении chroot:
root #
mkdir -p /etc/modules-load.d
root #
cut -d ' ' -f 1 /proc/modules >> /etc/modules-load.d/local.conf
Проверьте содержимое файла /etc/modules-load.d/local.conf и обновите его по необходимости.
Упрощение установки
Оставляя терминал
Многие люди хотят оставить свою систему во время компиляции. В некоторых случаях это довольно сложно, поскольку установка выполняется в публичном окружении, где вы не можете доверять всем. Если это так, то вы, возможно, хотели бы иметь возможность выполнить компиляцию в фоновом режиме и выйти из всех терминалов.
Для этого существует несколько возможных решений. Первый - использовать screen. После загрузки с установочного компакт-диска установите пароль root и запустите сеанс screen:
Не все установочные компакт-диски предоставляют screen. Если это так, вам придется воспользоваться одним из других методов, описанных в этом разделе.
root #
screen -S gentoo
Внутри сеанса screen вы можете выполнить всю установку. При покидании терминала, нажмите Ctrl + a, d (то есть Ctrl и a одновременно, а затем d), чтобы «отсоединить» сеанс screen. Теперь можно безопасно выйти из системы (не теряя проделанную работу).
Чтобы восстановить доступ к терминалу, войдите в систему с правами root и «присоединитесь» к работающему сеансу screen:
root #
screen -x gentoo
Если не представляется возможным использовать screen, вы все ещё можете оставить терминал. Следуйте инструкциям по установке, но будет запущена долгосрочная компиляция (например, шаг ./scripts/bootstrap.sh), используйте nohup
который позволяет продолжить процесс, даже когда сессия завершится выходом. Не забывайте добавить в конце «&», иначе процесс не будет помещен в фоновый режим! Запомните где вы находитесь (команда pwd покажет вам это), так как вам нужно будет знать об этом позднее.
root #
pwd
/var/db/repos/gentoo
root #
nohup ./scripts/bootstrap.sh &
Теперь выйдите из окружения chroot (exit) и сессии установочного компакт-диска. Компиляция будет продолжена в фоновом режиме.
Чтобы проверить компиляцию, войдите в систему с правами root (на установочном компакт-диске), сделайте chroot обратно в окружение и перейдите в каталог, в котором был покинут сеанс:
root #
chroot /mnt/gentoo /bin/bash
root #
env-update && source /etc/profile
root #
cd /var/db/repos/gentoo
Теперь примените команду less к файлу nohup.out, который находится внутри этого каталога. Компиляция добавит свой вывод в этот файл, поэтому, если вы хотите следить за ходом компиляции, запустите less nohup.out и нажмите F, чтобы следить за изменениями. Когда компиляция завершится, вы можете продолжить со следующего шага инструкций по установке.
После завершения, нажмите Ctrl + c, а затем q. Это не остановит процесс компиляции, остановится только процесс less.
Исправление ошибок и проблем
Тщательное тестирование ваших дисков
Если вы считаете, что ваш диск нуждается в тщательной проверке на согласованность (плохие сектора и так далее), Вы можете использовать опцию -c
(c в нижнем регистре) при размещении на нем файловой системы ext2/ext3/ext4 (используя mke2fs
). Это отформатирует, выполнит тест чтения и пометит все плохие блоки как таковые. Если вы настоящий параноик, используйте -c -c
для форматирования вашего диска и выполнения более медленного теста чтения/записи.
root #
mke2fs -j -c /dev/sda3
Восстановление из неисправной установки
Если по какой-либо причине ваша установка Gentoo не удалась, вам не нужно повторно выполнять установку заново. Вместо этого вы можете безопасно «перейти» к точке, где, по вашему мнению, вы допустили ошибку (или если вы считаете, что эти инструкции ошибочны) и попробуйте другой подход.
Прежде всего, вам нужно сделать chroot для того, чтобы вернуться в окружение Gentoo Linux. Следуйте инструкциям еще раз, но игнорируйте шаги создания разделов, поскольку ваши разделы уже созданы и даже заполнены. Поэтому вы можете немедленно смонтировать эти разделы в /mnt/gentoo. Вам также следует проигнорировать шаги по извлечению файлов из архива stage и модификации make.conf - вы же не хотите перезаписывать свои файлы, не так ли?
После того, как вы сделали chroot внутрь вашего окружения Gentoo Linux, немедленно переходите к шагу, на котором вы думаете, что вам следует попробовать другой подход. Не переделывайте все шаги, такие как настройка загрузчика и так далее, если это не то место, где вы считаете, что все пошло не так.
Например, если вы считаете, что у вас неправильно настроенный grub.conf, вы можете немедленно запустить ваш редактор для обновления /boot/grub/grub.conf.
После того, как вы попробовали другой подход к своей ситуации, вы должны подумать о том, сколько последующих шагов вам нужно выполнить снова. Если последующие шаги зависят от вашего изменения, вам нужно будет их переделать.
Например:
- если вы изменили переменную внутри make.conf, вам нужно будет выполнить все последующие компиляции, поскольку они зависят от настроек из make.conf
- если вы изменили /boot/grub/grub.conf, вы можете немедленно выйти из окружения chroot и перезагрузиться, так как никакие последующие шаги не зависят от grub.conf
- если вы перекомпилировали ваше ядро, вам нужно только убедиться, что ваша конфигурация загрузчика указывает на правильный образ ядра (дважды проверьте, что вы смонтировали свой /boot!), затем вы можете выйти из окружения chroot и перезагрузиться
- если вы изменили /etc/fstab, вы можете выйти из окружения chroot и перезагрузиться
Как видите, для большинства операций восстановления вы можете сразу перезагрузиться. Только в некоторых случаях вам потребуется повторить последующие шаги установки.
This page is based on a document formerly found on our main website gentoo.org.
The following people contributed to the original document: Xavier Neys, nightmorph
They are listed here because wiki history does not allow for any external attribution. If you edit the wiki article, please do not add yourself here; your contributions are recorded on each article's associated history page.