@ Карта сайта News Автора!

Bog BOS: anaconda - программа установки дистрибутивов Red Hat

Последние изменения:
2022.06.27: sysadmin: тестирование настоящих SSD (KIOXIA CM6-V)

Последнее изменение файла: 2022.02.10
Скопировано с www.bog.pp.ru: 2023.06.06

Bog BOS: anaconda - программа установки дистрибутивов Red Hat

При установке и обновлении дистрибутива семейства Red Hat используется система anaconda. Оператор может выбрать устройство загрузки, с которого загружается и запускается ядро Linux и программа установки первой очереди. Задача программы первой очереди загрузить модули ядра, необходимые для монтирования файловой системы, содержащей программу второй очереди и "нормального" окружения периода выполнения (может обеспечивать работу клиента X и сервера VNC). Установщик второй очереди (перемещён в initrd?) позволяет указать местонахождение дистрибутива (используется термин "метод установки"), интерфейс общения (текстовый, графический, VNC, пакетный) и параметры установщика и ядра. Форматируются указанные файловые системы (поддерживается программный RAID, LVM2, iSCSI, multipath) и устанавливается указанное ПО из дистрибутива. Протокол установки записывается в файл /root/anaconda-ks.cfg в виде, готовом для автоматической установки (kickstart), рекомендуется проверять его перед использованием (в частности вставляет "selinux --enforcing"), в RHEL7 также записывается original-ks.cfg и initial-setup-ks.cfg. В ходе установки пишутся многочисленные журналы. Написана на Python 2 (Python 3?) и GTK+ 3, используется dracut (опции ядра обрабатываются там).

Перед установкой необходимо скачать выбранные ISO-образы CD или DVD, проверить контрольные суммы (можно использовать checkisomd5 из пакета anaconda-runtime (пакета isomd5sum), который проверяет встроенную в ISO контрольную сумму, или md5sum/sha1sum и дополнительный файл с сайта производителя) и записать на болванки или USB диск (dd) или развернуть дерево файлов для локального использования или на сервере FTP, HTTP или NFS (образы установщика, пакеты, .treeinfo и repodata).

Изменения (кастомизация) в программе установки доступны в виде флоппи образов (updates.img, product.img), которые можно указать в момент установки.

Также можно "подсунуть" модули ядра для нестандартного оборудования в виде ISO образа, содержащего rpm. В основном, это требуется для блочных и сетевых устройств, без которых невозможен доступ к установщику второй очереди или дереву файлов.

При первой загрузке установленной системы может запускаться процедура начальной установки (ранее firstboot): предъявление EULA, создание учётных записей. Также возможно изменение многих настроек ("firstboot --reconfig" в kickstart). Имеются графические и текстовые варианты.

Устройства загрузки

Возможные загрузочные устройства:

Интерфейс общения

В RHEL7 ко всем именам параметров добавлена опциональная приставка "inst.".

Предусмотрены следующие типы интерфеса общения оператора с программой установки

Методы установки (нахождение репозитория)

Метод установки по умолчанию определяется загрузочным устройством, может запрашиваться опцией askmethod (удалено в RHEL7).

При использовании kickstart расположение репозитория может задаваться командой url.

Методы установки (repo или inst.repo указывает на репозиторий yum, опция method объявлена устаревшей):

При использовании сетевых методов установки запрашиваются сетевые параметры, которые можно задать вручную или с помощью DHCP.

Параметры установщика и ядра

Опции при загрузке (предваряются командой linux, разделяются пробелами, начиная с RHEL 7 имена опций установщика предваряются строкой "inst."):

Меню загрузки

Начиная с Fedora 7 тип интерфейса задаётся выбором из первоначального текстового (псевдографика) меню: текстовая установка, графическая, восстановление, загрузка с локального диска, memtest. Переход к редактору параметров происходит по нажатию кнопки "Tab". Где-то во времена Fedora 15 (RHEL 7) меню стало вложенным.

Для загрузки используется ISOLINUX (isolinux/isolinux.cfg, см. pxelinux)

Позволяет выбрать из меню

Управляющие клавиши (isolinux.cfg):

Старая anaconda

Старая (до RHEL7) версия anaconda последовательно выводит формы для заполнения параметров настройки, имеется возможность вернуться к предыдущей форме (пользоваться с осторожностью - падает), например:

После перезагрузки настройка продолжается (firstboot):

Новая anaconda

Новая (RHEL7) версия anaconda после выбора языка на время установки выводит на экран единую приборную доску установки, которая позволяет оператору самостоятельно выбирать порядок решения подзадач установки с подсветкой обязательных и незавершённых частей. При этом система может обрабатывать выбранные настройки параллельно в фоновом режиме. Имеется кнопка Help.

Shift+PrintScreen сохраняет снимок экрана в /tmp/anaconda-screenshots/.

Подзадачи:

Безмышечная работа: Tab, Shift+Tab, стрелки, пробел или Enter (выбор), Alt-буква (выбор).

Порча дисков начинается только после нажатия кнопки "начать установку". Во время установки нужно задать пароль root и завести пользователей, с указанием uid, а также группы с указанием gid). Пользователи из группы wheel будут иметь полный контроль над системой с помощью sudo.

После перезагрузки настройка продолжается (Initial Setup):

Затем запускатеся firstboot, который оформляет подписку на портале Red Hat.

В создаваемое меню загрузки grub2 добавляется строка rescue для загрузки минималистского окружения

Отладка и журналы в старом стиле

В момент установки доступны (только локально) дополнительные виртуальные консоли (переход по Ctrl-Alt-Fx), уровень выводимых сюда сообщений (в файлы пишется всё) задаётся ключом loglevel:

Для отладки в процессе установки создаются файлы (набор варьируется от версии к версии)

После установки отладочные файлы записываются в следующие файлы:

Отладка и журналы в новом стиле

В RHEL 7.1 все консоли установщика сведены в одну (tty1, переход - Ctrl+Alt+F1, обратно - Ctrl+Alt+F6) с помощью tmux, переключение между панелями tty1 производится с помощью Alt+Tab, переход на панель - "Ctrl+b номер"

Для отладки в процессе установки создаются файлы (набор варьируется от версии к версии)

В CentOS7 (Fedora 15) все отладочные файлы записываются в каталог /var/log/anaconda/ (syslog, anaconda.log, ifcfg.log, journal.log, ks-post.log (указан в настройках kickstart), ks-script-wNkstV.log, packaging.log, program.log, storage.log). Где anaconda.xlog?

На удалённый сервер syslog передаётся в режиме TCP, на установленной системе syslog работает как ожидается.

Журнал устанавливаемой гостевой машины может передаваться с помощью virtio.

Ссылки

@ Карта сайта News Автора!

Bog BOS: anaconda - программа установки дистрибутивов Red Hat

Последние изменения:
2022.06.27: sysadmin: тестирование настоящих SSD (KIOXIA CM6-V)

TopList

Copyright © 1996-2023 Sergey E. Bogomolov; www.bog.pp.ru