Автоматизированная установка (Kickstart-установка)

Установка с помощью Kickstart-файла

Поддерживается следующая архитектура:

  • 64-битная архитектура AMD и Intel

Ограничения

  • При загрузке с образа диска МСВСфера ОС АРМ Kickstart-установка не поддерживается. Для установки МСВСфера ОС АРМ с помощью Kickstart-файла необходимо использовать или полный DVD (для локальной установки), или Netinstall (для установки по сети).

Программа установки Anaconda

Anaconda — программа установки операционной системы, использующаяся в МСВСфера ОС. Anaconda представляет собой набор модулей и Python-скриптов с дополнительными файлами, такими как виджеты Gtk (написанные на языке программирования C), модули systemd и библиотеки dracut. Вместе они образуют инструмент, позволяющий задавать параметры устанавливаемой операционной системы. В документации МСВСфера ОС термин «программа установки» обозначает программу установки Anaconda.

Методы установки

Вы можете установить МСВСфера ОС несколькими способами.

  • Установка в графическом режиме. Необходимо скачать ISO-образ МСВСфера ОС и воспользоваться инструкцией по установке.

  • Установка с помощью Kickstart-файла. Для частичной или полной автоматизации процесса установки МСВСфера ОС можно использовать Kickstart-файл, в котором содержатся параметры установки, например, часовой пояс, разделы диска и устанавливаемые пакеты. Использование Kickstart-файла позволяет установить МСВСфера ОС одновременно на большом количестве устройств без вмешательства пользователя.

Также использование Kickstart-файла даёт больше возможностей выбора программного обеспечения. При установке МСВСфера ОС вручную в графическом интерфейсе выбор программного обеспечения ограничивается предварительно заданными средами и надстройками. Используя Kickstart-файл, вы можете устанавливать или удалять отдельные пакеты.

Kickstart-файлы могут храниться на одном компьютере, а другие компьютеры могут читать их во время установки. То есть, один Kickstart-файл используется для установки МСВСфера ОС на нескольких компьютерах, что делает его идеальным для сетевых и системных администраторов.

Все Kickstart-сценарии и файлы журналов их выполнения хранятся в каталоге /tmp вновь установленной системы. Kickstart-файл, используемый для установки, а также выходные Kickstart-файлы, сгенерированные Anaconda, хранятся в каталоге /root в целевой системе, журналы выполнения Kickstart хранятся в каталоге /var/log/anaconda.

Примечание

Ранее с помощью Kickstart-файла также можно было настроить обновление системы. Теперь обновление выполняется с помощью специализированных инструментов.

Порядок автоматизированной установки

Автоматизированная установка может быть запущена с локального жёсткого диска, локального DVD или с сервера NFS, FTP, HTTP и HTTPS.

Порядок автоматизированной установки.

  1. Создание Kickstart-файла.

  2. Запись Kickstart-файла на локальный загрузочный носитель (DVD, USB, жёсткий диск) (или обеспечение доступа к нему по сети (NFS, FTP, HTTP(S)).

  3. Предоставление доступа к установочной структуре.

  4. Начало установки.

Создание Kickstart-файла

Вы можете создать Kickstart-файл, следующими способами:

  • Использовать как есть или изменить Kickstart-файл, созданный в результате установки операционной системы.

  • Создать Kickstart-файл вручную.

Примечание

Обратите внимание, что некоторые весьма специфические параметры установки можно настроить только путём создания или редактирования Kickstart-файла вручную.

Использование как есть или изменение Kickstart-файла, созданного в результате установки операционной системы

После завершения установки операционной системы все параметры, заданные во время установки, сохраняются в Kickstart-файле с именем anaconda-ks.cfg, расположенном в каталоге /root установленной системы. Вы можете использовать этот файл для установки операционной системы с точно такими же параметрами. Либо вы можете скопировать этот файл и внести необходимые изменения, а затем использовать его для установки операционной системы.

Порядок действий

  1. Установите МСВСфера ОС. Во время установки создайте пользователя с правами администратора.

  2. Перезагрузите устройство и войдите в установленную систему с правами администратора.

  3. Скопируйте файл /root/anaconda-ks.cfg. Будьте внимательны — файл содержит информацию о пользователях и паролях!

    • Чтобы отобразить содержимое файла в терминале, выполните следующую команду:

      # cat /root/anaconda-ks.cfg
      

      Вы можете скопировать вывод команды и сохранить его в другой файл.

    • Чтобы скопировать файл в другое место, используйте файловый менеджер. Вы можете изменить права доступа к копии, чтобы файл мог быть прочитан пользователями без полномочий root.

Создание Kickstart-файла вручную

Kickstart-файл — это обычный текстовый файл, содержащий параметры установки. Его можно создать в любом текстовом редакторе, способном сохранять файлы в формате ASCII.

При создании Kickstart-файла вручную рекомендуется руководствоваться разделами Формат Kickstart-файла и Синтаксис команд.

Проверка Kickstart-файла

После создания Kickstart-файла рекомендуется проверить его формат. Для этого используется программа ksvalidator в составе пакета pykickstart.

Установите пакет pykickstart с помощью следующей команды:

dnf install pykickstart

Чтобы проверить формат файла, выполните следующую команду:

$ ksvalidator /путь/к/kickstart.ks

Вместо /путь/к/kickstart.ks укажите действительный путь к Kickstart-файлу.

Предупреждение

Возможности такой проверки ограничены. Структура файла может быть достаточно сложной и, несмотря на то что ksvalidator проверяет синтаксис файла и помогает убедиться в отсутствии устаревших параметров, это не гарантирует успех установки. Более того, разделы %pre, %post и %packages вообще не проверяются.

Запись Kickstart-файла на локальный или удалённый носитель

В таблице перечислены порты, которые должны быть открыты на сервере для каждого типа сетевой установки.

Порты для сетевой установки

Протокол

Порт

HTTP

80

HTTPS

443

FTP

21

NFS

2049, 111, 20048

TFTP

69

Основным преимуществом размещения Kickstart-файла в сети является то, что это позволяет установить МСВСфера ОС на несколько устройств без необходимости использовать физический носитель.

Запись и обеспечение доступа к Kickstart-файлу по NFS

Предварительные условия

  • У вас есть доступ с правами администратора к серверу с МСВСфера ОС 9 в локальной сети.

  • Устанавливаемая система может подключаться к серверу.

  • Межсетевой экран на сервере разрешает подключения из устанавливаемой системы.

Порядок действий

  1. Установите пакет nfs-utils, выполнив следующую команду от имени пользователя root.

# dnf install nfs-utils
  1. Положите Kickstart-файл в директорию на NFS-сервере.

  2. Откройте файл /etc/exports в текстовом редакторе и добавьте следующую строку.

/exported_directory/ clients
  1. Здесь /exported_directory/ — полный путь к каталогу, в котором находится Kickstart-файл.

Вместо clients укажите имя хоста или IP-адрес компьютера, на который устанавливается МСВСфера ОС, подсеть, из которой все компьютеры должны иметь доступ к ISO-образу или звёздочку (*), если хотите, чтобы любой компьютер с доступом к NFS-серверу мог использовать ISO-образ.

Пример: сделать каталог /msvsphere9-install доступным только для чтения для всех клиентов:

/msvsphere9-install/ *
  1. Сохраните файл /etc/exports.

  2. Запустите службу nfs.

# systemctl start nfs-server.service

Если служба была запущена до изменения файла /etc/exports, выполните следующую команду для перезагрузки конфигурации работающего NFS-сервера:

# systemctl reload nfs-server.service

Теперь Kickstart-файл доступен по NFS и готов к использованию для установки.

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

  • nfs: в качестве протокола

  • затем имя хоста или IP-адрес сервера

  • знак двоеточия (:)

  • путь внутри каталога, в котором находится файл

Например, если имя сервера — myserver.example.ru и вы сохранили файл в каталоге /msvsphere9-install/my-ks.cfg, то источник установки будет выглядеть следующим образом:

inst.ks=nfs:myserver.example.ru:/msvsphere9-install/my-ks.cfg

Запись и обеспечение доступа к Kickstart-файлу по HTTP(S)

Предварительные условия

  • У вас есть доступ с правами администратора к серверу с МСВСфера ОС 9 в локальной сети.

  • Устанавливаемая система может подключаться к серверу.

  • Межсетевой экран на сервере разрешает подключения из устанавливаемой системы.

Порядок действий

  1. Для HTTP-сервера установите пакет httpd, выполнив следующую команду от имени пользователя root.

# dnf install httpd
  1. Для HTTPS-сервера установите пакеты httpd и mod_ssl, выполнив следующую команду от имени пользователя root.

# dnf install httpd mod_ssl

Предупреждение

Если в конфигурации веб-сервера Apache включена безопасность SSL, убедитесь, что включён только протокол TLSv1, а протоколы SSLv2 и SSLv3 отключены. Это связано с уязвимостью SSL POODLE (CVE-2014-3566).

Если HTTPS-сервер подписан самоподписанным сертификатом, используйте параметр inst.noverifyssl при установке.

  1. Положите Kickstart-файл в директорию /var/www/html/.

Теперь Kickstart-файл доступен по HTTP(S) и готов к использованию для установки.

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

  • http:// или https:// в качестве протокола

  • затем имя хоста или IP-адрес сервера

  • путь к Kickstart-файлу относительно корня HTTP(S)-сервера

Например, если имя сервера — myserver.example.ru и вы сохранили файл как /var/www/html/msvsphere9-install/my-ks.cfg, то источник установки будет выглядеть следующим образом:

http://myserver.example.com/msvsphere9-install/my-ks.cfg

Запись и обеспечение доступа к Kickstart-файлу по FTP

Предварительные условия

  • У вас есть доступ с правами администратора к серверу с МСВСфера ОС 9 в локальной сети.

  • Устанавливаемая система может подключаться к серверу.

  • Межсетевой экран на сервере разрешает подключения из устанавливаемой системы.

Порядок действий

  1. Установите пакет vsftpd, выполнив следующую команду от имени пользователя root.

# dnf install vsftpd
  1. Откройте в текстовом редакторе конфигурационный файл /etc/vsftpd/vsftpd.conf и отредактируйте его следующим образом.

  • Измените строку anonymous_enable=NO на anonymous_enable=YES;

  • Измените строку line write_enable=YES на write_enable=NO;

  • Добавьте строки pasv_min_port=min_port и pasv_max_port=max_port. Замените min_port и max_port диапазоном номеров портов, используемых FTP-сервером в пассивном режиме, например, 10021 и 10031. Этот шаг может потребоваться в сетевых средах с различными настройками межсетевого экрана/NAT.

  • При желании вы можете добавить другие изменения в конфигурацию. Доступные параметры вы можете найти в руководстве vsftpd.conf(5). Здесь же предполагается, что используются параметры по умолчанию.

Предупреждение

Если настроена безопасность SSL/TLS в файле vsftpd.conf, убедитесь, что включен только протокол TLSv1, а протоколы SSLv2 и SSLv3 отключены. Это связано с уязвимостью SSL POODLE (CVE-2014-3566).

  1. Настройте межсетевой экран сервера.

  • Включите межсетевой экран:

    # systemctl enable firewalld
    # systemctl start firewalld
    
  • Включите в межсетевом экране FTP-порт и диапазон портов из предыдущего шага:

    # firewall-cmd --add-port min_port-max_port/tcp --permanent
    # firewall-cmd --add-service ftp --permanent
    # firewall-cmd --reload
    

    Замените min_port-max_port номерами портов, которые вы указали в файле конфигурации /etc/vsftpd/vsftpd.conf.

  1. Скопируйте Kickstart-файл на FTP-сервер в каталог /var/ftp/ или его подкаталог.

  2. Убедитесь, что для файла установлен правильный контекст SELinux и режим доступа:

    # restorecon -r /var/ftp/your-kickstart-file.ks
    # chmod 444 /var/ftp/your-kickstart-file.ks
    
  3. Запустите службу vsftpd.

# systemctl start vsftpd.service

Если служба была запущена до изменения файла /etc/vsftpd/vsftpd.conf, выполните следующую команду для перезапуска службы и загрузки отредактированного файла:

# systemctl restart vsftpd.service

Включите службу vsftpd для запуска во время процесса загрузки:

# systemctl enable vsftpd

Теперь Kickstart-файл доступен по FTP и готов к использованию для установки.

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

  • ftp:// в качестве протокола

  • затем имя хоста или IP-адрес сервера

  • путь к Kickstart-файлу относительно корня FTP-сервера

Например, если имя сервера — myserver.example.ru и вы сохранили файл в каталоге /var/ftp/my-ks.cfg, то источник установки будет выглядеть следующим образом:

ftp://myserver.example.ru/my-ks.cfg

Запись Kickstart-файла на локальный носитель и обеспечение доступа к нему

Категории локальных носителей:

  • DVD, USB — установочный диск, созданный на основе ISO-образа.

  • Жёсткий диск — установочный ISO-образ может располагаться на жёстком диске.

Предварительные условия

  • У вас есть локальный носитель, который можно подключить к компьютеру для установки, например USB-накопитель или DVD-диск.

  • На диске есть раздел, который может быть прочитан программой установки. Поддерживаемые типы: ext2, ext3, ext4, xfs и fat.

  • Диск (локальный носитель) подключён к системе и его тома примонтированы.

Порядок действий

  1. Узнайте информацию о томе и запишите UUID тома, на который хотите скопировать Kickstart-файл:

# lsblk -l -p -o name,rm,ro,hotplug,size,type,mountpoint,uuid
  1. Перейдите к файловой системе тома.

  2. Скопируйте туда Kickstart-файл.

  3. Запишите строку, которая будет использоваться позже с опцией inst.ks=. Эта строка имеет вид hd:UUID=volume-UUID:path/to/kickstart-file.cfg. Обратите внимание, что путь указывается относительно корня файловой системы, а не / — корня иерархии файловой системы. Замените Volume-UUID на UUID, который вы узнали ранее.

  4. Отмонтируйте все тома дисков:

# umount /dev/xyz ...

Добавьте в команду все тома, разделённые пробелами.

Запись Kickstart-файла на локальный носитель и обеспечение доступа к нему для автоматической загрузки

Kickstart-файл с особым именем может располагаться в корне тома со специальным именем в устанавливаемой системе. В этом случае нет необходимости в другой системе, так как программа установки автоматически загрузит файл.

Предварительные условия

  • У вас есть локальный носитель, который можно подключить к компьютеру для установки, например USB-накопитель или DVD-диск.

  • На диске есть раздел, который может быть прочитан программой установки. Поддерживаемые типы: ext2, ext3, ext4, xfs и fat.

  • Диск (локальный носитель) подключён к системе и его тома примонтированы.

Порядок действий

  1. Узнайте информацию о томе, на который хотите скопировать Kickstart-файл:

# lsblk -l -p
  1. Перейдите к файловой системе тома.

  2. Скопируйте Kickstart-файл в корневой каталог.

  3. Переименуйте Kickstart-файл как ks.cfg.

  4. Переименуйте том как OEMDRV:

  • Для файловой системы ext2, ext3 и ext4:

    # e2label /dev/xyz OEMDRV
    
  • Для файловой системы XFS:

    # xfs_admin -L OEMDRV /dev/xyz
    

Где /dev/xyz — путь к устройству.

  1. Отмонтируйте все тома дисков:

# umount /dev/xyz ...

Добавьте в команду все тома, разделённые пробелами.

Предоставление доступа к установочной инфраструктуре

Процесс установки должен иметь доступ к установочному образу МСВСфера ОС или к дереву установки, которое представляет собой копию МСВСфера ОС на DVD или USB-носителе.

Прежде чем приступить к установке, вставьте DVD-диск USB-носитель (см. раздел Установка и настройка системы). При выполнении установки с жёсткого диска надо будет разместить ISO-образ диска МСВСфера ОС на жёстком диске компьютера (см. раздел Установка и настройка системы). При выполнении сетевой установки (NFS, FTP, HTTP) потребуется открыть доступ к установочному образу DVD.

Начало установки

Запустить Kickstart-установку можно несколькими способами:

  • Вручную, войдя в меню загрузки программы установки и указав там параметры использования Kickstart-файла.

  • Автоматически, путём редактирования параметров загрузки при PXE-загрузке.

  • Автоматически, поместив файл с определённым имененм в локальный том.

Запуск Kickstart-установки вручную

Запуск Kickstart-установки вручную означает, что администратору необходимо добавить параметр загрузки inst.ks=location в boot:, заменив location на путь до вашего Kickstart-файла.

Точный способ указания варианта загрузки и параметры загрузки зависят от архитектуры вашей системы.

Предварительные условия

  • Готовый Kickstart-файл лежит в папке, доступной из устанавливаемой системы.

Порядок действий

  1. Загрузите систему с локального носителя (DVD или USB).

  2. Перейдите в параметры загрузки. Для этого при появлении экрана графической загрузки нажмите Tab при выбранном пункте меню Установить МСВСфера 9.3= Сервер. Внизу экрана графической установки появится строка параметров загрузки.

  3. В конце строки параметров загрузки укажите необходимые сведения:

  • Если Kickstart-файл или необходимый репозиторий находятся в сетевой папке, вам может потребоваться настроить сеть с помощью параметра ip=. Если параметр не используется, то по умолчанию программа установки будет настраивать все сетевые устройства с использованием протокола DHCP.

  • Добавьте параметр загрузки inst.ks= и местоположение Kickstart-файла.

  • Чтобы получить доступ к источнику программного обеспечения, из которого будут установлены необходимые пакеты, вам может потребоваться добавить параметр inst.repo=. Если вы не укажете этот параметр, то необходимо указать источник установки в Kickstart-файле.

  1. Подтвердите добавление параметров и запустите установку. Установка начнётся с использованием параметров, указанных в Kickstart-файле. Если Kickstart-файл составлен правильно и содержит все необходимые команды, с этого момента установка будет полностью автоматизирована.

Примечание

При установке МСВСфера ОС в системах с включённой безопасной загрузкой UEFI, добавьте открытый ключ МСВСфера ОС в список ключей владельца компьютера (MOK).

Автоматический запуск Kickstart-установки с помощью PXE

Системы AMD64 и Intel 64 (а также 64-битные ARM и серверы IBM Power Systems) могут загружаться с помощью PXE-сервера. При настройке PXE-сервера вы можете добавить параметр загрузки в файл конфигурации загрузчика, что, в свою очередь, позволит запускать установку автоматически. Используя такой подход, можно полностью автоматизировать установку, включая процесс загрузки.

Инструкция приводится для общего ознакомления, так как действия различаются в зависимости от архитектуры системы, и не все параметры доступны для всех архитектур.

Предварительные условия

  • Готовый Kickstart-файл лежит в папке, доступной из устанавливаемой системы.

  • Имеется PXE-сервер, который можно использовать для загрузки системы и начала установки.

Порядок действий

  1. Откройте файл конфигурации загрузчика на PXE-сервере и добавьте параметр загрузки inst.ks= в соответствующую строку. Имя файла и его синтаксис зависят от архитектуры и оборудования системы:

    • В системах AMD64 и Intel 64 с BIOS имя файла может быть задано по умолчанию или основано на IP-адресе системы. В этом случае добавьте параметр inst.ks= в строку добавления установки. Пример строки в файле конфигурации:

      append initrd=initrd.img inst.ks=http://10.32.5.1/mnt/archive/msvsphere-9/9.x/x86_64/kickstarts/ks.cfg
      
    • В системах с загрузчиком GRUB2 (AMD64 и Intel 64, а также 64-битные ARM с UEFI и IBM Power Systems) имя файла будет grub.cfg. В этом файле добавьте параметр inst.ks= к строке ядра в записи установки. Пример строки ядра в файле конфигурации:

      kernel vmlinuz inst.ks=http://10.32.5.1/mnt/archive/msvsphere-9/9.x/x86_64/kickstarts/ks.cfg
      
  2. Запустите установку с сетевого сервера. Установка начнётся с использованием параметров, указанных в Kickstart-файле. Если Kickstart-файл составлен правильно и содержит все необходимые команды, установка будет полностью автоматизирована.

Примечание

При установке МСВСфера ОС в системах с включённой безопасной загрузкой UEFI, добавьте открытый ключ МСВСфера ОС в список ключей владельца компьютера (MOK).

Автоматический запуск Kickstart-установки с использованием тома на локальном диске

Вы можете запустить Kickstart-установку, поместив Kickstart-файл с определённым именем в специально помеченный том на локальном диске.

Предварительные условия

  • Определён том с меткой OEMDRV и в его корне лежит Kickstart-файл с именем ks.cfg.

  • Диск с этим томом доступен в системе при загрузке программы установки.

Порядок действий

  1. Загрузите систему с локального носителя (DVD или USB).

  2. Перейдите в параметры загрузки. Для этого при появлении экрана графической загрузки нажмите Tab при выбранном пункте меню Установить МСВСфера 9 Сервер. Внизу экрана графической установки появится строка параметров загрузки.

  3. В конце строки параметров загрузки укажите необходимые сведения:

  • Если необходимый репозиторий находятся в сетевой папке, вам может потребоваться настроить сеть с помощью параметра ip=. Если параметр не используется, то по умолчанию программа установки будет настраивать все сетевые устройства с использованием протокола DHCP.

  • Чтобы получить доступ к источнику программного обеспечения, из которого будут установлены необходимые пакеты, вам может потребоваться добавить параметр inst.repo=. Если вы не укажете этот параметр, то необходимо указать источник установки в Kickstart-файле.

  1. Подтвердите добавление параметров и запустите установку. Kickstart-файл будет обнаружен автоматически и будет использоваться для Kickstart-установки.

Примечание

При установке МСВСфера ОС в системах с включённой безопасной загрузкой UEFI, добавьте открытый ключ МСВСфера ОС в список ключей владельца компьютера (MOK).

Ведение журнала событий во время установки

Программа установки МСВСфера ОС использует терминальный мультиплексор tmux для отображения и управления несколькими окнами в дополнение к основному интерфейсу. Каждое из этих окон служит разным целям: они отображают несколько разных журналов, которые можно использовать для устранения проблем в процессе установки. В одном из окон отображается интерактивное приглашение оболочки с правами root (если только это приглашение не было специально отключено с помощью параметра загрузки или команды в Kickstart-файле).

Примечание

Если нет необходимости диагностировать проблемы установки, то нет причин покидать графическую среду установки по умолчанию.

Терминальный мультиплексор работает в виртуальной консоли 1. Чтобы переключиться из фактической среды установки в tmux, нажмите Ctrl + Alt + F1. Чтобы вернуться к основному интерфейсу установки, который работает в виртуальной консоли 6, нажмите Ctrl + Alt + F6.

Примечание

Если вы проводите установку в текстовом режиме, то запускаете виртуальную консоль 1 (tmux), а при переключении на консоль 6 вместо графического интерфейса откроется приглашение оболочки.

Консоль, на которой запущен tmux, имеет пять доступных окон. Они описаны в таблице ниже вместе с сочетаниями клавиш. Обратите внимание, что сочетания клавиш состоят из двух частей: сначала вы нажимаете Ctrl + b, затем отпускаете обе клавиши и нажимаете цифровую клавишу для окна, которое хотите использовать.

Вы также можете использовать Ctrl + b n, Alt + Tab и Ctrl + b p для переключения на следующее или предыдущее окно tmux соответственно.

Окна tmux

Сочетание клавиш

Окно

Ctrl + b 1

Главное окно программы установки. Содержит текстовые подсказки (во время установки в текстовом режиме или при использовании прямого режима VNC), а также некоторую отладочную информацию.

Ctrl + b 2

Интерактивная командная строка с правами root.

Ctrl + b 3

Журнал установки; отображает сообщения, хранящиеся в /tmp/anaconda.log.

Ctrl + b 4

Журнал устройств хранения; отображает сообщения, относящиеся к устройствам хранения и конфигурации и хранящиеся в /tmp/storage.log.

Ctrl + b 5

Журнал выполнения программ; отображает сообщения от утилит, выполняющих действия в процессе установки и хранящиеся в /tmp/program.log.

Формат Kickstart-файла

Kickstart-файл — это обычный текстовый файл, содержащий параметры установки, каждый из которых определяется ключевым словом (см. Синтаксис команд). Его можно создать в любом текстовом редакторе, способном сохранять файлы в формате ASCII — для этой цели подойдет блокнот в Windows, Gedit и vim в Linux или во встроенном редакторе в macOS.

Обычно вы можете задать любое имя для Kickstart-файла, однако рекомендуется использовать простое имя, так как это имя нужно будет указывать в других файлах или диалоговых окнах.

Команда — это ключевое слово, которое даёт указания программе установки. Каждая команда должна находиться в одной строке. Команда может быть как с параметрами, так и без. Указание команд и параметров аналогично использованию команд Linux в оболочке.

Некоторые специальные команды, начинающиеся с символа процента %, начинают разделы. Интерпретация команд в разделах отличается от интерпретации команд, размещённых вне их. Каждый раздел должен быть завершён директивой %end.

Типы разделов:

  • Раздел надстроек. Начинается с директивы %addon addon_name.

  • Раздел устанавливаемых пакетов. Начинается с директивы %packages В этом разделе можно указать отдельный пакет, группу или целое окружение.

  • Разделы сценариев. Начинаются с директив %pre, %pre-install, %post и %onerror. Это необязательные разделы.

Разделы команд — этот термин используется для обозначения команд в Kickstart-файле, которые не являются частью какого-либо раздела сценария или раздела %packages.

Количество и порядок разделов скрипта

Все разделы, кроме раздела команд, являются необязательными и могут присутствовать несколько раз. Когда необходимо обработать раздел скрипта определённого типа, все разделы этого типа, представленные в Kickstart-файла, обрабатываются в порядке их появления: два раздела %post обрабатываются один за другим, в порядке их появления. Порядок следования разделов не важен — вы можете размещать их в любом порядке, например, не имеет значения, есть ли разделы %post перед разделами %pre.

Строки, начинающиеся с символа #, интерпретируются как комментарии и игнорируются программой установки.

Элементы, не отмеченные как обязательные, могут быть опущены. Если обязательный параметр не определён, программа установки предложит его ввести, так же как и во время обычной установки. После получения ответа установка будет продолжена без вмешательства пользователя (если снова не столкнётся с отсутствующим параметром). С помощью команды cmdline можно прервать выполнение скрипта, если обязательные параметры не определены. В этом режиме любой отсутствующий ответ прерывает процесс установки.

Если в процессе Kickstart-установки в текстовом или графическом режиме требуется взаимодействие с пользователем, используйте только те окна, где взаимодействие обязательно для завершения установки. Чрезмерное взаимодействие может привести к сбросу Kickstart-конфигурации. В частности, сброс конфигурации применяется к Kickstart-командам, связанным с хранилищем, после входа в окно «Место установки».

Выбор пакетов

Команда %packages` отмечает начало разделов устанавливаемых пакетов. Здесь вы можете указать отдельный пакет, группу или целое окружение. Список групп и окружений можно найти в файле repodata/*-comps-вариант.архитектура.xml на установочном диске МВССфера ОС. Раздел %packages должен завершаться директивой %end.

В файле *-comps-вариант.архитектура.xml окружения отмечены тегом <environment>, а группы — тегом <group>. Каждая запись имеет свой идентификатор, признак отображения для пользователей, имя, описание и список пакетов. Пакеты, отмеченные как обязательные (mandatory), будут всегда устанавливаться при установке группы, пакеты default автоматически выбираются при выборе группы, если они специально не исключены, а пакеты optional должны быть заданы явно, даже если группа выбрана.

Группы и окружения можно выбрать по имени (тег <name>) и идентификатору (тег <id>).

Если вы не уверены, какой пакет следует установить, рекомендуется выбирать минимальную установку. В этом случае будут установлены только те пакеты, которые необходимы для работы МСВСфера ОС. Это существенно снизит вероятность возникновения уязвимости в системе. При необходимости дополнительные пакеты можно будет добавить после установки. Обратите внимание, что если в процессе установки из Kickstart-файла не была установлена система X Window и среда рабочего стола, а также не была включена графическая авторизация, то после перезагрузки этап первоначальной настройки будет пропущен.

Примечание

Чтобы установить 32-битный пакет в 64-битной системе, необходимо указать его имя и архитектуру, например glibc.i686. Также потребуется добавить параметр --multilib для раздела %packages.

Выбор окружения

Раздел %packages может содержать не только пакеты, но и целые окружения. Окружение необходимо указать в виде строки, начинающейся с символов @^.

Пример:

%packages
@^Infrastructure Server
%end

В примере будет устанвлено окружение Infrastracture Server и, соответственно, все пакеты, входящие в него. Список доступных окружений можно найти в файле repodata/*-comps-вариант.архитектура.xml на установочном диске МСВСфера ОС. Kickstart-файл должен содержать только одно окружение, если указано несколько окружений, то будет установлено последнее в списке.

Установка МСВСфера ОС АРМ

Для установки МСВСфера ОС АРМ с помощью Kickstart-файла (при выполнении условий, перечисленных в разделе Ограничения) необходимо указать следующее окружение:

%packages
@^workstation-product-environment
%end

Выбор групп

В каждой строке определяется по одной группе, начиная со знака @. Затем указываются полные имена или идентификаторы групп как в файле *-comps-вариант.архитектура.xml.

Пример:

%packages
@X Window System
@Desktop
@Sound and Video
%end

Основные группы пакетов (Core) будут выбраны по умолчанию, поэтому их не надо указывать в разделе %packages.

Выбор отдельных пакетов

Отдельные пакеты указываются по одному в строке по имени. Допускается использование шаблонов (*).

Пример:

%packages
sqlite
curl
aspell
docbook*
%end

Так, запись docbook* включает пакеты docbook-dtds, docbook-style, docbook-slides и т.п.

Выбор профилей с модулями

Профили для модулей указываются по одной записи в строке, с помощью синтаксиса профилей.

Пример:

%packages
@module:stream/profile
%end

Будут установлены все пакеты, перечисленные в указанном профиле модуля.

  • Если для модуля указан поток по умолчанию, вы можете его не указывать. Если поток по умолчанию не указан, его необходимо указать.

  • Если для потока модуля указан профиль по умолчанию, вы можете его не указывать. Если профиль по умолчанию не указан, его необходимо указать.

  • Установка модуля несколько раз с разными потоками невозможна.

  • Возможна установка нескольких профилей одного и того же модуля и потока.

Синтаксис для модулей и групп одинаковый, строка должна начинаться с символа @. Если модуль и группа пакетов имеют одинаковые имена, модуль имеет приоритет.

В МСВСфера ОС 9 модули есть только в репозитории AppStream. Чтобы просмотреть список доступных модулей, выполните следующую команду в установленной системе:

dnf module list

Также можно включить потоки модулей с помощью команды Kickstart module, а затем установить пакеты, содержащиеся в потоке модуля, указав их напрямую.

Исключение окружений, групп и пакетов

Добавление дефиса (-) перед именами пакетов и групп исключает их из списка установки.

Пример:

%packages
-@Graphical Administration Tools
-autofs
-ipa*compat
%end

Установка всех доступных пакетов с использованием только шаблона * в Kickstart-файле не поддерживается.

Вы можете контролировать поведение раздела %packages с помощью параметров. Некоторые параметры применимы для всех пакетов, другие — только с определёнными группами.

Общие параметры выбора пакетов

Ниже перечислены параметры раздела %packages. Параметры добавляются в конец заголовка раздела.

Пример:

%packages --multilib --ignoremissing
--default

Установить набор пакетов по умолчанию. Соответствует набору пакетов, который был бы установлен, если бы во время обычной установки на экране выбора пакетов не было бы выбрано ничего.

--excludedocs

Исключить документацию пакетов. В большинстве случаев это означает исключение файлов из /usr/share/doc.

--ignoremissing

Игнорировать недостающие пакеты, группы, потоки модулей и окружения вместо того, чтобы приостановить установку и ожидать подтверждения продолжения.

--inst-langs

Определяет список языков для установки. Обратите внимание, что это отличается от выбора на уровне группы пакетов. Этот параметр не описывает, какие группы пакетов следует установить; вместо этого он устанавливает макросы RPM, управляющие тем, какие файлы перевода из отдельных пакетов следует устанавливать.

--multilib

Разрешает установку 32-битных пакетов в 64-битных системах. Обычно на платформах AMD64 и Intel 64 по умолчанию устанавливаются пакеты, предназначенные для заданной архитектуры (например, x86_64) и стандартные пакеты (noarch). Этот параметр разрешает установку 32-битных пакетов (i686). Этот подход применим только к пакетам, явно указанным в разделе %packages. Если же пакет участвует в решении зависимостей и не указан в Kickstart-файле, будет установлена только необходимая версия. Вы можете настроить Anaconda для установки пакетов в режиме --multilib при установке системы. Вы можете сделать это одним из следующих способов:

  • Добавьте в Kickstart-файл следующие строки:

    %packages --multilib --default
    %end
    
  • Добавьте параметр загрузки inst.multilib во время загрузки установочного образа.

--nocore

Отключить установку группы пакетов @Core, которая всегда устанавливается по умолчанию. Отключение группы пакетов @Core с помощью --nocore следует использовать только для создания контейнеров; установка МСВСфера АРМ и Сервер с --nocore приведёт к непригодности системы.

  • Невозможно исключить пакеты из группы пакетов @Core с помощью -@Core. Единственный способ исключить группу пакетов @Core — использовать опцию --nocore.

  • В группу пакетов @Core входит минимальный набор пакетов, необходимых для установки работающей системы. Он никак не связан с основными пакетами.

--exclude-weakdeps

Отключить установку пакетов со слабыми зависимостями. Это пакеты, связанные с выбранным пакетом с помощью флагов Recommends и Supplements. По умолчанию будут установлены слабые зависимости.

--retries=

Задать число повторных попыток DNF загрузить пакеты. По умолчанию — 10. Этот параметр применяется только во время установки и не влияет на конфигурацию DNF в установленной системе.

--timeout=

Задать таймаут DNF в секундах. По умолчанию — 30. Этот параметр применяется только во время установки и не влияет на конфигурацию DNF в установленной системе.

Параметры для отдельных групп

Чтобы определить параметры для конкретной группы пакетов, надо добавить их после названия группы.

Пример:

%packages
@Graphical Administration Tools --optional
%end
--nodefaults

Установить только обязательные пакеты, а не стандартный набор.

--optional

Установить дополнительные пакеты группы согласно списку в *-comps-вариант.архитектура.xml. Обратите внимание, что для некоторых групп пакетов, таких как Scientific Support, не указаны обязательные пакеты или пакеты по умолчанию — только дополнительные пакеты. В этом случае всегда необходимо использовать опцию --optional, иначе пакеты из этой группы не будут установлены.

Параметры --nodefaults и --optional нельзя использовать вместе. Вы можете установить только обязательные пакеты во время установки, используя --nodefaults, а дополнительные пакеты установить в систему после завершения установки.

Сценарии в Kickstart-файле

Kickstart-файл может включать следующие сценарии:

  • %pre

  • %pre-install

  • %post

Ниже вы найдёте следующие сведения о сценариях:

  • Время исполнения

  • Типы команд, которые можно включить в сценарий

  • Цель сценария

  • Параметры сценария

Сценарий %pre

В разделе %pre определяются команды, которые будут выполняться сразу после обработки Kickstart-файла, но до начала установки. Этот раздел должен располагаться ближе к концу файла, начинаться с директивы %pre и заканчиваться директивой %end.

Сценарий %pre можно использовать для активации и настройки сетевых устройств и устройств хранения данных. Также можно запускать сценарии, используя интерпретаторы, доступные в среде установки. Добавление сценария %pre может оказаться полезным, если у вас есть сеть и хранилище, требующие специальной настройки перед продолжением установки, или если у вас есть сценарий, который, например, настраивает дополнительные параметры журналирования или переменные окружения.

Отладка проблем со сценариями %pre может быть затруднена, поэтому рекомендуется использовать их только при необходимости.

Раздел %pre Kickstart-файла выполняется на этапе установки, который происходит после получения образа установщика (inst.stage2), то есть после переключения root на среду установщика (образ установщика) и после запуска самого установщика Anaconda. Затем применяется конфигурация %pre, и её можно использовать для получения пакетов из установочных репозиториев, настроенных, например, по URL-адресу в Kickstart-файле. Однако его нельзя использовать для настройки сети для получения образа (inst.stage2) из сети.

Команды, связанные с сетью, хранилищем и файловыми системами, можно использовать в сценарии %pre в дополнение к большинству утилит в каталогах среды установки /sbin и /bin.

В этом разделе можно обращаться к сети, но так как на этом этапе служба имён еще не настроена, следует использовать IP-адреса.

Примечание

Сценарий %pre не выполняется в окружении chroot.

Ниже перечислены параметры %pre. Они добавляются в конец заголовка раздела:

 %pre --interpreter=/usr/libexec/platform-python
-- Python script omitted --
 %end
--interpreter=

Указать другой язык сценариев, например Python. Можно использовать любой язык, доступный в системе; в большинстве случаев это /usr/bin/sh, /usr/bin/bash и /usr/libexec/platform-python.

Обратите внимание, что интерпретатор платформы Python использует Python версии 3.9. Если вы используете Python-скрипты из предыдущих версий системы, необходимо изменить путь и версию. Кроме того, Python-платформа предназначена для системных инструментов: используйте пакет python36 вне среды установки.

--erroronfail

При сбое сценария показать сообщение об ошибке и прервать установку. Сообщение об ошибке показывает где зарегистрирована причина сбоя. Установленная система может стать нестабильной и не загружаться. Вы можете использовать параметр inst.nokill для отладки скрипта.

--log=

Вывод сообщений сценария в заданный файл:

%pre --log=/tmp/ks-pre.log

Сценарий %pre-install

Команды сценария %pre-install запускаются после выполнения следующих задач:

  • Система разбита на разделы.

  • Файловые системы созданы и смонтированы в /mnt/sysroot.

  • Сеть настроена в соответствии с параметрами загрузки и командами Kickstart-файла.

Раздел должен начинаться с директивы %pre-install и заканчиваться директивой %end.

Сценарий %pre-install можно использовать для изменения установки, а также для добавления пользователей и групп с заданными идентификаторами перед установкой пакетов.

Для изменений, необходимых в процессе установки, рекомендуется использовать сценарии %post. Используйте сценарий %pre-install только в том случае, если сценарий %post не позволяет внести необходимые изменения.

Примечание

Сценарий %pre-install не выполняется в окружении chroot.

Ниже перечислены параметры %pre-install. Они добавляются в конец заголовка раздела:

%pre-install --interpreter=/usr/libexec/platform-python
-- Python script omitted --
%end

Может быть несколько разделов %pre-install с одинаковыми или разными интерпретаторами. Они обрабатываются в порядке их появления в Kickstart-файле.

--interpreter=

Указать другой язык сценариев, например Python. Можно использовать любой язык, доступный в системе; в большинстве случаев это /usr/bin/sh, /usr/bin/bash и /usr/libexec/platform-python.

Обратите внимание, что интерпретатор платформы Python использует Python версии 3.6. Если вы используете Python-скрипты из предыдущих версий системы, необходимо изменить путь и версию. Кроме того, Python-платформа предназначена для системных инструментов: используйте пакет python36 вне среды установки.

--erroronfail

При сбое сценария показать сообщение об ошибке и прервать установку. Сообщение об ошибке показывает где зарегистрирована причина сбоя. Установленная система может стать нестабильной и не загружаться. Вы можете использовать параметр inst.nokill для отладки скрипта.

--log=

Вывод сообщений сценария в заданный файл:

%pre-install --log=/mnt/sysroot/root/ks-pre.log

Сценарий %post

В разделе %post определяются команды, которые будут выполняться после установки, но до перезагрузки системы. Этот раздел должен располагаться после раздела команд ближе к концу файла, начинаться с директивы %post и заканчиваться директивой %end.

В этом разделе можно установить дополнительные программы или настроить сервер имён. Сценарий %post выполняется в окружении chroot, поэтому некоторые задачи (такие как копирование сценариев и пакетов с установочных носителей) выполнить не удастся. Это поведение можно изменить с помощью --nochroot. Тогда сценарий %post будет выполняться в среде установки, а не в chroot установленной системы.

Поскольку сценарий %post выполняется в среде chroot, большинство команд systemctl не выполняются.

Обратите внимание, что во время выполнения сценария %post установочный носитель должен быть вставлен.

Ниже перечислены параметры %post. Параметры добавляются в конец заголовка раздела:

%post --interpreter=/usr/libexec/platform-python
-- Python script omitted --
%end
--interpreter=

Указать другой язык сценариев, например Python. Можно использовать любой язык, доступный в системе; в большинстве случаев это /usr/bin/sh, /usr/bin/bash и /usr/libexec/platform-python.

Обратите внимание, что интерпретатор платформы Python использует Python версии 3.6. Если вы используете Python-скрипты из предыдущих версий системы, необходимо изменить путь и версию. Кроме того, Python-платформа предназначена для системных инструментов: используйте пакет python36 вне среды установки. Пример:

%post --interpreter=/usr/libexec/platform-python
--nochroot

Указать команды, запускаемые вне среды chroot. В примере файл /etc/resolv.conf копируется в только что установленную файловую систему:

%post --nochroot
cp /etc/resolv.conf /mnt/sysroot/etc/resolv.conf
%end
--erroronfail

При сбое сценария показать сообщение об ошибке и прервать установку. Сообщение об ошибке показывает где зарегистрирована причина сбоя. Установленная система может стать нестабильной и не загружаться. Вы можете использовать параметр inst.nokill для отладки скрипта.

--log=

Сохраняет протокол выполнения сценария в файл. Путь должен учитывать наличие --nochroot. Пример без --nochroot:

%post --log=/root/ks-post.log

Пример c --nochroot:

%post --nochroot --log=/mnt/sysroot/root/ks-post.log

Ниже приведён пример сценария %post. В этом примере будет подключен внешний NFS-ресурс и запущен сценарий runme из /usr/new-machines/. Аргумент -o nolock в этом случае является обязательным, так как NFS-блокирование файлов в Kickstart-режиме не поддерживается.

# Начало раздела %post, журнал в /root/ks-post.log
%post --log=/root/ks-post.log

# Монтирование NFS-ресурса
mkdir /mnt/temp
mount -o nolock 10.10.0.2:/usr/new-machines /mnt/temp
openvt -s -w -- /mnt/temp/runme
umount /mnt/temp

# Конец раздела %post
%end

Раздел обработки ошибок

Начиная МСВСфера ОС 8, Kickstart-установка может содержать пользовательские сценарии, которые запускаются, когда программа установки обнаруживает фатальную ошибку. Например, ошибка в пакете, который был запрошен для установки, сбой при запуске VNC или ошибка при сканировании устройств хранения данных — после таких ошибок установка не может быть продолжена.

Сценарии %onerror выполняются в порядке следования в Kickstart-файле. Кроме того, сценарии %onerror выполняются в случае обратной отладки.

Раздел должен начинаться с директивы %onerror и заканчиваться директивой %end.

Параметры:

--erroronfail

При сбое сценария показать сообщение об ошибке и прервать установку. Сообщение об ошибке показывает где зарегистрирована причина сбоя. Установленная система может стать нестабильной и не загружаться. Вы можете использовать параметр inst.nokill для отладки скрипта.

--interpreter=

Указать другой язык сценариев, например Python. Можно использовать любой язык, доступный в системе; в большинстве случаев это /usr/bin/sh, /usr/bin/bash и /usr/libexec/platform-python. Обратите внимание, что интерпретатор платформы Python использует Python версии 3.6. Если вы используете Python-скрипты из предыдущих версий системы, необходимо изменить путь и версию. Кроме того, Python-платформа предназначена для системных инструментов: используйте пакет python36 вне среды установки. Пример:

%onerror --interpreter=/usr/libexec/platform-python
--log=

Вывод сообщений сценария в заданный файл.

Раздел надстроек

Начиная МСВСфера ОС 8, в Kickstart-установке поддерживаются надстройки. Такие надстройки могут довольно сильно расширить базовую функциональность как Kickstart-установки, так и в Anaconda.

Для подключения надстроек в Kickstart-файле раздел должен начинаться с директивы %addon addon_name options и заканчиваться директивой %end.

Например, если вы хотите использовать надстройку Kdump, которая по умолчанию поставляется вместе с Anaconda, используйте следующие команды:

%addon com_redhat_kdump --enable --reserve-mb=auto
%end

Команда %addon не имеет собственных параметров — все параметры определяются подключаемой надстройкой.

Синтаксис команд

Изменения синтаксиса

В целом, структура Kickstart-файла не изменилась с момента его первоначального выхода, но синтаксис команд и параметров время от времени подвергается изменениям.

Устаревшие команды и параметры

Команда auth (authconfig) устарела ещё в 8 версии МСВСфера ОС поскольку инструмент и пакет authconfig были удалены.

Подобно authconfig в командной строке, команды authconfig в Kickstart-сценариях теперь используют инструмент authselect-compat для запуска нового authselect. Описание совместимости и известных проблем можно прочитать в руководстве authselect-migration(7). Программа установки автоматически обнаруживает устаревшие команды и устанавливает пакет authselect-compat для обеспечения совместимости.

Вы также можете адаптировать Kickstart-файлы, использовавшиеся в предыдущей версии операционной системы.

Следующие команды и параметры Kickstart-файла устарели в версии МСВСфера ОС 9.

  • timezone --ntpservers (вместо неё используется команда timesource)

  • timezone --nontp

  • logging --level

  • %packages --excludeWeakdeps (вместо этого используется --exclude-weakdeps)

  • %packages --instLangs (вместо этого используется --inst-langs)

  • %anaconda

  • pwpolicy (вместо этого используйте файлы конфигурации Anaconda)

  • syspurpose (вместо этого используется subscription-manager syspurpose)

Если указаны только определённые параметры, базовая команда и другие её параметры по-прежнему доступны и не устарели. При использовании устаревших команд в Kickstart-файле выводится предупреждение в журнале регистрации. Вы можете выводить предупреждения об ошибках с помощью параметра загрузки inst.ksstrict.

Удалённые команды и параметры

Следующие команды и параметры полностью удалены в МСВСфера ОС 9. Их использование в Kickstart-файле приводит к ошибкам.

  • device

  • deviceprobe

  • dmraid

  • install (используйте подкоманды или методы непосредственно как команды)

  • multipath

  • bootloader --upgrade

  • ignoredisk --interactive

  • partition --active

  • harddrive --biospart

  • autostep

Если указаны только определенные параметры и значения, базовая команда и другие её параметры по-прежнему доступны и не были удалены.

Команды настройки программы установки и управления потоком

cdrom (дополнительная)

Выполнить установку с первого оптического привода в системе.

Синтаксис

cdrom

Замечания

  • У этой команды нет параметров.

  • Чтобы запустить установку, необходимо указать один из следующих дисков: cdrom, harddrive, hmc, nfs, liveimg, ostreesetup, rhsm, или url, если в командной строке ядра не указана опция inst.repo.

cmdline (дополнительная)

Выполнить установку без взаимодействия с пользователем (в командной строке). При любом запросе на взаимодействие с пользователем установка будет прервана.

Синтаксис

cmdline

Замечания

  • У этой команды нет параметров.

  • Для полностью автоматической установки необходимо либо указать один из доступных режимов (graphical, text, cmdline). в Kickstart-файле, либо использовать параметр загрузки console=. Если режим не указан, система будет устанавливаться в графическом режиме, если это возможно, или предложит выбрать VNC или текстовый режим.

driverdisk (дополнительная)

Предоставить программе установки дополнительные драйверы. Диски с драйверами можно использовать во время Kickstart-установки для предоставления дополнительных драйверов, не включённых по умолчанию. Содержимое дисков с драйверами необходимо скопировать в корневой каталог раздела на жёстком диске системы. Затем вы должны использовать команду driverdisk, чтобы указать, что программа установки должна искать диск с драйверами и его местоположение.

Синтаксис

driverdisk [partition|--source=url|--biospart=biospart]

Параметры

Местоположение диска с драйверами необходимо указать одним из следующих способов:

  • partition — раздел, содержащий диск с драйверами. Обратите внимание, что для раздела необходимо указать полный путь (например, /dev/sdb1), а не только имя раздела (например, sdb1).

  • --source= — URL-адрес диска с драйверами. Пример:

    driverdisk --source=ftp://path/to/dd.img
    driverdisk --source=http://path/to/dd.img
    driverdisk --source=nfs:host:/path/to/dd.img
    
  • --biospart= — раздел BIOS, содержащий диск с драйверами (например, 82p2).

Замечания

Диски с драйверами также можно загружать с жёсткого диска или аналогичного устройства вместо загрузки по сети или из initrd. Порядок действий:

  • Загрузите диск с драйверами на жёсткий диск, USB-накопитель или любое подобное устройство;

  • Задайте метку этому устройству, например, DD;

  • Добавьте следующую строку в Kickstart-файл:

    driverdisk LABEL=DD:/e1000.rpm
    

Вместо DD укажите метку, вместо e1000.rpm укажите имя. Используйте всё, что поддерживается командой inst.repo, вместо LABEL, чтобы указать ваш жёсткий диск.

eula (дополнительная)

Принять лицензионное соглашение с конечным пользователем (EULA) без взаимодействия с пользователем. Если параметр указан, то при первоначальной установке пользователю не будет предлагаться принять лицензионное соглашение после завершения установки и первой перезагрузки системы.

Синтаксис

eula [--agreed]

Параметры

  • --agreed (обязательный) — принять лицензионное соглашение. Эту опцию необходимо использовать всегда, иначе команда eula не имеет смысла.

firstboot (дополнительная)

Определяет, запускать ли приложение начальной настройки при первой загрузке системы. Если параметр включён, необходимо установить пакет начальной установки. Если ничего не указано, опция по умолчанию отключена.

Синтаксис

firstboot OPTIONS

Параметры

  • --enable или --enabled — начальная установка запускается при первой загрузке системы.

  • --disable или --disabled — начальная установка не запускается при первой загрузке системы.

  • --reconfig — включить начальную настройку для запуска во время загрузки в режиме реконфигурации. В этом режиме в дополнение к настройкам по умолчанию доступны параметры конфигурации пароля root, времени и даты, а также сети и имени хоста.

graphical (дополнительная)

Выполнять устновку в графическом режиме. Значение по умолчанию.

Синтаксис

graphical [--non-interactive]

Параметры

  • --non-interactive — выполнять установку без взаимодействия с пользователем. Если требуется вмешательство пользователя, установка прекратится.

Замечания

  • Для полностью автоматической установки без взаимодействия с пользователем необходимо указать в Kickstart-файле один из доступных режимов (graphical, text, cmdline) или использовать параметр загрузки console=. Если режим не указан, система будет использовать графический режим, если это возможно, или предложит выбрать VNC или текстовый режим.

halt (дополнительная)

Остановить систему после успешного завершения установки. Поведение команды похоже на поведение при установке вручную, когда Anaconda отображает сообщение и ожидает нажатия клавиши для перезагрузки. Если во время Kickstart-установки метод завершения не указан, то этот метод используется по умолчанию.

Синтаксис

halt

Замечания

  • Команда halt аналогична команде shutdown -H.

  • За дополнительной информацией обратитесь к описанию команд poweroff, reboot и shutdown.

  • У этой команды нет параметров.

harddrive (дополнительная)

Выполнить установку из дерева установки или полного установочного ISO-образа на локальном диске. Диск должен быть отформатирован в файловой системе, которую может смонтировать программа установки: ext2, ext3, ext4, vfat и xfs.

Синтаксис

harddrive OPTIONS

Параметры

  • --partition= — раздел с каталогом установки (например, sdb2).

  • --dir= — DVD, ISO-образ или каталог, содержащий дерево установки.

Пример

harddrive --partition=hdb2 --dir=/tmp/install-tree

Замечания

  • Ранее команда harddrive использовалась совместно с командой install. Команда install устарела и теперь команду harddrive можно использовать отдельно, поскольку она подразумевает установку.

  • Чтобы фактически запустить установку, необходимо указать одно из значений: cdrom, harddrive, hmc, nfs, liveimg, ostreesetup, rhsm, url, если в командной строке ядра не указана опция inst.repo.

liveimg (дополнительная)

Выполнить установку из образа вместо пакетов.

Синтаксис

liveimg --url=SOURCE [OPTIONS]

Обязательные параметры

  • --url= — путь к образу. Поддерживаемые протоколы: HTTP, HTTPS, FTP и file.

  • --dir= — DVD, ISO-образ или каталог, содержащий дерево установки.

Дополнительные параметры

  • --proxy= — определяет прокси HTTP, HTTPS или FTP.

  • --checksum= (дополнительный параметр) — контрольная сумма SHA256.

  • --noverifyssl — отключает проверку SSL при подключении к серверу HTTPS.

Пример

liveimg --url=file:///images/install/squashfs.img --checksum=03825f567f17705100de3308a20354b4d81ac9d8bed4bb4692b2381045e56197 --noverifyssl

Замечания

  • Образом может быть файл squashfs.img из живого ISO-образа, архив (.tar, .tbz, .tgz, .txz, .tar.bz2, .tar.gz или .tar.xz), или любая файловая система, которую может смонтировать установочный носитель. Поддерживаемые файловые системы: ext2, ext3, ext4, vfat и xfs.

  • При использовании режима установки liveimg с диска с драйверами, находящиеся на диске драйверы не будут автоматически включены в устанавливаемую систему. При необходимости эти драйверы следует установить вручную или определить в разделе %post сценария Kickstart.

  • Для фактического запуска установки необходимо указать один из следующих параметров: cdrom, harddrive, hmc, nfs, liveimg, ostreesetup, rhsm или url, если в командной строке ядра не указана опция inst.repo.

logging (дополнительная)

Отвечает за ведение записей в журнале ошибок Anaconda. Не влияет на установленную систему.

Примечание

Ведение журнала поддерживается только через TCP. Для удалённого ведения журнала убедитесь, что номер порта, указанный в опции --port=, открыт на удалённом сервере. Порт по умолчанию — 514.

Синтаксис

logging OPTIONS

Дополнительные параметры

  • --host= — узел, на котором ведётся журнал. Чтобы использовать функции удалённого журналирования, необходимо, чтобы на узле выполнялся процесс syslogd.

  • --port= — порт для подключения удалённого процесса syslogd (если не используется порт по умолчанию).

mediacheck (дополнительная)

Выполнить проверку носителя до начала установки. Так как проверка должна проводиться под наблюдением пользователя, по умолчанию параметр отключён.

Синтаксис

mediacheck

Замечания

  • Команда mediacheck аналогична параметру загрузки rd.live.check.

  • У этой команды нет параметров.

nfs (дополнительная)

Выполнить установку с указанного NFS-сервера.

Синтаксис

nfs OPTIONS

Параметры

  • --server= — имя или IP-адрес сервера, с которого будет выполняться установка.

  • --dir= — каталог дерева установки.

  • --opts= (дополнительный) — параметры монтирования.

Пример

nfs --server=nfsserver.example.com --dir=/tmp/install-tree

Замечания

  • Для фактического запуска установки необходимо указать один из следующих параметров: cdrom, harddrive, hmc, nfs, liveimg, ostreesetup, rhsm или url, если в командной строке ядра не указана опция inst.repo.

ostreesetup (дополнительная)

Настроить установку на основе OStree.

Синтаксис

ostreesetup --osname=OSNAME [--remote=REMOTE] --url=URL --ref=REF [--nogpg]

Обязательные параметры

  • --osname=OSNAME — корень управления для установки ОС.

  • --url=URL — URL-адрес репозитория для установки.

  • --ref=REF — имя ветки репозитория, которая будет использоваться для установки.

Дополнительные параметры

  • --remote=REMOTE — метостоположение репозитория.

  • --nogpg — отключить проверку ключа GPG.

Замечания

  • Дополнительную информацию об инструментах OStree вы можете найти документации: https://ostreedev.github.io/ostree/

poweroff (дополнительная)

После установки завершает работу системы и отключает питание компьютера. Обычно при установке вручную Anaconda выводит на экран сообщение и ожидает нажатия клавиши для перезагрузки.

Синтаксис

poweroff

Замечания

  • Команда poweroff аналогична команде shutdown -P.

  • Другие команды завершения: halt, reboot и shutdown. Если метод завершения явно не указан, по умолчанию выбирается halt.

  • Функции poweroff сильно зависят от оборудования компьютера. В частности, необходимо, чтобы BIOS, APM (Advanced Power Management) и ACPI (Advanced Configuration and Power Interface) могли правильно взаимодействовать с ядром системы. Подробную информацию об APM и ACPI можно найти в документации оборудования.

  • У этой команды нет параметров.

reboot (дополнительная)

Перезагрузить компьютер после успешного завершения установки (без аргументов). Обычно после Kickstart-установки на экране будет показано сообщение, и пользователь должен будет нажать клавишу для перезагрузки.

Синтаксис

reboot OPTIONS

Параметры

  • --eject — прежде чем установленная система будет перезагружена, эта команда попытается извлечь установочный носитель (DVD, USB, и др.).

  • --kexec — вместо полной перезагрузки использовать системный вызов kexec, который немедленно загружает установленную систему в память, минуя инициализацию оборудования, обычно выполняемую BIOS или прошивкой.

Важно

Эта команда признана устаревшей и доступна только в виде функции Technology Preview.

Важно

При использовании kexec регистры устройств (которые обычно очищаются во время полной перезагрузки системы) могут оставаться заполненными данными, что потенциально может создать проблемы для некоторых драйверов.

Замечания

  • Команда reboot может привести к зацикливанию установки в зависимости от выбранного носителя и способа установки.

  • Команда reboot аналогична команде shutdown -r.

  • Другие методы завершения работы системы включают halt, poweroff и shutdown. Если в Kickstart-файле явно не указан режим завершения, по умолчанию будет использоваться halt.

shutdown (дополнительная)

Завершить работу системы после успешной установки.

Синтаксис

shutdown

Замечания

  • Kickstart-команда shutdown аналогична команде shutdown.

  • Другие методы завершения работы включают halt, poweroff и reboot. Если метод явно не указан, будет выбран halt.

  • У этой команды нет параметров.

sshpw (дополнительная)

За ходом установки можно следить, удалённо подключившись к системе по SSH. С помощью команды sshpw можно создать временные учётные записи для подключения. Каждый вызов команды создает новую учётную запись в среде установки. После установки временные записи будут удалены.

Синтаксис

sshpw --username=name [OPTIONS] password

Обязательные параметры

  • --username=name — обязательное имя пользователя.

  • password — обязательный пароль для пользователя.

Дополнительные параметры

  • --iscrypted — сообщает, что пароль зашифрован. Параметры --plaintext и --iscrypted являются взаимоисключающими. Зашифровать пароль можно следующим образом:

    $ python3 -c 'import crypt,getpass;pw=getpass.getpass();print(crypt.crypt(pw) if (pw==getpass.getpass("Confirm: ")) else exit())'
    

    Эта команда создаст шифр sha512 с использованием заданной случайной строки (соли).

  • --plaintext — сообщает, что пароль определён в открытом виде. --plaintext и --iscrypted являются взаимоисключающими.

  • --lock — блокирует учётную запись, то есть пользователи не смогут авторизоваться из консоли.

  • --sshkey — интерпретитровать строку <password> как значение ключа ssh.

Замечания

  • Во время установки ssh по умолчанию не запускается. За активацию ssh отвечает параметр inst.sshd.

  • Чтобы ограничить ssh-доступ для root (разрешив другим пользователям) на время установки, выполните следующую команду:

    sshpw --username=example_username example_password --plaintext
    sshpw --username=root example_password --lock
    
  • Чтобы отключить ssh-доступ для root на время установки, выполните следующую команду:

    sshpw --username=root example_password --lock
    

text (дополнительная)

Выполнить установку в текстовом режиме. По умолчанию установка выполняется в графическом режиме.

Синтаксис

text [--non-interactive]

Параметры

  • --non-interactive — выполниь установку без взаимодействия с пользователем. Установка прекратится, когда потребуется вмешательство пользователя.

Замечания

  • Для полностью автоматической установки необходимо либо указать один из доступных режимов (graphical, text, cmdline) в Kickstart-файле, либо использовать параметр загрузки console=. Если режим не указан, система будет устанавливаться в графическом режиме, если это возможно, или предложит выбрать VNC или текстовый режим.

url (дополнительная)

Выполнить установку из образа дерева установки на удаленном сервере с использованием протокола FTP, HTTP или HTTPS. Можно указать только один URL. Необходимо указать один из параметров --url, --metalink и --mirrorlist.

Синтаксис

url --url=FROM [OPTIONS]

Параметры

  • --url=FROM — адрес файла установки или протокол: HTTP, HTTPS, FTP.

  • --mirrorlist= — адрес зеркала.

  • --proxy= — прокси-сервер HTTP, HTTPS или FTP.

  • --noverifyssl — отключает проверку SSL при подключении к серверу HTTPS.

  • --metalink=URL — URL-адрес metalink. Подстановка переменных производится для $releasever и $basearch в URL.

Примеры

  • Установить с HTTP-сервера:

    url --url=http://server/path
    
  • Установить с FTP-сервера:

    url --url=ftp://username:password@server/path
    

Замечания

  • Чтобы запустить установку, вы должны указать одно из значений: cdrom, harddrive, hmc, nfs, liveimg, ostreesetup, rhsm, url, если в командной строке ядра не указана опция inst.repo.

vnc (дополнительная)

Разрешает удалённое подключение к графической установке с помощью VNC, что более предпочтительно по сравнению с вынужденным переходом в текстовый режим в силу его ограничений по размеру и языку. Если команда используется без параметров, VNC-сервер будет запущен без пароля, и на экране появится сообщение с информацией о подключении к удалённому компьютеру.

Синтаксис

vnc [--host=host_name] [--port=port] [--password=password]

Параметры

  • --host= — подключение к клиенту VNC, прослушивающему заданный узел.

  • --port= — порт, который будет прослушиваться клиентом VNC. Если не задан, Anaconda использует порт VNC по умолчанию — 5900.

  • --password= — пароль доступа к сеансу VNC. Этот параметр не является обязательным, но рекомендуется его задать.

%include (дополнительная)

Включить содержимое другого файла в Kickstart-файл, как если бы это содержимое находилось в месте указания команды %include. Такие включения будут обрабатываться после раздела %pre, что может использоваться для включения файлов, созданных сценариями, в разделы %pre.

Для включения файлов до обработки раздела %pre используется команда %ksappend.

Синтаксис

%include path/to/file

%ksappend (дополнительная)

Включить содержимое другого файла в Kickstart-файл, как если бы это содержимое находилось в месте указания команды %ksappend. Такие включения будут обрабатываться перед разделом %pre, в отличие от включения с помощью команды %include.

Синтаксис

%ksappend path/to/file

Команды настройки системы

Команды используются для настройки дополнительных сведений о системе, таких как пользователи, репозитории или службы.

auth или authconfig (устарела)

Предупреждение

Вместо устаревшей команды auth или authconfig используйте команду authselect. Команды auth и authconfig доступны в ограниченной функциональности для обеспечения обратной совместимости.

Определяет параметры аутентификации в системе. Аналогичные функции выполняет команда authconfig, которую можно выполнить после установки.

Синтаксис

authconfig [OPTIONS]

Замечания

  • Раньше команды auth и authconfig были инструментом authconfig. Этот инструмент устарел. Эти команды теперь используют инструмент authselect-compat для вызова нового инструмента authselect. Программа установки автоматически обнаружит использование устаревших команд и установит в системе пакет authselect-compat для обеспечения совместимости.

  • По умолчанию пароли скрыты.

  • При использовании OpenLDAP с протоколом SSL в целях безопасности убедитесь, что протоколы SSLv2 и SSLv3 отключены в конфигурации сервера. Это связано с уязвимостью SSL POODLE (CVE-2014-3566).

authselect (дополнительная)

Определяет параметры аутентификации в системе. Команду authselect также можно запустить из командной строки после завершения установки.

Синтаксис

authselect [OPTIONS]

Замечания

  • Передаёт все параметры команде authselect. Дополнительную информацию можно получить, выполнив команду authselect --help.

  • Заменяет устаревшие команды auth и authconfig (вместе с инструментом authconfig).

  • По умолчанию пароли скрыты.

  • При использовании OpenLDAP с протоколом SSL в целях безопасности убедитесь, что протоколы SSLv2 и SSLv3 отключены в конфигурации сервера. Это связано с уязвимостью SSL POODLE (CVE-2014-3566).

firewall (дополнительная)

Отвечает за настройку межсетевого экрана.

Синтаксис

firewall --enabled|--disabled [тип] [OPTIONS]

Обязательные параметры

  • --enabled, --enable — отклоняет входящие подключения, которые не отвечают на исходящие запросы, например ответы DNS или запросы DHCP. Если необходим доступ к службам, запущенным на этом компьютере, можно его включить в настройках межсетевого экрана.

  • --disabled, --disable — отключает настройку правил iptables.

Дополнительные параметры

  • --trust= — доверенное устройство, через которое может проходить трафик. Чтобы указать несколько устройств, используйте формат --trust em1 --trust em2. Не разделяйте устройства запятыми. Неверное указание: --trust em1, em2.

  • --remove-service — не разрешать службам проходить через межсетевой экран.

  • тип — это значение можно заменить типом соединений, которые будут пропускаться через экран:

    • --ssh

    • --smtp

    • --http

    • --ftp

  • --port= — список открытых портов в формате порт:протокол. Например, чтобы разрешить доступ IMAP через межсетевой экран, укажите imap:tcp. Номер порта можно указать явно — например, чтобы разрешить прохождение пакетов UDP через порт 1234, введите 1234:udp. Несколько портов разделяются запятыми.

  • --service= — пропускает трафик указанной службы через межсетевой экран. Некоторые службы, такие как cups и avahi, используют несколько портов, поэтому вместо перечисления списка портов и других специальных параметров можно указать имя службы и открыть для неё все порты.

    Допустимые значения включают службы, которые распознаёт firewall-offline-cmd. Если в системе выполняется firewalld, для получения списка служб выполните firewall-cmd --get-services.

  • --use-system-defaults — вообще не настраивать межсетевой экран. Этот параметр предписывает Anaconda ничего не делать и позволяет системе полагаться на значения по умолчанию, предоставленные пакетом или ostree. Если параметр используется совместно с другими параметрами, то все другие будут игнорироваться.

group (дополнительная)

Позволяет создать новую группу пользователей.

Синтаксис

group --name=name [--gid=gid]

Обязательные параметры

  • --name= — имя группы.

Дополнительные параметры

  • --gid= — идентификатор группы. Если не задан, по умолчанию используется следующий свободный идентификатор.

Замечания

  • Если группа с заданным именем или идентификатором уже существует, команда завершится ошибкой.

  • Чтобы создать группу для нового пользователя, можно использовать эту команду совместно с user.

keyboard (обязательная)

Выбор раскладки клавиатуры.

Синтаксис

keyboard --vckeymap|--xlayouts OPTIONS

Дополнительные параметры

  • --vckeymap= — определяет раскладку VConsole. В качестве значения можно выбирать имена файлов из директории /usr/lib/kbd/keymaps/xkb/ без расширения .map.gz.

  • --xlayouts= — список раскладок X через запятую без пробелов. Значения можно определить в форме раскладка (например, cz) или раскладка (вариант) (например, cz (qwerty)), что аналогично формату setxkbmap(1). Полный список раскладок можно найти в справке xkeyboard-config(7), в разделе Layouts.

  • --switch= — комбинации клавиш для переключения между раскладками в формате, аналогичном setxkbmap(1). Несколько значений разделяются запятыми без пробелов. Описание дополнительных параметров можно найти в справке xkeyboard-config(7), в разделе Options.

Замечания

  • --vckeymap= и --xlayouts= не должны использоваться вместе.

Пример

  • Ниже будут настроены две раскладки — английская (США) и русская — переключение между которыми осуществляется с помощью Alt+Shift:

    keyboard --xlayouts=us,'ru (qwerty)' --switch=grp:alt_shift_toggle
    

lang (обязательная)

Определяет язык, который будет использоваться в ходе установки и по умолчанию — в установленной системе.

Синтаксис

lang language [--addsupport=language,...]

Обязательные параметры

  • language — определяет язык установки и по умолчанию в установленной системе.

Дополнительные параметры

  • --addsupport= — список дополнительных языков через запятую без пробелов. Пример:

    lang en_US --addsupport=ru_RU,de_DE,en_UK
    

Замечания

  • Для вывода списка поддерживаемых языков выполните следующие команды locale -a | grep _ или localectl list-locales | grep _.

  • Некоторые языки, в частности китайский, японский, корейский и языки индийской группы, не поддерживаются в текстовом режиме установки. Если такого рода язык задан с помощью команды lang, установка будет продолжена на английском, а указанный язык будет включён по умолчанию в готовой системе.

Пример

Выбор русского языка в Kickstart-файле:

lang ru_RU

module (дополнительная)

Включает поток модуля пакета в Kickstart-сценарий.

Синтаксис

module --name=NAME [--stream=STREAM]

Обязательные параметры

  • --name= — имя подключаемого модуля. Замените NAME реальным именем.

Дополнительные параметры

  • --stream= — имя подключаемого потока модуля. Замените STREAM реальным именем. Вам не нужно указывать этот параметр для модулей с определённым потоком по умолчанию. Для модулей без потока по умолчанию этот параметр является обязательным, и его отсутствие приведёт к ошибке. Включение модуля несколько раз с разными потоками невозможно.

Замечания

  • Использование комбинации этой команды и раздела %packages позволяет устанавливать пакеты, предоставляемые включённой комбинацией модуля и потока, без явного указания модуля и потока. Модули должны быть включены перед установкой пакета. После включения модуля с помощью команды module вы можете установить пакеты, включённые этим модулем, перечислив их в разделе %packages.

  • Одна команда module может включить только одну комбинацию модуля и потока. Чтобы включить несколько модулей, используйте команды для нескольких модулей. Включение модуля несколько раз с разными потоками невозможно.

  • Модули располагаются только в репозитории AppStream. Чтобы просмотреть список доступных модулей, используйте команду dnf module list в установленной операционной системе.

repo (дополнительная)

Позволяет настроить дополнительные репозитории dnf. Вы можете добавить несколько строк repo.

Синтаксис

repo --name=repoid [--baseurl=url|--mirrorlist=url|--metalink=url] [OPTIONS]

Обязательные параметры

  • --name= — обязательный идентификатор репозитория. Если репозиторий уже был добавлен, он будет пропущен. Программа установки использует заранее подготовленный список репозиториев, поэтому имена дополнительных репозиториев не должны с ними совпадать.

URL-параметры

Эти параметры являются взаимоисключающими и необязательными. Переменные, которые можно использовать в файлах конфигурации репозитория dnf, здесь не поддерживаются. Вы можете использовать строки $releasever и $basearch, которые заменяются соответствующими значениями в URL-адресе.

  • --baseurl= — URL репозитория.

  • --mirrorlist= — URL списка зеркал для репозитория.

  • --metalink= — URL с металинком для репозитория.

Дополнительные параметры

  • --install — сохранить конфигурацию репозитория в установленной системе в каталоге /etc/yum.repos.d/. Без использования этой опции репозиторий, настроенный в Kickstart-файле, будет доступен только во время установки, а не в установленной системе.

  • --cost= — целое значение, определяющее приоритет репозитория. Используется для выбора репозитория, если интересующий пакет входит в состав нескольких репозиториев. В этом случае будет выбран репозиторий с минимальным значением.

  • --excludepkgs= — список пакетов через запятую, которые будут исключены при загрузке из репозитория. Обычно используется, если один пакет входит в состав нескольких репозиториев, и вы хотите исключить одну из версий. В качестве значений принимаются полные имена пакетов (например, publican) и шаблоны (например, gnome-*).

  • --includepkgs= — список пакетов и шаблонов их имен через запятую, которые будут загружены из репозитория. Используется, если один пакет входит в состав нескольких репозиториев, и вы хотите загрузить конкретную версию из определенного репозитория.

  • --proxy=[protocol://][username[:password]@]host[:port] — прокси-сервер HTTP, HTTPS или FTP для доступа к репозиторию. Этот параметр не меняет способ загрузки install.img при выполнении установки с HTTP-сервера и не влияет на другие репозитории.

  • --noverifyssl — отключает проверку SSL при подключении к серверу HTTPS.

Замечания

  • Состояние репозиториев должно оставаться неизменным во время установки, так как их модификация может нарушить ход установки.

rootpw (обязательная)

Позволяет установить пароль root.

Синтаксис

rootpw [--iscrypted|--plaintext] [--lock] password

Обязательные параметры

  • password — пароль. Может быть как обычный текст, так и зашифрованная строка. См. --iscrypted и --plaintext ниже.

Дополнительные параметры

  • --iscrypted — сообщает, что пароль зашифрован. Параметры --plaintext и --iscrypted являются взаимоисключающими. Зашифровать пароль можно следующим образом:

    $ python -c 'import crypt,getpass;pw=getpass.getpass();print(crypt.crypt(pw) if (pw==getpass.getpass("Confirm: ")) else exit())'
    

    Эта команда создаст шифр SHA512 с использованием заданной случайной строки (соли).

  • --plaintext — сообщает, что пароль определён в открытом виде. Параметры --plaintext и --iscrypted являются взаимоисключающими.

  • --lock— блокирует учётную запись. Авторизация пользователя root из консоли будет недоступна. Также будут недоступны экраны пароля root как при графической, так и при текстовой установке вручную.

  • --allow-ssh — пользователь root может войти в систему по SSH с паролем. Этот параметр доступен только в МСВСфера ОС 9.1 и более поздних версиях. Чтобы включить root-вход по SSH на основе пароля, добавьте следующую строку в Kickstart-файл. Параметр --allow-ssh недоступен в МСВСфера ОС 9.0.

    %post
    echo "PermitRootLogin yes" > /etc/ssh/sshd_config.d/01-permitrootlogin.conf
    %end
    

selinux (дополнительная)

Определяет режим SELinux (по умолчанию будет выбран строгий режим).

Синтаксис

selinux [--disabled|--enforcing|--permissive]

Дополнительные параметры

  • --enforcing — строгий режим SELinux.

  • --permissive — режим предупреждений.

  • --disabled — полностью отключает SELinux.

services (дополнительная)

Список служб, выполняемых в рамках systemd. Список отключённых служб проверяется первым, а включённых — вторым. Таким образом, если служба присутствует в обоих списках, она будет включена.

Синтаксис

services [--disabled=list] [--enabled=list]

Дополнительные параметры

  • --disabled= — отключает службы, перечисленные через запятую.

  • --enabled= — включает службы, перечисленные через запятую.

Замечания

  • Службы должны быть перечислены через запятую без пробелов. Если строка содержит пробелы, будут обработаны только элементы до первого пробела. Пример:

    services --disabled=auditd, cups,smartd, nfslock
    

    В этом примере будет отключена только служба auditd. Для отключения всех служб удалите пробел:

    services --disabled=auditd,cups,smartd,nfslock
    

skipx (дополнительная)

Пропускает настройку системы X.

Если вы устанавливаете дисплейный менеджер среди параметров выбора пакета, этот пакет создаёт конфигурацию X, а установленная система по умолчанию использует graphical.target. Это переопределяет эффект параметра skipx.

Синтаксис

skipx

Замечания

  • У этой команды нет параметров.

sshkey (дополнительная)

Добавить ключ SSH в файл authorized_keys указанного пользователя в установленной системе.

Синтаксис

sshkey --username=user "ssh_key"

Обязательные параметры

  • --username= — пользователь, для которого будет установлен ключ.

  • ssh_key — полный отпечаток ключа SSH. Должен быть в кавычках.

timezone (обязательная)

Устанавливает часовой пояс.

Синтаксис

timezone timezone [OPTIONS]

Обязательные параметры

  • timezone — часовой пояс.

Дополнительные параметры

  • --utc — если задан, подразумевается, что системные часы установлены по Гринвичу.

  • --nontp — отключает автоматический запуск NTP. Параметр признан устаревшим.

  • --ntpservers= — список NTP-серверов через запятую без пробелов. Параметр признан устаревшим, вместо него используется команда timesource.

Замечания

  • В МСВСфера ОМ 9 названия часовых поясов проверяются с помощью списка pytz.common_timezones, предоставляемого пакетом pytz.

timesource (дополнительная)

Команда используется для настройки NTP, серверов NTS и пулов, которые предоставляют данные о времени, а также для управления включением или отключением служб NTP в системе.

Синтаксис

timesource [--ntp-server NTP_SERVER | --ntp-pool NTP_POOL | --ntp-disable] [--nts]

Обязательные параметры

При использовании команды timesource обязательно укажите один из следующих параметров:

  • --ntp-server — добавляет один NTP-сервер в качестве источника времени. Этот параметр можно добавить только один раз в одну команду, чтобы добавить один NTP-сервер. Чтобы добавить несколько источников, добавьте несколько команд timesource``с параметром ``--ntp-server или --ntp-pool. Например, добавим несколько источников для России:

    timezone Russia
    timesource --ntp-server ntp.msk-ix.ru
    timesource --ntp-server ntp1.vniiftri.ru
    timesource --ntp-server ntp.sstf.nsk.ru
    
  • --ntp-pool — добавляет пул NTP-серверов в качестве источника времени. Этот параметр можно добавить только один раз, чтобы добавить один NTP-пул. Чтобы добавить несколько источников, добавьте несколько команд timesource с параметром.

  • --ntp-disable отключает источники времени NTP для установленной системы.

Дополнительные параметры

  • --nts — сервер или пул, добавленный с помощью этой команды, использует протокол NTS. Обратите внимание, что этот параметр можно добавить даже с --ntp-disable, но он не даст никакого эффекта.

Замечания

  • Параметр --ntpservers устарел. Рекомендуется использовать команду timesource.

  • Только команда timesource может пометить серверы и пулы как использующие NTS вместо обычного протокола NTP.

user (дополнительная)

Создание пользователя.

Синтаксис

user --name=username [OPTIONS]

Обязательные параметры

  • --name= — имя пользователя.

Дополнительные параметры

  • --gecos= — строка параметров GECOS через запятую. Типичные параметры включают полное имя пользователя, номер офиса, и т.п. Подробную информацию можно найти в справке passwd(5).

  • --groups= — список групп пользователя, разделённых запятой. Список должен содержать существующие группы (см. описание команды group).

  • --homedir= — домашний каталог пользователя. По умолчанию используется /home/пользователь.

  • --lock — блокирует учётную запись, то есть пользователи не смогут авторизоваться из консоли. Параметр также отключает экран «Создание пользователя» как при графической, так и при текстовой установке вручную.

  • --password= — пароль пользователя. Если не задан, учётная запись будет заблокирована.

  • --iscrypted — сообщает, что пароль зашифрован. Параметры --plaintext и --iscrypted являются взаимоисключающими. Зашифровать пароль можно следующим образом:

    $ python -c 'import crypt,getpass;pw=getpass.getpass();print(crypt.crypt(pw) if (pw==getpass.getpass("Confirm: ")) else exit())'
    

    Эта команда создаст шифр SHA512 с использованием заданной случайной строки (соли).

  • --plaintext — сообщает, что пароль определён в открытом виде. --plaintext и --iscrypted являются взаимоисключающими.

  • --shell= — оболочка пользователя. По умолчанию используются системные настройки.

  • --uid= — идентификатор пользователя. По умолчанию будет использоваться следующий свободный идентификатор.

  • --gid= — идентификатор группы. По умолчанию используется следующий свободный идентификатор.

Замечания

  • Рассмотрите возможность использования параметров --uid и --gid для установки идентификаторов пользователей и их групп по умолчанию в диапазоне, начиная с 5000 вместо 1000. Это связано с тем, что диапазон, зарезервированный для системных пользователей и групп, 0–999, может увеличиться в будущем и, таким образом, совпасть с идентификаторами обычных пользователей.

  • Файлы и каталоги создаются с различными полномочиями, определяемыми приложением, используемым для их создания. Например, команда mkdir создаёт каталоги со всеми включёнными разрешениями. Однако приложениям не разрешается предоставлять определённые разрешения вновь создаваемым файлам, как указано в настройке user file-creation mask.

    Настройкой user file-creation mask можно управлять с помощью команды umask. Настройка по умолчанию user file-creation mask для новых пользователей определяется переменной UMASK в файле конфигурации /etc/login.defs в установленной системе. Если этот параметр не указан, по умолчанию используется значение 022. Это означает, что по умолчанию, когда приложение создает файл, ему не разрешается предоставлять разрешение на запись пользователям, кроме владельца файла. Однако это поведение может быть переопределено другими настройками или сценариями.

xconfig (дополнительная)

Настраивает X Window System.

Синтаксис

xconfig [--startxonboot]

Дополнительные параметры

  • --startxonboot — графическая авторизация в установленной системе.

Замечания

  • Так как в пакет поставки не входит среда рабочего стола KDE, не используйте параметр --defaultdesktop=.

Команды настройки сети

Команды используются для настройки сети в системе.

network (дополнительная)

Настройка сетевого окружения. По умолчанию будет включено первое указанное в команде устройство. Активацию конкретного устройства можно явно запросить с помощью --activate.

Синтаксис

network OPTIONS

Параметры

  • --activate — активировать устройство в среде установки. Если этот параметр указан применительно к уже активному устройству (например, интерфейс, настроенный с параметрами загрузки, чтобы система могла получить Kickstart-файл), будет выполнена его повторная активация согласно настройкам в Kickstart-файле.

    Используйте параметр --nodefroute, чтобы запретить устройству использовать маршрут по умолчанию.

  • --no-activate — запрет активации устройства в среде установки. По умолчанию Anaconda активирует первое сетевое устройство в Kickstart-файле независимо от параметра --activate. Вы можете отключить настройку по умолчанию, используя опцию --no-activate.

  • --bootproto= — может принимать одно из следующих значений: dhcp (используется по умолчанию), bootp, ibft, static. Параметры dhcp и bootp обрабатываются одинаково. Для отключения настройки ipv4 устройства используйте параметр --noipv4. Этот параметр настраивает ipv4 устройства. Для настройки ipv6 используйте параметры --ipv6 и --ipv6gateway.

    В режиме DHCP для получения сетевых настроек используется DHCP-сервер. Как можно догадаться, в случае с BOOTP для получения сетевых настроек подобным образом используется сервер BOOTP. Чтобы настроить функции DHCP, добавьте:

    network --bootproto=dhcp
    

    Чтобы настроить получение сетевой конфигурации с помощью BOOTP, добавьте в Kickstart-файл:

    network --bootproto=bootp
    

    Чтобы использовать конфигурацию из iBFT, добавьте строку:

    network --bootproto=ibft
    

    Для метода static в Kickstart-файле необходимо определить как минимум IP-адрес и маску сети (но также рекомендуется определить шлюз и сервер имён). Эти данные не изменяются и используются во время и после установки.

    Все данные статической конфигурации должны быть указаны в одной строке, вы не можете переносить строки с помощью символа \, как в командной строке.

    network --bootproto=static --ip=10.0.2.15 --netmask=255.255.255.0 --gateway=10.0.2.254 --nameserver=10.0.2.1
    

    Здесь же можно настроить несколько серверов имён одновременно с помощью параметра --nameserver=, указав их IP-адреса через запятую:

    network --bootproto=static --ip=10.0.2.15 --netmask=255.255.255.0 --gateway=10.0.2.254 --nameserver=192.168.2.1,192.168.3.1
    
  • --device= — сетевое устройство, которое необходимо настроить (и, в конечном итоге, активировать в Anaconda). Если в первом вхождении команды network не указан параметр --device=, по умолчанию будет использоваться значение параметра загрузки inst.ks.device=. Это поведение считается устаревшим, поэтому рекомендуется явно определить значение --device=.

    Примечание

    Агрегирование (Team) устарело в МСВСфера ОС 9. В качестве альтернативы рассмотрите возможность использования Агрегирования (Bond).

    Для всех последующих команд network необходимо явно определить --device=. Устройства могут быть заданы любым из следующих способов:

    • по имени интерфейса, например em1

    • по MAC-адресу, например 01:23:45:67:89:ab

    • по ключевому слову link, которое определяет первый интерфейс со статусом up

    • по ключевому слову bootif с целью наследования MAC-адреса из переменной BOOTIF. Чтобы pxelinux смог определить переменную BOOTIF, включите IPAPPEND 2 в файл pxelinux.cfg.

      Пример:

      network --bootproto=dhcp --device=em1
      
  • --ipv4-dns-search / --ipv6-dns-search — задать домены поиска DNS вручную. Эти параметры используются вместе с параметрами --device и отражают соответствующие свойства NetworkManager, например:

    network --device ens3 --ipv4-dns-search domain1.example.com,domain2.example.com
    
  • --ipv4-ignore-auto-dns / --ipv6-ignore-auto-dns — игнорировать настройки DNS от DHCP. Эти параметры используются вместе с параметрами --device и не требуют каких-либо аргументов.

  • --ip= — адрес устройства.

  • --ipv6= — IPv6-адрес устройства в формате address[/prefix length], например 3ffe:ffff:0:1::1/128. Если префикс не задан, по умолчанию будет использоваться 64. Другие допустимые значения включают auto (автоматическая конфигурация) и dhcp (только для DHCPv6, без маршутизатора).

  • --gateway= — IPv4-адрес шлюза.

  • --ipv6gateway= — IPv6-адрес шлюза.

  • --nodefroute — определяет, что выбранный интерфейс не может использоваться по умолчанию. Обычно устанавливается при активации дополнительных устройств с помощью --activate= — например для сетевой карты в другой подсети или цели iSCSI.

  • --nameserver= — IP-адрес сервера имён. Несколько серверов разделяются запятыми.

  • --netmask= — маска сети.

  • --hostname= — имя устанавливаемой системы. Имя может быть либо полным доменным именем (FQDN) в формате hostname.domainname, либо коротким именем без домена. Во многих сетях имеется служба DHCP, которая автоматически предоставляет подключённым системам доменное имя. Чтобы разрешить службе DHCP назначать этому компьютеру имя домена, укажите только короткое имя.

    При использовании статического IP-адреса и конфигурации имени выбор использования короткого или полного доменного имени зависит от планируемого варианта использования системы. Обычно полное доменное имя настраивается во время подготовки, но для некоторых сторонних продуктов может потребоваться короткое имя. В любом случае, чтобы обеспечить доступность обеих форм во всех ситуациях, добавьте запись для хоста в /etc/hosts в формате IP FQDN short-alias.

    Имена хостов могут содержать только буквы и цифры, а также символы - и .. Имя хоста должно быть не более 64 символов. Имена хостов не могут начинаться или заканчиваться символами - и .. Для совместимости с DNS каждая часть полного доменного имени должна быть равна или меньше 63 символов, а общая длина полного доменного имени, включая точки, не должна превышать 255 символов.

    Если вы хотите настроить только имя хоста целевой системы, используйте параметр --hostname и не используйте никаких других параметров.

    Если при настройке имени хоста вы используете дополнительные параметры, команда network настроит устройство, используя указанные параметры. Если вы не указываете, какое устройство настраивать с помощью параметра --device, используется значение по умолчанию --device link. Кроме того, если вы не укажете протокол с помощью параметра --bootproto, устройство по умолчанию будет настроено на использование DHCP.

  • --ethtool= — дополнительные параметры сетевого устройства для передачи ethtool.

  • --onboot= — активация устройства при загрузке.

  • --dhcpclass= — класс DHCP.

  • --mtu= — MTU устройства.

  • --noipv4 — отключает IPv4.

  • --noipv6 — отключает IPv6.

  • --bondslaves= — определяет подчинённые устройства, которые войдут в состав устройства --device=:

    network --device=bond0 --bondslaves=em1,em2
    

    Эта команда создаст устройство bond0 на основе интерфейсов em1 и em2.

  • --bondopts= — список дополнительных параметров для интерфейса агрегации, указанного в параметрах --bondslaves= и --device=. Параметры могут быть отделены запятой (,) или точкой с запятой (;). Если сам параметр содержит запятую, используйте точку с запятой для разделения. Пример:

    network --bondopts=mode=active-backup,balance-rr;primary=eth1
    

    Примечание

    --bondopts=mode= принимает полное имя режима, такое как balance-rr или broadcast, а не его числовое представление, такое как 0 или 3.

  • --vlanid= — идентификатор VLAN (тег 802.1q) подчинённого устройства, которое будет создано для устройства --device. Так, например, network --device=em1 --vlanid=171 создаст виртуальное устройство LAN em1.171.

  • --interfacename= — позволяет изменить имя VLAN-устройства, присвоенное в соответствии с --vlanid=. ? Пример:

    network --device=em1 --vlanid=171 --interfacename=vlan171
    

    Эта команда создаст виртуальный интерфейс vlan171 для устройства em1 c ID 171.

    Обозначение интерфейса может быть любым, например my-vlan, но в некоторых случаях следует придерживаться определенных рекомендаций:

    • Если имя содержит точку (.), то обозначение интерфейса должно иметь формат NAME.ID, где имя может быть произвольным, а ID содержит идентификатор VLAN. Примеры: em1.171, my-vlan.171.

    • Если имя начинается с vlan, то интерфейсу будет присвоено имя в формате vlanID, например vlan171.

  • --teamslaves= — список подчинённых устройств, которые войдут в состав устройства --device=, через запятую. За именем устройства может следовать JSON-строка параметров в одинарных кавычках, где каждый параметр заключён в двойные кавычки, которым предшествует знак \. Пример:

    network --teamslaves="p3p1'{\"prio\": -10, \"sticky\": true}',p3p2'{\"prio\": 100}'"
    

    Также смотрите описание параметра --teamconfig=.

    Примечание

    Агрегирование (Team) устарело в МСВСфера ОС 9. В качестве альтернативы рассмотрите возможность использования Агрегирования (Bond).

  • --teamconfig= — JSON-строка конфигурации созданного устройства агрегации в кавычках, где каждый параметр тоже заключён в двойные кавычки с предшествующим им знаком \. Список подчинённых устройств, которые войдут в состав устройства --device=, заданный параметром --teamslaves=. Пример:

    network --device team0 --activate --bootproto static --ip=10.34.102.222 --netmask=255.255.255.0 --gateway=10.34.102.254 --nameserver=10.34.39.2 --teamslaves="p3p1'{\"prio\": -10, \"sticky\": true}',p3p2'{\"prio\": 100}'" --teamconfig="{\"runner\": {\"name\": \"activebackup\"}}"
    

    Примечание

    Агрегирование (Team) устарело в МСВСфера ОС 9. В качестве альтернативы рассмотрите возможность использования Агрегирования (Bond).

  • --bridgeslaves= — создать сетевой мост с устройством, указанным в --device=; к мосту будут добавлены устройства, определённые в --bridgeslaves=. Пример:

    network --device=bridge0 --bridgeslaves=em1
    
  • --bridgeopts= — дополнительные параметры мостового интерфейса, разделённые запятыми: stp, priority, forward-delay, hello-time, max-age, ageing-time.

  • --bindto=mac — привязать файл конфигурации устройства в установленной системе к MAC-адресу устройства (HWADDR) вместо привязки по умолчанию к имени интерфейса (DEVICE). Обратите внимание, что этот параметр не зависит от параметра --device= и будет применяться, даже если команда network пределяет имя устройства, link или bootif.

Замечания

  • Имена устройств ethN, такие как eth0, больше недоступны из-за изменений в схеме именования.

  • Если установочный репозиторий в сети был указан в Kickstart-файле или как параметр загрузки, но в начале установки сеть недоступна, программа установки покажет окно «Настройка сети» для настройки сетевого подключения перед отображением окна «Обзор установки».

realm (дополнительная)

Настраивает подключение к домену IPA или Active Directory.

Синтаксис

realm join [OPTIONS] domain

Обязательные параметры

  • domain — домен.

Дополнительные параметры

  • --computer-ou=OU= — уникальное имя подразделения. Формат определяется программным обеспечением клиента. Составляющую root DSE можно опустить.

  • --no-password — автоматическое подключение без ввода пароля.

  • --one-time-password= — при входе необходимо ввести пароль один раз. Подходит только для некоторых областей.

  • --client-software= — подключаться только к областям, где могут выполняться выбранные программы клиента. Допустимые значения включают sssd и winbind. Не все области поддержтвают все значения. По умолчанию программное обеспечение клиента выбирается автоматически.

  • --server-software= — подключаться только к областям, где могут выполняться выбранные программы сервера. Допустимые значения включают active-directory и freeipa.

  • --membership-software= — программа, выбираемая при подключении к области. Допустимые значения включают samba и adcli. Не все области поддерживают все значения. По умолчанию выбирается автоматически.

Команды управления хранилищем

Команды используются для настройки устройств, дисков, разделов, LVM и файловых систем.

Формат sdX (или /dev/sdX) не гарантирует согласованность имён устройств при перезагрузках, что может усложнить использование некоторых Kickstart-команд. Если команде требуется имя узла устройства, в качестве альтернативы вы можете использовать любой элемент из /dev/disk. Например, вместо использования следующего имени устройства:

part / --fstype=xfs --onpart=sda1

Вы можете использовать запись, подобную одной из следующих:

part / --fstype=xfs --onpart=/dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:0-part1
part / --fstype=xfs --onpart=/dev/disk/by-id/ata-ST3160815AS_6RA0C882-part1

При таком подходе команда всегда нацелена на одно и то же устройство хранения. Это особенно полезно в больших средах хранения. Чтобы просмотреть имена доступных устройств в системе, вы можете использовать команду ls -lR /dev/disk во время интерактивной установки.

autopart (дополнительная)

Автоматически создает следующие разделы: корневой раздел / (не меньше 1 ГБ), swap и /boot. На больших дисках (больше 50 ГБ) также будет создан раздел /home.

Синтаксис

autopart OPTIONS

Дополнительные параметры

  • --type= — позволяет выбрать готовую схему разделов. Возможные значения:

    • lvm — LVM-схема;

    • plain — стандартные разделы (не LVM);

    • thinp — динамическая схема LVM.

  • --fstype= — выбрать тип файловой системы. Доступные значения: ext2, ext3, ext4, xfs и vfat. Файловая система по умолчанию — xfs.

  • --nohome — отключает автоматическое создание раздела /home.

  • --nolvm — запрещает выбор LVM при автоматическом создании разделов. Эквивалентно --type=plain.

  • --noboot — не создавать раздел /boot.

  • --noswap — не создавать раздел swap.

  • --encrypted — включает шифрование разделов с помощью единого ключа Linux (LUKS). Аналогично установке флажка шифрования в окне создания разделов программы установки.

    При шифровании одного или нескольких разделов Anaconda пытается собрать 256 бит энтропии, чтобы обеспечить безопасное шифрование разделов. Сбор энтропии может занять некоторое время — процесс остановится максимум через 10 минут, независимо от того, было ли собрано достаточно энтропии. Процесс можно ускорить, взаимодействуя с системой установки (набирая текст на клавиатуре или перемещая мышь). Если вы устанавливаете систему на виртуальную машину, вы также можете подключить к гостевой машине устройство virtio-rng (виртуальный генератор случайных чисел).

  • --luks-version=LUKS_VERSION — версия LUKS для шифрования файловой системы. Используется только если указан параметр --encrypted.

  • --passphrase= — пароль доступа к зашифрованным устройствам.

  • --escrowcert=URL_of_X.509_certificate — сохранить ключи шифрования данных всех зашифрованных томов в виде файлов в каталоге /root, зашифрованных с использованием сертификата X.509 по URL-адресу, указанному в URL_of_X.509_certificate. Ключи хранятся в виде отдельного файла для каждого зашифрованного тома. Используется только если указан параметр --encrypted.

  • --backuppassphrase — случайная парольная фраза для зашифрованного тома. Файлы паролей хранятся в /root и зашифрованы с помощью сертификата X.509. Этот параметр используется вместе с --escrowcert.

  • --cipher= — тип шифрования, который будет выбран, если стандартного значения aes-xts-plain64 оказалось недостаточно. Этот параметр используется вместе с --encrypted и сам по себе силы не имеет. Рекомендуется выбрать тип шифрования aes-xts-plain64 или aes-cbc-essiv:sha256.

  • --pbkdf=PBKDF — задаёт алгоритм PBKDF для ключей LUKS. См. также справку cryptsetup(8). Этот параметр имеет смысл только если указан --encrypted

  • --pbkdf-memory=PBKDF_MEMORY — задаёт затраты памяти при использовании PBKDF. Этот параметр используется вместе с --encrypted и сам по себе силы не имеет.

  • --pbkdf-time=PBKDF_TIME — задаёт время в миллисекундах на обработку кодовой фразы PBKDF. Этот параметр используется вместе с --encrypted и сам по себе силы не имеет. Является взаимоисключающим с --pbkdf-iterations.

  • --pbkdf-iterations=PBKDF_ITERATIONS — задаёт число итераций на обработку кодовой фразы PBKDF напрямую. Этот параметр используется вместе с --encrypted и сам по себе силы не имеет. Является взаимоисключающим с --pbkdf-time.

Замечания

  • Команда autopart не может использоваться вместе с part/partition и командами raid, logvol и volgroup в одном Kickstart-файле.

  • Команда autopart — дополнительная, но её необходимо включить в Kickstart-сценарий, если не используются команды part и mount.

  • При установке на один FBA DASD типа CMS рекомендуется использовать autopart --nohome. Это гарантирует, что программа установки не создаст отдельный раздел /home. После этого установка проходит успешно.

  • При утере парольной фразы LUKS, все зашифрованные разделы и их данные станут полностью недоступными. Восстановить утерянную парольную фразу невозможно. Однако вы можете сохранить кодовые фразы с помощью --escrowcert и создать резервные кодовые фразы с помощью --backuppassphrase.

  • При использовании autopart, autopart --type=lvm и autopart=thinp убедитесь, что размеры секторов диска соответствуют требованиям.

bootloader (обязательная)

Определяет порядок установки загрузчика.

Синтаксис

bootloader [OPTIONS]

Дополнительные параметры

  • --append= — содержит список параметров ядра через запятую, например:

    bootloader --location=mbr --append="hdd=ide-scsi ide=nodma"
    

    Параметры rhgb и quiet добавляются автоматически при установке пакета plymouth, даже если они явно не заданы, или строка --append= вовсе не определена. Чтобы отключить такое поведение, явно запретите установку plymouth:

    %packages
    -plymouth
    %end
    

    Этот параметр полезен для отключения механизмов устранения уязвимостей Meltdown и Spectre, обнаруженных в большинстве современных процессоров (CVE-2017-5754, CVE-2017-5753 и CVE-2017-5715). В некоторых случаях эти механизмы могут быть не нужны, а их включение привести к снижению производительности без улучшения безопасности. Чтобы отключить эти механизмы, добавьте соответствующие команды в Kickstart-файл, например для AMD64/Intel 64, bootloader --append="nopti noibrs noibpb".

    Опасно

    Прежде чем отключать механизмы устранения уязвимостей, убедитесь, что система не будет подвергнута риску!

  • --boot-drive= — диск, на который будет записан загрузчик, и с которого будет загружаться система. При использовании многопутевого устройства в качестве загрузочного диска, укажите устройство, используя его имя disk/by-id/dm-uuid-mpath-WWID.

  • --leavebootorder — добавить систему в список установленных систем в UEFI. Установленная система не добавляется в порядок загрузки. Все существующие загрузочные записи, а также их порядок сохраняются. Применяется для Power и UEFI.

  • --driveorder= — определяет порядок загрузки в BIOS, например:

    bootloader --driveorder=sda,hda
    
  • --location= — место расположения загрузочной записи. Допустимые значения:

    • mbr — (используется по умолчанию). Его поведение определяется наличием MBR или GPT.

      • На диске с GPT код загрузчика стадии 1.5 будет установлен в раздел BIOS.

      • На диске с MBR код загрузчика стадии 1.5 будет установлен в свободное пространство между MBR и первым разделом.

    • partition — установка загрузчика в первый сектор раздела, содержащего ядро.

    • none — не устанавливать загрузчик.

    В большинстве случаев этот параметр можно не определять.

  • --nombr — не устанавливать загрузчик в MBR.

  • --password= — пароль GRUB2. Рекомендуется установить пароль для ограничения доступа к оболочке GRUB2 во избежание несанкционированной передачи параметров ядру.

    Если пароль задан, будет предложено ввести имя пользователя. По умолчанию будет выбран пользователь root.

  • --iscrypted — разрешает использование зашифрованного пароля, который изначально был создан помощью параметра --password=. В противном случае пароль хранится в открытой форме.

    Пароль можно зашифровать с помощью команды grub2-mkpasswd-pbkdf2. Скопируйте код из строки вывода, начинающейся с grub.pbkdf2, и сохраните его в Kickstart-файл.

    Пример записи с зашифрованным паролем:

    bootloader --iscrypted --password=grub.pbkdf2.sha512.10000.5520C6C9832F3AC3D149AC0B24BE69E2D4
    FB0DBEEDBD29CA1D30A044DE2645C4C7A291E585D4DC43F8A4D82479F8B95CA4BA4381F8550510B75E8E0BB2938990.
    C688B6F0EF935701FF9BD1A8EC7FE5BD2333799C98F28420C5CC8F1A2A233DE22C83705BB614EA17F3FDFDF4AC2161CEA3384E56EB38A2E39102F5334C47405E
    
  • --timeout= — время ожидания в секундах, по истечении которого начнётся загрузка в соответствии с параметром --default=.

  • --default= — определяет загрузочный образ, который будет использоваться по умолчанию.

  • --extlinux — выбирает extlinux вместо GRUB2. Используется только в системах с поддержкой extlinux.

  • --disabled — расширенная версия --location=none. В то время как --location=none просто отключает установку загрузчика, --disabled отключает установку загрузчика, а также отключает установку пакета, содержащего загрузчик, тем самым экономя место.

Замечания

  • Рекомендуется установить пароль загрузчика в каждой системе. Незащищённый загрузчик может позволить потенциальному злоумышленнику изменить параметры загрузки системы и получить несанкционированный доступ к системе.

  • В некоторых случаях для установки загрузчика в системах AMD64, Intel 64 и 64-битных ARM требуется специальный раздел. Тип и размер этого раздела зависит от того, использует ли диск, на который устанавливается загрузчик, MBR или GPT.

  • Формат sdX (или /dev/sdX) не гарантирует согласованность имён устройств при перезагрузках, что может усложнить использование некоторых команд. Если команде требуется имя узла устройства, в качестве альтернативы можно использовать любой элемент из /dev/disk. Например, вместо использования следующего имени устройства:

    part / --fstype=xfs --onpart=sda1
    

    Вы можете использовать запись, подобную одной из следующих:

    part / --fstype=xfs --onpart=/dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:0-part1
    
    part / --fstype=xfs --onpart=/dev/disk/by-id/ata-ST3160815AS_6RA0C882-part1
    

    При таком подходе команда всегда нацелена на одно и то же устройство хранения. Это особенно полезно в больших средах хранения. Чтобы просмотреть имена доступных устройств в системе, можно использовать команду ls -lR /dev/disk во время интерактивной установки.

clearpart (дополнительная)

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

Синтаксис

clearpart OPTIONS

Дополнительные параметры

  • --all — удаляет все разделы, к которым может получить доступ программа установки, включая любые подключённые сетевые хранилища. Используйте с осторожностью! Запретить очищать необходимое хранилище можно используя параметр --drives= и указав только те диски, которые вы хотите очистить. Вы можете подключить сетевое хранилище позже (например, в разделе %post). Также вы можете внести в чёрный список модули ядра, используемые для доступа к сетевому хранилищу.

  • --drives= — удаляет разделы на заданных дисках. Например, следующая команда очистит все разделы на первых двух дисках основного IDE-контроллера:

    clearpart --drives=hda,hdb --all
    

    Чтобы очистить многопутевое устройство, используйте формат disk/by-id/scsi-WWID. Так, очистка диска с идентификатором 58095BEC5510947BE8C0360F604351918 будет выглядеть так:

    clearpart --drives=disk/by-id/scsi-58095BEC5510947BE8C0360F604351918
    

    Чтобы очистить многопутевое устройство, не использующее LVM, следуйте формату disk/by-id/dm-uuid-mpath-WWID. Так, команда очистки диска с идентификатором 2416CD96995134CA5D787F00A5AA11017 будет выглядеть так:

    clearpart --drives=disk/by-id/dm-uuid-mpath-2416CD96995134CA5D787F00A5AA11017
    

    Не используйте имена устройств в виде mpatha, так как они не привязаны к конкретным дискам, и могут измениться в процессе установки. Это может привести к тому, что clearpart выберет не тот диск для освобождения.

  • --initlabel — метка диска, которая будет выбираться по умолчанию для заданной архитектуры (например, msdos для x86). Используется вместе с --all. Поскольку --initlabel видит все диски, важно убедиться, что подключены только те диски, которые необходимо отформатировать. На дисках, очищенных с помощью clearpart, будет создана метка, даже если --initlabel не используется.

    clearpart --initlabel --drives=names_of_disks
    

    Пример:

    clearpart --initlabel --drives=dasda,dasdb,dasdc
    
  • --list= — список разделов для удаления. Допускается выбор разделов на разных дисках. Этот параметр переопределяет --all и --linux.

    clearpart --list=sda2,sda3,sdb1
    
  • --disklabel=LABEL` — метка диска по умолчанию. Будут приняты только метки дисков, поддерживаемые данной платформой. Например, на 64-битных архитектурах Intel и AMD принимаются метки msdos и gpt, но не принимаются dasd.

  • --linux — удаляет разделы Linux.

  • --none (по умолчанию) — не удалять разделы.

  • --cdl — переформатировать все LDL DASD в CDL.

Замечания

  • Формат sdX (или /dev/sdX) не гарантирует согласованность имён устройств при перезагрузках, что может усложнить использование некоторых команд. Если команде требуется имя узла устройства, в качестве альтернативы можно использовать любой элемент из /dev/disk. Например, вместо использования следующего имени устройства:

    part / --fstype=xfs --onpart=sda1
    

    Вы можете использовать запись, подобную одной из следующих:

    part / --fstype=xfs --onpart=/dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:0-part1
    
    part / --fstype=xfs --onpart=/dev/disk/by-id/ata-ST3160815AS_6RA0C882-part1
    

    При таком подходе команда всегда нацелена на одно и то же устройство хранения. Это особенно полезно в больших средах. Чтобы просмотреть имена доступных устройств, используйте команду ls -lR /dev/disk во время интерактивной установки.

  • clearpart и part --onpart не могут использоваться вместе по отношению к одному и тому же логическому разделу.

fcoe (дополнительная)

Определяет устройства FCoE, которые будут активированы автоматически помимо обнаруженных службами EDD (Enhanced Disk Drive Services).

Синтаксис

fcoe --nic=name [OPTIONS]

Дополнительные параметры

  • --nic= (обязательный) — имя устройства.

  • --dcb= — параметры DCB (Data Center Bridging).

  • --autovlan — автоматическое определение VLAN. По умолчанию включено.

ignoredisk (дополнительная)

Позволяет пропустить некоторые диски. Это, в частности, поможет исключить диски при автоматическом разбиении. К примеру, попытка установки без параметра ignoredisk в SAN-кластере завершится неудачей вследствие того, что установщик будет находить пассивные пути к SAN без таблицы разделов.

Синтаксис

ignoredisk --drives=drive1,drive2,... | --only-use=drive

Дополнительные параметры

  • --drives=driveN,…driveN может принимать значения sda, sdb,…, hda и т.п.

  • --only-use=driveN,…— список дисков, которые будет использовать программа установки. Все остальные диски игнорируются. Например, чтобы использовать диск sda во время установки и игнорировать все остальные диски:

    ignoredisk --only-use=sda
    

    Чтобы включить многопутевое устройство, не использующее LVM:

    ignoredisk --only-use=disk/by-id/dm-uuid-mpath-2416CD96995134CA5D787F00A5AA11017
    

    Чтобы включить многопутевое устройство, использующее LVM:

    ignoredisk --only-use==/dev/disk/by-id/dm-uuid-mpath-
    
    bootloader --location=mbr
    

Можно использовать только один из --drives или --only-use.

Замечания

  • Чтобы пропустить многопутевое устройство, не использующее LVM, выберите формат disk/by-id/dm-uuid-mpath-WWID. Так, чтобы пропустить диск с идентификатором 2416CD96995134CA5D787F00A5AA11017 выполните:

    ignoredisk --drives=disk/by-id/dm-uuid-mpath-2416CD96995134CA5D787F00A5AA11017
    
  • Не используйте имена устройств в виде mpatha, так как они не привязаны к конкретным дискам, и могут измениться в процессе установки. Это может привести к тому, что clearpart выберет не тот диск для освобождения.

  • Формат sdX (или /dev/sdX) не гарантирует согласованность имен устройств при перезагрузках, что может усложнить использование некоторых команд. Если команде требуется имя узла устройства, в качестве альтернативы можно использовать любой элемент из /dev/disk. Например, вместо использования следующего имени устройства:

    part / --fstype=xfs --onpart=sda1
    

    Вы можете использовать запись, подобную одной из следующих:

    part / --fstype=xfs --onpart=/dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:0-part1
    
    part / --fstype=xfs --onpart=/dev/disk/by-id/ata-ST3160815AS_6RA0C882-part1
    

    При таком подходе команда всегда нацелена на одно и то же устройство хранения. Это особенно полезно в больших средах хранения. Чтобы просмотреть имена доступных устройств, вы можете использовать команду ls -lR /dev/disk во время интерактивной установки.

iscsi (дополнительная)

Определяет дополнительный iSCSI-накопитель, который будет подключён во время установки.

Синтаксис

iscsi --ipaddr=address [OPTIONS]

Обязательные параметры

  • --ipaddr= (обязательный) — IP-адрес ресурса.

Дополнительные параметры

  • --port= (обязательный) — номер порта. Если не указан, по умолчанию используется --port=3260.

  • --target= — IQN-имя ресурса (iSCSI Qualified Name).

  • --iface= — привязка соединения к конкретному сетевому интерфейсу. Определив таким образом интерфейс, убедитесь, что остальные экземпляры iscsi тоже содержат его обозначение.

  • --user= — имя пользователя для доступа к ресурсу.

  • --password= — пароль доступа.

  • --reverse-user= — имя пользователя для авторизации на инициаторе из целевого объекта, использующего обратное шифрование CHAP.

  • --reverse-password= — пароль пользователя инициатора.

Замечания

  • Если задан параметр iscsi, надо присвоить имя узла iSCSI при помощи iscsiname. В Kickstart-файле iscsi должен следовать за командой iscsiname.

  • Так как параметр iscsi требует дополнительной конфигурации, более предпочтительным вариантом является настройка iSCSI-накопителей в BIOS или встроенном ПО (или iBFT на Intel). Anaconda автоматически определяет и использует диски, настроенные в BIOS или во встроенном ПО, и не требует специального изменения Kickstart-файла.

  • Если все же необходимо использовать iscsi, проверьте работоспособность сетевого подключения и убедитесь, что в Kickstart-файле эта команда предшествует остальным командам iSCSI-дисков, таким как clearpart и ignoredisk.

iscsiname (дополнительная)

Позволяет определить имя узла iSCSI, заданного с помощью iscsi.

Синтаксис

iscsiname iqname

Дополнительные параметры

  • iqname — имя узла iSCSI.

Замечания

  • В Kickstart-файле команда iscsiname должна предшествовать команде iscsi.

logvol (дополнительная)

Помогает создать логический том LVM.

Синтаксис

logvol mntpoint --vgname=name --name=name [OPTIONS]

Обязательные параметры

  • mntpoint — точка монтирования. Формат точки монтирования:

    • /path — путь. Например, / или /home.

    • swap — Раздел подкачки. Чтобы автоматически выбрать размер раздела подкачки, добавьте аргумент --recommended:

    swap --recommended
    

    Будет выбран подходящий, но не обязательно оптимальный размер. Чтобы автоматически выбрать размер с выделением дополнительного пространства для перехода в спящий режим, добавьте аргумент --hibernation:

    swap --hibernation
    

    Общая формула расчёта: размер пространства подкачки = (--recommended) + (размер ОЗУ)

  • --vgname=name — имя группы томов.

  • --name=name — имя логического тома.

Дополнительные параметры

  • --noformat — использует существующий логический том без форматирования.

  • --useexisting — использует существующий логический том и повторно его форматирует

  • --fstype= — тип файловой системы: xfs, ext2, ext3, ext4, swap или vfat.

  • --fsoptions= — строка параметров монтирования файловой системы, заключённая в кавычки. В готовой системе эта строка будет записана в /etc/fstab. В разделе EFI (/boot/efi) Anaconda жёстко кодирует значение и игнорирует указанные пользователем значения в --fsoptions.

  • --mkfsoptions= — указывает дополнительные параметры, которые необходимо передать программе, создающей файловую систему в этом разделе. Список аргументов не обрабатывается, поэтому их необходимо предоставить в формате, который можно передать непосредственно в программу mkfs. Это означает, что несколько параметров должны быть разделены запятыми или заключены в двойные кавычки, в зависимости от файловой системы. Например,

    part /opt/foo1 --size=512 --fstype=ext4 --mkfsoptions="-O ^has_journal,^flex_bg,^metadata_csum"
    
    part /opt/foo2 --size=512 --fstype=xfs --mkfsoptions="-m bigtime=0,finobt=0"
    

    Подробности см. в руководствах создаваемых файловых систем. Например, mkfs.ext4 или mkfs.xfs.

  • --fsprofile= — указывает тип использования, который будет передан программе, создающей файловую систему в этом разделе. Тип использования определяет множество параметров настройки, которые будут использоваться при создании файловой системы. Чтобы этот параметр работал, файловая система должна поддерживать концепцию типов использования и должен существовать файл конфигурации, в котором перечислены допустимые типы. Для ext2, ext3 и ext4 этот файл — /etc/mke2fs.conf.

  • --label= — метка логического тома.

  • --grow — увеличить размер логического тома до заданной величины или заполнить все свободное место. Этот параметр следует использовать только в том случае, если вы заранее выделили минимальное пространство для хранения в образе диска и хотите, чтобы том увеличивался и занимал доступное пространство. В физической среде это одноразовое действие. Однако в виртуальной среде размер тома увеличивается по мере того, как виртуальная машина записывает какие-либо данные на виртуальный диск.

  • --size= — минимальный размер тома в мегабайтах. Нельзя использовать вместе с --percent=.

  • --percent= — размер увеличения логического тома в процентной доле от доступного места в группе томов. Нельзя использовать вместе с --size=.

    При создании нового логического тома необходимо указать его размер статически с помощью параметра --size= или в процентах от оставшегося свободного пространства с помощью параметра --percent=. Вы не можете использовать оба параметра применительно к одному и тому же логическом томе.

  • --maxsize= — максимально допустимый размер тома в мегабайтах. Укажите целое значение без единиц, например 500.

  • --recommended — автоматический выбор размера тома.

  • --resize — изменение размера тома. Также надо будет определить параметры --useexisting и --size.

  • --encrypted — включает шифрование логического тома с использованием парольной фразы LUKS из параметра --passphrase=. Если парольная фраза не определена, Anaconda использует стандартный пароль из строки autopart --passphrase, а если и он не задан — будет предложено ввести пароль во время установки.

    При шифровании одного или нескольких разделов Anaconda пытается собрать 256 бит энтропии, чтобы обеспечить безопасное шифрование разделов. Сбор энтропии может занять некоторое время — процесс остановится максимум через 10 минут, независимо от того, было ли собрано достаточно энтропии. Процесс можно ускорить, взаимодействуя с системой установки (набирая текст на клавиатуре или перемещая мышь). Если вы устанавливаете на виртуальную машину, вы также можете подключить к гостю устройство virtio-rng (виртуальный генератор случайных чисел).

  • --passphrase= — парольная фраза для доступа к логическому тому. Используется вместе с --encrypted.

  • --cipher= — тип шифрования, который будет выбран, если стандартного значения aes-xts-plain64, используемого в Anaconda, оказалось недостаточно. Этот параметр используется вместе с --encrypted и сам по себе силы не имеет. Рекомендуется выбрать aes-xts-plain64 или aes-cbc-essiv:sha256.

  • --escrowcert=URL_of_X.509_certificate — сертификат X.509, с помощью которого зашифрованы ключи томов в /root. Для каждого тома создается отдельный файл. Этот параметр имеет смысл только при наличии аргумента --encrypted.

  • --luks-version=LUKS_VERSION — версия LUKS для шифрования файловой системы. Этот параметр имеет смысл только если указан --encrypted.

  • --backuppassphrase — случайная парольная фраза для зашифрованного тома. Файлы паролей хранятся в /root и зашифрованы с помощью сертификата X.509. Этот параметр используется вместе с --escrowcert.

  • --pbkdf=PBKDF — задаёт алгоритм PBKDF для ключей LUKS. См. также справку cryptsetup(8). Этот параметр имеет смысл только если указан --encrypted.

  • --pbkdf-memory=PBKDF_MEMORY — задаёт затраты памяти для PBKDF. См. также справку cryptsetup(8). Этот параметр имеет смысл только если указан --encrypted.

  • --pbkdf-time=PBKDF_TIME — задаёт количество миллисекунд, затрачиваемое на обработку кодовой фразы PBKDF. См. также --iter-time в руководстве cryptsetup(8). Этот параметр имеет смысл только если указан --encrypted, и является взаимоисключающей с --pbkdf-iterations.

  • --pbkdf-iterations=PBKDF_ITERATIONS — задаёт количество итераций напрямую и не использует тест PBKDF. См. также --pbkdf-force-iterations в руководстве cryptsetup(8). Этот параметр имеет смысл только в том случае, если указан --encrypted, и является взаимоисключающим с --pbkdf-time.

  • --thinpool — создание логического тома в динамическом пуле. В качестве точки монтирования укажите none.

  • --metadatasize=size — размер области метаданных (в МБ).

  • --chunksize=size — размер секции для нового устройства динамического пула (в КиБ).

  • --thin — создание динамического логического тома. Используется вместе с --poolname.

  • --poolname=name — пул, в котором будет создан динамический том. Используется вместе с --thin.

  • --profile=name — имя профиля конфигурации, который будет использоваться с динамическими логическими томами. Если используется, имя также будет включено в метаданные данного логического тома. По умолчанию доступны профили default и thin-performance, которые определены в /etc/lvm/profile/. Дополнительную информацию смотрите в руководстве lvm(8).

  • --cachepvs= — cписок физических томов, разделенных запятыми, которые следует использовать в качестве кэша для этого тома.

  • --cachemode= — режим, который следует использовать для кэширования этого логического тома: writeback или writethrough.

    Дополнительную информацию о кэшированных логических томах и их режимах см. в руководстве lvmcache(7).

  • --cachesize= — размер кэша для логического тома в МБ. Для этого параметра требуется --cachepvs=.

Замечания

  • Имена логических томов и их групп не должны содержать дефис в противном случае в списке /dev/mapper/ они будут включать по два дефиса. То есть если группа volgrp-01 содержит том logvol-01, его имя будет иметь вид /dev/mapper/volgrp--01-logvol--01. Это ограничение накладывается только на новые группы и тома. Имена существующих томов (см. --noformat) не изменятся.

  • При утере парольной фразы LUKS, все зашифрованные разделы и их данные станут полностью недоступными. Восстановить утерянную парольную фразу невозможно. Однако вы можете сохранить кодовые фразы шифрования с помощью --escrowcert и создать резервные кодовые фразы с помощью --backuppassphrase.

Примеры

  • Создать раздел, группу логических томов, а затем логический том:

part pv.01 --size 3000
volgroup myvg pv.01
logvol / --vgname=myvg --size=2000 --name=rootvol
  • Создать раздел, группу логических томов, а затем логический том, который займёт 90 % оставшегося места в группе томов:

part pv.01 --size 1 --grow
volgroup myvg pv.01
logvol / --vgname=myvg --name=rootvol --percent=90

mount (дополнительная)

Задать точку монтирования существующему блочному устройству и при необходимости переформатировать его в заданный формат.

Синтаксис

mount [OPTIONS] device mountpoint

Обязательные параметры

  • device — блочное устройство.

  • mountpoint — действительная точка монтирования устройства, такая как / или /usr. Если устройство невозможно смонтировать (например, в swap), точки монтирования не будет.

Дополнительные параметры

  • --reformat= — задаёт формат для переформатирования (например, ext4).

  • --mkfsoptions= — дополнительные параметры для передаче команде, которая создает новую файловую систему, указанную в --reformat=. Представленные здесь параметры не обрабатываются, поэтому их необходимо указать в формате, который можно передать непосредственно в программу mkfs. Список параметров должен быть разделён запятыми или заключён в двойные кавычки, в зависимости от файловой системы.

  • --mountoptions= — задаёт строку произвольной формы, содержащую параметры, которые будут использоваться при монтировании файловой системы. Строка будет скопирована в файл /etc/fstab установленной системы и должна быть заключена в двойные кавычки.

Замечания

  • В отличие от большинства других команд настройки хранилища, команда mount не требует от вас описания всей конфигурации хранилища в Kickstart-файле. Вам нужно только убедиться, что описанное блочное устройство существует в системе. Однако если вы хотите создать стек хранилища со всеми подключёнными устройствами, для этого необходимо использовать другие команды, например part.

  • Команда mount не может использоваться вместе с другими командами, связанными с хранилищем, такими как part, logvol или autopart, в одном Kickstart-файле.

nvdimm (дополнительная)

Выполнить действие на NVDIMM-устройстве.

Синтаксис

nvdimm action [OPTIONS]

Действия

  • reconfigure — перенастроить NVDIMM-устройство в заданный режим. Кроме того, указанное устройство неявно помечается как используемое, поэтому следующая команда nvdimm use для того же устройства не нужна. Формат:

    nvdimm reconfigure [--namespace=NAMESPACE] [--mode=MODE] [--sectorsize=SECTORSIZE]
    
    • --namespace= — устройство в пространстве имён. Пример:

      nvdimm reconfigure --namespace=namespace0.0 --mode=sector --sectorsize=512
      
    • --mode= — режим. Сейчас доступен только sector.

    • --sectorsize= размер сектора для режима sector. Пример:

      nvdimm reconfigure --namespace=namespace0.0 --mode=sector --sectorsize=512
      

      Поддерживаемые размеры секторов — 512 и 4096 байт.

  • use — указать NVDIMM-устройство в качестве целевого устройства для установки. Устройство уже должно быть настроено в режим sector с помощью команды nvdimm reconfigure. Формат:

    nvdimm use [--namespace=NAMESPACE|--blockdevs=DEVICES]
    
    • --namespace= — устройство в пространстве имён. Пример:

      nvdimm use --namespace=namespace0.0
      
  • --blockdevs= — разделённый запятыми список блочных устройств, соответствующих используемым NVDIMM-устройствам. Поддреживается подстановочный знак звёздочка *. Например:

    nvdimm use --blockdevs=pmem0s,pmem1s
    nvdimm use --blockdevs=pmem*
    

Замечания

  • По умолчанию все NVDIMM-устройства игнорируются программой установки. Разрешите установку на эти устройства командой nvdimm.

part или partition (обязательная)

Отвечает за создание раздела.

Синтаксис

part|partition mntpoint [OPTIONS]

Параметры

  • mntpoint — каталог, в который будет смонтирован раздел. Формат точки монтирования:

    • /path. Примеры: /, /usr, /home

    • swap. Раздел подкачки. Чтобы автоматически выбрать размер раздела подкачки, добавьте аргумент --recommended:

      swap --recommended
      

      Будет выбран подходящий, но не обязательно оптимальный размер. Чтобы автоматически выбрать размер с выделением дополнительного пространства для перехода в спящий режим, добавьте аргумент --hibernation:

      swap --hibernation
      

      Общая формула расчёта: размер пространства подкачки = (--recommended) + (размер ОЗУ).

    • raid.id — программный RAID-массив (см. raid).

    • pv.id — раздел LVM (см. logvol).

    • biosboot — загрузочный раздел BIOS. На платформах AMD64 и Intel 64 с BIOS, использующих таблицу разделов GPT, необходимо создать загрузочный раздел размером 1 МБ. Именно в этот раздел будет установлен загрузчик. В системах с UEFI этот раздел не требуется. Также смотрите описание команды bootloader.

    • /boot/efi — системный раздел EFI. На платформах AMD64 и Intel 64 с UEFI, а также 64-битных ARM необходимо создать раздел с минимальным размером 50 МБ (рекомендуется 200 МБ). В системах с BIOS этот раздел не требуется. Также смотрите описание команды bootloader.

  • --size= — минимальный размер раздела в мегабайтах. Введите целое значение без указания единиц, например 500.

    Важно

    Если значение --size недостаточно велико, установка будет прекращена. Установите значение --size как минимальный объём требуемого места.

  • --grow — увеличить размер раздела до заданной величины или заполнить все свободное место.

    Примечание

    Если для раздела подкачки определен параметр --grow= без --maxsize=, Anaconda ограничит его максимальный размер, руководствуясь следующими правилами: в системах с физической памятью <2 ГБ максимальный размер будет равен двойному объему памяти, а в системах с памятью >2 ГБ максимальный размер будет равен объему памяти плюс 2 ГБ.

  • --maxsize= — максимальный размер раздела в мегабайтах. Укажите целое значение без единиц, например 500.

  • --noformat — использует существующий логический том без форматирования. Используется вместе с --onpart.

  • --onpart= или --usepart= — устройство, где будет создан раздел. Использует существующее пустое устройство и форматирует его. Пример:

    partition /home --onpart=hda1
    

    Эта команда создаст раздел /home на /dev/hda1.

    Пример создания раздела в пределах логического тома:

    partition pv.1 --onpart=hda2
    

    Устройство уже должно существовать, так как --onpart не может создать его.

    Также можно указать весь диск, а не раздел, и в этом случае Anaconda отформатирует и будет использовать диск без создания таблицы разделов. Однако обратите внимание, что установка GRUB2 не поддерживается на устройстве, отформатированном таким образом, и его необходимо разместить на диске с таблицей разделов.

    partition pv.1 --onpart=hdb
    
  • --ondisk= или --ondrive= — позволяет выбрать диск, на котором будет создан раздел. Например, --ondisk=sdb размещает раздел на втором SCSI-диске.

    Чтобы выбрать многопутевое устройство, не использующее LVM, следуйте формату disk/by-id/dm-uuid-mpath-WWID. Так, для устройства с идентификатором 2416CD96995134CA5D787F00A5AA11017 выполните:

    part / --fstype=xfs --grow --asprimary --size=8192 --ondisk=disk/by-id/dm-uuid-mpath-2416CD96995134CA5D787F00A5AA11017
    

    Предупреждение

    Не используйте имена устройств в виде mpatha, так как они не привязаны к конкретным дискам, и могут измениться в процессе установки. Это может привести к тому, что part выберет не тот диск.

  • --asprimary — отмечает раздел как первичный. Если это невозможно — что вероятно при наличии большого числа первичных разделов — процесс разбиения завершится неудачей. Этот параметр имеет смысл только для дисков с MBR, для дисков с GPT этот параметр не имеет смысла.

  • --fsprofile= — определяет профиль для передачи программе создания файловой системы. Профиль содержит набор параметров файловой системы. Этот аргумент требует наличия файла конфигурации. Так, в файловых системах ext2, ext3, ext4 файл расположен в /etc/mke2fs.conf.

  • --mkfsoptions= — дополнительные параметры, которые необходимо передать программе, создающей файловую систему. Похож на --fsprofile, но работает для всех файловых систем, а не только для тех, которые поддерживают концепцию профиля. Список аргументов не обрабатывается, поэтому их необходимо предоставить в формате, который можно передать непосредственно в программу mkfs. Это означает, что несколько параметров должны быть разделены запятыми или заключены в двойные кавычки, в зависимости от файловой системы. Например:

    part /opt/foo1 --size=512 --fstype=ext4 --mkfsoptions="-O ^has_journal,^flex_bg,^metadata_csum"
    
    part /opt/foo2 --size=512 --fstype=xfs --mkfsoptions="-m bigtime=0,finobt=0"
    

    Подробнее см. руководства создаваемых файловых систем. Например, mkfs.ext4 или mkfs.xfs.

  • --fstype= — тип файловой системы: xfs, ext2, ext3, ext4, swap, vfat, efi, biosboot.

  • --fsoptions — строка параметров монтирования файловой системы, заключённая в кавычки. В готовой системе эта строка будет записана в /etc/fstab.

    Примечание

    В системном разделе EFI (/boot/efi) Anaconda жёстко кодирует значение и игнорирует указанные пользователем значения --fsoptions.

  • --label= — метка раздела.

  • --recommended — автоматический выбор размера.

    Важно

    Параметр можно использовать только для разделов, в которых используется такая файловая система, как /boot и swap. Его нельзя использовать для создания физических томов LVM или RAID.

  • --onbiosdisk — создание раздела на заданном диске (в соответствии с обозначенным в BIOS).

  • --encrypted — включает шифрование раздела LUKS с использованием парольной фразы из --passphrase=. Если парольная фраза не задана, Anaconda использует стандартный пароль из строки autopart --passphrase, а если и он не задан — будет предложено его ввести во время установки.

    При шифровании одного или нескольких разделов Anaconda пытается собрать 256 бит энтропии, чтобы обеспечить безопасное шифрование разделов. Сбор энтропии может занять некоторое время — процесс остановится максимум через 10 минут, независимо от того, было ли собрано достаточно энтропии. Процесс можно ускорить, взаимодействуя с системой установки (набирая текст на клавиатуре или перемещая мышь). Если вы устанавливаете систему на виртуальную машину, вы также можете подключить к гостевой машине устройство virtio-rng (виртуальный генератор случайных чисел).

  • --luks-version=LUKS_VERSION — версия LUKS для шифрования файловой системы. Используется только если указан параметр --encrypted.

  • --passphrase= — парольная фраза для доступа к разделу. Используется вместе с --encrypted.

  • --cipher= — тип шифрования, который будет выбран, если стандартного значения aes-xts-plain64 оказалось недостаточно. Этот параметр используется вместе с --encrypted и сам по себе силы не имеет. Рекомендуется выбирать тип aes-xts-plain64 или aes-cbc-essiv:sha256.

  • --escrowcert=URL_of_X.509_certificate — сертификат X.509, с помощью которого зашифрованы ключи разделов в /root. Для каждого тома создается отдельный файл. Этот параметр имеет смысл только при наличии аргумента --encrypted.

  • --backuppassphrase — случайная парольная фраза для зашифрованного раздела. Файлы паролей хранятся в /root и зашифрованы с помощью сертификата X.509. Этот параметр используется вместе с --escrowcert.

  • --pbkdf=PBKDF — задаёт алгоритм PBKDF для ключей LUKS. См. также справку cryptsetup(8). Этот параметр имеет смысл только если указан --encrypted.

  • --pbkdf-memory=PBKDF_MEMORY — задаёт затраты памяти для PBKDF. См. также справку cryptsetup(8). Этот параметр имеет смысл только если указан --encrypted.

  • --pbkdf-time=PBKDF_TIME — задаёт количество миллисекунд, затрачиваемое на обработку кодовой фразы PBKDF. См. также --iter-time в руководстве cryptsetup(8). Этот параметр имеет смысл только если указан --encrypted, и является взаимоисключающей с --pbkdf-iterations.

  • --pbkdf-iterations=PBKDF_ITERATIONS — задаёт количество итераций напрямую и не использует тест PBKDF. См. также --pbkdf-force-iterations в руководстве cryptsetup(8). Этот параметр имеет смысл только в том случае, если указан --encrypted, и является взаимоисключающим с --pbkdf-time.

  • --resize= — изменение размера раздела (в МБ). Используется в комбинации с --size= и --onpart=.

Замечания

  • Команда part не является обязательной, но в Kickstart-сценарий должна быть включена одна из команд part, autopart или mount.

  • Если по какой-либо причине разбиение не было успешно, сообщения диагностики будут выведены на виртуальную консоль 3.

  • Все создаваемые разделы форматируются в процессе установки, если не указан --noformat и --onpart.

  • Формат sdX (или /dev/sdX) не гарантирует согласованность имён устройств при перезагрузке, что может усложнить использование некоторых команд. Если команде требуется имя узла устройства, в качестве альтернативы можно использовать любой элемент из /dev/disk. Например, вместо использования следующего имени устройства:

    part / --fstype=xfs --onpart=sda1
    

    Вы можете использовать запись, подобную одной из следующих:

    part / --fstype=xfs --onpart=/dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:0-part1
    
    part / --fstype=xfs --onpart=/dev/disk/by-id/ata-ST3160815AS_6RA0C882-part1
    

    При таком подходе команда всегда нацелена на одно и то же устройство хранения. Это особенно полезно в больших средах хранения. Чтобы просмотреть имена доступных устройств в системе, можно использовать команду ls -lR /dev/disk во время интерактивной установки.

  • При утере парольной фразы LUKS, все зашифрованные разделы и их данные станут полностью недоступными. Восстановить утерянную парольную фразу невозможно. Однако вы можете сохранить их с помощью --escrowcert и создать резервные кодовые фразы шифрования с помощью --backuppassphrase.

raid (дополнительная)

Создание программного RAID-массива.

Синтаксис

raid mntpoint --level=level --device=device-name partitions*

Параметры

  • mntpoint — каталог, в который будет смонтирована файловая система RAID. Если это — /, то уровень RAID должен быть равен 1. Если определён загрузочный раздел, /boot будет иметь уровень 1, а корневой раздел / может быть любого типа. Параметр partitions* определяет идентификаторы разделов, которые будут добавлены в RAID-массив. Можно указать несколько разделов.

    Если на платформах IBM Power Systems RAID-устройство не было отформатировано во время установки, убедитесь, что метаданные RAID имеют версию 0.90 или 1.0. Это является обязательным условием для размещения разделов /boot и PReP в пределах RAID-массива. Версия метаданных mdadm, 1.1 and 1.2, для разделов /boot и PReP не поддерживается. Загрузочные разделы PReP не требуются в системах PowerNV.

  • --level= — уровень RAID (0, 1, 4, 5, 6, or 10).

  • --device= — имя устройства, например, --device=root.

    Не используйте имена mdraid в форме md0 — постоянство этих имен не гарантируется. Вместо этого используйте осмысленные имена, такие как root или swap. Использование осмысленных имён создает символическую ссылку из /dev/md/name на любой узел /dev/mdX, назначенный массиву.

    К старым версиям RAID-массивов (с метаданными версии 0.90), которым нельзя присвоить имя, можно обращаться по метке файловой системы или UUID. Пример: --device=LABEL=root и --device=UUID=93348e56-4631-d0f0-6f5b-45c47f570b88.

    Вы можете использовать UUID файловой системы на RAID-устройстве или UUID самого RAID-устройства. UUID RAID-устройства должен быть в формате 8-4-4-4-12. UUID, сообщаемый mdadm, имеет формат 8:8:8:8, который необходимо изменить. Например, 93348e56:4631d0f0:6f5b45c4:7f570b88 следует изменить на 93348e56-4631-d0f0-6f5b-45c47f570b88.

  • --chunksize= — размер фрагмента RAID-хранилища в КБ. В определенных ситуациях использование размера фрагмента, отличного от размера по умолчанию (512 КБ), может повысить производительность RAID.

  • --spares= — число резервных дисков. Резервные диски используются для восстановления массива в случае сбоя одного из дисков.

  • --fsprofile= — профиль файловой системы, который определяет набор параметров файловой системы. Этот параметр требует наличия файла конфигурации. Так, в файловых системах ext2, ext3, ext4 файл расположен в /etc/mke2fs.conf.

  • --fstype= — тип файловой системы. Допустимые значения: xfs, ext2, ext3, ext4, swap, vfat.

  • --fsoptions= — строка параметров монтирования файловой системы, заключённая в кавычки. В готовой системе эта строка будет записана в /etc/fstab.

    В системном разделе EFI (/boot/efi) Anaconda жёстко кодирует значение и игнорирует указанные пользователем --fsoptions.

  • --mkfsoptions= — дополнительные параметры, которые необходимо передать программе, создающей файловую систему в этом разделе. Список аргументов не обрабатывается, поэтому их необходимо предоставить в формате, который можно передать непосредственно в программу mkfs. Это означает, что параметры должны быть разделены запятыми или заключены в двойные кавычки, в зависимости от файловой системы. Пример:

    part /opt/foo1 --size=512 --fstype=ext4 --mkfsoptions="-O ^has_journal,^flex_bg,^metadata_csum"
    
    part /opt/foo2 --size=512 --fstype=xfs --mkfsoptions="-m bigtime=0,finobt=0"
    

    Подробнее см. в руководствах файловых систем. Например, mkfs.ext4 или mkfs.xfs.

  • --label= — метка файловой системы. Если метка уже используется, будет создана новая метка.

  • --noformat — использует существующее устройство без форматирования RAID-массива.

  • --useexisting — использует существующее устройство и повторно его форматирует.

  • --encrypted — включает шифрование RAID-устройства с использованием парольной фразы LUKS из --passphrase. Если парольная фраза не задана, Anaconda использует стандартный пароль из строки autopart --passphrase, а если и он не задан — будет предложено его ввести во время установки.

    При шифровании одного или нескольких разделов Anaconda пытается собрать 256 бит энтропии, чтобы обеспечить безопасное шифрование разделов. Сбор энтропии может занять некоторое время — процесс остановится максимум через 10 минут, независимо от того, было ли собрано достаточно энтропии. Процесс можно ускорить, взаимодействуя с системой установки (набирая текст на клавиатуре или перемещая мышь). Если вы устанавливаете систему на виртуальную машину, вы также можете подключить к гостевой машине устройство virtio-rng (виртуальный генератор случайных чисел).

  • --luks-version=LUKS_VERSION — версия LUKS для шифрования файловой системы. Используется только если указан параметр --encrypted.

  • --cipher= — ип шифрования, который будет выбран, если стандартного значения aes-xts-plain64, используемого в Anaconda, оказалось недостаточно. Этот параметр используется вместе с --encrypted и сам по себе силы не имеет. Рекомендуется выбирать тип aes-xts-plain64 или aes-cbc-essiv:sha256.

  • --passphrase= — парольная фраза для доступа к RAID-устройству. Используется вместе с --encrypted и сам по себе силы не имеет.

  • --escrowcert=URL_of_X.509_certificate — сертификат X.509, с помощью которого зашифрован ключ устройства в /root. Этот параметр имеет смысл только при наличии аргумента --encrypted.

  • --backuppassphrase — случайная парольная фраза для устройства. Файлы паролей хранятся в /root и зашифрованы с помощью сертификата X.509. Этот параметр используется вместе с --escrowcert.

  • --pbkdf=PBKDF — задаёт алгоритм PBKDF для ключей LUKS. См. также справку cryptsetup(8). Этот параметр имеет смысл только если указан --encrypted.

  • --pbkdf-memory=PBKDF_MEMORY — задаёт затраты памяти для PBKDF. См. также справку cryptsetup(8). Этот параметр имеет смысл только если указан --encrypted.

  • --pbkdf-time=PBKDF_TIME — задаёт количество миллисекунд, затрачиваемое на обработку кодовой фразы PBKDF. См. также --iter-time в руководстве cryptsetup(8). Этот параметр имеет смысл только если указан --encrypted, и является взаимоисключающей с --pbkdf-iterations.

  • --pbkdf-iterations=PBKDF_ITERATIONS — задаёт количество итераций напрямую и не использует тест PBKDF. См. также --pbkdf-force-iterations в руководстве cryptsetup(8). Этот параметр имеет смысл только в том случае, если указан --encrypted, и является взаимоисключающим с --pbkdf-time.

Пример

В следующем примере будут созданы разделы / (RAID1) и /home (RAID5). Предполагается, что всего установлено три диска SCSI. Также будут созданы три раздела подкачки, по одному на каждом диске.

part raid.01 --size=6000 --ondisk=sda
part raid.02 --size=6000 --ondisk=sdb
part raid.03 --size=6000 --ondisk=sdc
part swap --size=512 --ondisk=sda
part swap --size=512 --ondisk=sdb
part swap --size=512 --ondisk=sdc
part raid.11 --size=1 --grow --ondisk=sda
part raid.12 --size=1 --grow --ondisk=sdb
part raid.13 --size=1 --grow --ondisk=sdc
raid / --level=1 --device=rhel8-root --label=rhel8-root raid.01 raid.02 raid.03
raid /home --level=5 --device=rhel8-home --label=rhel8-home raid.11 raid.12 raid.13

Замечания

  • При утере парольной фразы LUKS, любые зашифрованные разделы и их данные станут полностью недоступными. Восстановить утерянную парольную фразу невозможно. Однако вы можете сохранить кодовые фразы шифрования с помощью --escrowcert и создать резервные кодовые фразы шифрования с помощью --backuppassphrase.

reqpart (дополнительная)

Автоматически создаёт разделы, требующиеся для аппаратной платформы:

  • /boot/efi для систем с UEFI

  • biosboot для систем с BIOS и GPT

  • PRePBoot для IBM Power Systems.

Синтаксис

reqpart [--add-boot]

Дополнительные параметры

  • --add-boot — создать отдельный раздел /boot в дополнение к разделу для конкретной платформы, созданному базовой командой.

Замечания

  • Нельзя использовать вместе с autopart, поскольку autopart делает всё то же, что и reqpart и, кроме того, создаёт другие разделы или логические тома, такие как / и swap. В отличие от autopart, эта команда создаёт только разделы для конкретной платформы и оставляет остальную часть диска пустой, что позволяет вам создать разделы по вашему желанию.

snapshot (дополнительная)

Создаёт снимки динамических томов LVM во время процесса установки. Это позволяет создавать резервные копии логического тома до или после установки.

Чтобы создать несколько снимков, добавьте команду snaphost в Kickstart-файл несколько раз.

Синтаксис

snapshot vg_name/lv_name --name=snapshot_name --when=pre-install|post-install

Дополнительные параметры

  • vg_name/lv_name — задаёт имя группы томов и логического тома, из которого создается снимок.

  • --name=snapshot_name — имя снимка. Это имя должно быть уникальным в пределах группы томов.

  • --when=pre-install|post-install — создавать снимок до начала установки или после её завершения.

volgroup (дополнительная)

Создание группы LVM.

Синтаксис

volgroup name [OPTIONS] [partition*]

Обязательные параметры

  • name — имя новой группы томов.

Дополнительные параметры

  • partition — разделы физических томов, которые будут использоваться в качестве резервного хранилища для группы томов.

  • --noformat — использует существующую группу томов без форматирования.

  • --useexisting — использует существующую группу томов и повторно ее форматирует. Не указывайте раздел при использовании этого параметра. Пример:

    volgroup rhel00 --useexisting --noformat
    
  • --pesize= — размер физических экстентов в КБ. Значение по умолчанию — 4096 (4 МБ), минимальное значение — 1024 (1 МБ).

  • --reserved-space= — размер пространства в мегабайтах, которое должно быть зарезервировано в группе томов. Применимо только к новым группам томов.

  • --reserved-percent= — процентная доля пространства, зарезервированного в группе томов. Применимо только к новым группам томов.

Замечания

  • Пример создания раздела, группы логических томов и отдельного тома:

    part pv.01 --size 10000
    volgroup my_volgrp pv.01
    logvol / --vgname=my_volgrp --size=2000 --name=root
    
  • Имена логических томов и их групп не должны содержать дефис в противном случае в списке /dev/mapper/ они будут включать по два дефиса. То есть если группа volgrp-01 содержит том logvol-01, его имя будет иметь вид /dev/mapper/volgrp--01-logvol--01. Это ограничение накладывается только на новые группы и тома. Имена существующих томов (см. --noformat) не изменятся.

zerombr (дополнительная)

Команда zerombr заново инициализирует недействительные таблицы разделов. Это приведет к потере данных на дисках с этими таблицами.

Эта команда требуется при выполнении установки в 64-битной IBM System Z с неотформатированными DASD-дисками, в противном случае неотформатированные диски не форматируются и не используются во время установки.

Синтаксис

zerombr

Замечания

  • Если в ходе выполнения установки на платформах IBM System Z были обнаружены неотформатированные DASD-устройства (Direct Access Storage Device), они будут автоматически отформатированы с помощью dasdfmt. Эта команда подавляет запросы подтверждения пользователя в ходе интерактивной установки.

  • Если zerombr не задан и программа установки обнаружила неотформатированное DASD-устройство, Kickstart-установка завершится неудачей.

  • Если zerombr не указан и программа установки обнаружила хотя бы одно неотформатированное DASD-устройство, но пользователь не подтвердил форматирование дисков, интерактивная установка завершит работу. Чтобы это предотвратить, следует подключать только те диски, которые будут использоваться в процессе установки. Остальные устройства можно будет добавить позднее.

  • У этой команды нет параметров.

zfcp (дополнительная)

Применимо к IBM System Z и определяет FC-устройство (Fibre Channel).

Синтаксис

zfcp --devnum=devnum [--wwpn=wwpn --fcplun=lun]

Дополнительные параметры

  • --devnum= — номер устройства (идентификатор шины адаптера zFCP).

  • --wwpn= — шестнадцатеричный номер WWPN ( World Wide Port Name) с префиксом 0x.

  • --fcplun= — шестнадцатеричный номер LUN (Logical Unit Number) с префиксом 0x

Замечания

Достаточно указать идентификатор шины устройства FCP, если доступно автоматическое сканирование LUN и при установке версии 9 и более поздних. В противном случае обязательны все три параметра. Автоматическое сканирование LUN доступно для устройств FCP, работающих в режиме NPIV, если оно не отключено через параметр модуля zfcp.allow_lun_scan (включено по умолчанию). Он обеспечивает доступ ко всем устройствам SCSI, обнаруженным в сети хранения данных, подключённым к устройству FCP с указанным идентификатором шины.

Пример

zfcp --devnum=0.0.4000 --wwpn=0x5005076300C213e9
--fcplun=0x5022000000000000
zfcp --devnum=0.0.4000

Команды для надстроек, поставляемых с программой установки

Команды, относящиеся к надстройкам, поставляемым по умолчанию с программой установки: Kdump и OpenSCAP.

%addon com_redhat_kdump (дополнительная)

Команда для настройки механизма kdump.

Синтаксис

%addon com_redhat_kdump [OPTIONS]
%end

Примечание

Синтаксис этой команды необычен, поскольку это надстройка, а не встроенная Kickstart-команда.

Параметры

  • --enable — включить kdump в установленной системе.

  • --disable — выключить kdump в установленной системе.

  • --reserve-mb= — объём памяти, зарезервированный для kdump, в МБ. Пример:

    %addon com_redhat_kdump --enable --reserve-mb=128
    %end
    

Вы также можете указать auto вместо числового значения. В этом случае программа установки определит объём памяти автоматически. Если вы включите kdump и не укажете опцию --reserve-mb=, будет использоваться значение auto.

  • --enablefadump — включите дамп с помощью встроенного ПО в системах, которые это позволяют (в частности, на серверах IBM Power Systems).

Замечания

  • Kdump — это механизм дампа ядра, который позволяет сохранять содержимое системной памяти для последующего анализа. Он опирается на kexec, который можно использовать для загрузки ядра Linux из контекста другого ядра без перезагрузки системы и сохранения содержимого памяти первого ядра, которое в противном случае было бы потеряно.

  • В случае сбоя системы kexec загружается во второе ядро (ядро захвата). Это ядро захвата находится в зарезервированной части системной памяти. Затем Kdump захватывает содержимое памяти повреждённого ядра (аварийный дамп) и сохраняет его в указанном месте. Местоположение невозможно настроить с помощью описываемой Kickstart-команды; его необходимо настроить после установки, отредактировав файл конфигурации /etc/kdump.conf.

%addon com_redhat_oscap (дополнительная)

Надстройка программы установки OpenSCAP используется для применения содержимого SCAP (протокол автоматизации управления данными безопасности) — политик безопасности — в установленной системе. Это дополнение включено по умолчанию. Если параметр включён, пакеты, необходимые для обеспечения этой функциональности, будут установлены автоматически. Однако по умолчанию никакие политики не применяются, а это означает, что никакие проверки не выполняются ни во время, ни после установки, если это специально не настроено.

Примечание

Применение политик безопасности необходимо не во всех системах. Эту команду следует использовать только в том случае, если определённая политика предусмотрена правилами организации или государством.

В отличие от большинства других команд, эта команда не принимает обычные параметры, а вместо этого использует пары ключ-значение в теле определения %addon. Эти пары не зависят от наличия пробелов. Значения могут быть дополнительно заключены в одинарные (') или двойные кавычки (").

Синтаксис

%addon com_redhat_oscap
key = value
%end

Ключи

  • content-type — тип содержимого безопасности. Возможные значения: datastream, archive, rpm и scap-security-guide. Если content-type определён как scap-security-guide, надстройка будет использовать содержимое, предоставленное пакетом scap-security-guide, который есть на загрузочном носителе. Это означает, что все остальные ключи, кроме profile, не будут иметь никакого эффекта.

  • content-url — расположение содержимого безопасности. Доступно по протоколу HTTP, HTTPS или FTP; расположение в локальном хранилище в настоящее время не поддерживается. Для доступа к определениям контента в удалённом месте должно быть доступно сетевое соединение.

  • datastream-id — идентификатор потока данных, указанный в значении content-url. Используется только в том случае, если content-type указан как datastream.

  • xccdf-id — идентификатор критерия, который вы хотите использовать.

  • content-path — путь к потоку данных или файлу XCCDF, который следует использовать; указывается как относительный путь в архиве.

  • profile — идентификатор применяемого профиля. Используйте default, чтобы применить профиль по умолчанию.

  • fingerprint — контрольная сумма MD5, SHA1 или SHA2 контента, на который ссылается content-url.

  • tailoring-path — путь к используемому файлу адаптации; указывается как относительный путь в архиве.

Примеры

  • Раздел %addon com_redhat_oscap, в котором используется содержимое scap-security-guide на установочном носителе:

    %addon com_redhat_oscap
    content-type = scap-security-guide
    profile = xccdf_org.ssgproject.content_profile_pci-dss
    %end
    
  • Более сложный пример загрузки пользовательского профиля с веб-сервера:

    %addon com_redhat_oscap
    content-type = datastream
    content-url = http://www.example.com/scap/testing_ds.xml
    datastream-id = scap_example.com_datastream_testing
    xccdf-id = scap_example.com_cref_xccdf.xml
    profile =  xccdf_example.com_profile_my_profile
    fingerprint = 240f2f18222faa98856c3b4fc50c4195
    %end
    

Команды, используемые в Anaconda

Команда pwpolicy специфична для пользовательского интерфейса Anaconda, её можно использовать только в разделе %anaconda Kickstart-файла.

pwpolicy (дополнительная, устарела)

Команда pwpolicy используется, чтобы применить пользовательскую политику паролей во время установки. Политика требует от вас создания паролей для учетных записей root, пользователей или пользователей luks. Такие факторы, как длина и надёжность пароля, определяют его достоверность.

Синтаксис

pwpolicy name [--minlen=length] [--minquality=quality] [--strict|--notstrict] [--emptyok|--notempty] [--changesok|--nochanges]

Обязательные параметры

  • name — замените на root, user или luks, чтобы применить политику для пароля root, паролей пользователей или кодовой фразы LUKS соответственно.

Дополнительные параметры

  • --minlen= — минимальная допустимая длина пароля в символах. По умолчанию — 6.

  • --minquality= — минимально допустимая сложность пароля, определённая библиотекой libpwquality. Значение по умолчанию — 1.

  • --strict — включает строгое соблюдение пароля. Пароли, не соответствующие требованиям, указанным в --minquality= и --minlen=, не принимаются. По умолчанию отключена.

  • --notstrict — пароли, которые не соответствуют минимальным требованиям, указанным в --minquality= и --minlen=, будут приняты после двойного нажатия кнопки «Готово» в графическом интерфейсе. Для текстового режима используется аналогичный механизм.

  • --emptyok — разрешить использование пустых паролей. Включено по умолчанию для паролей пользователей.

  • --notempty — запретить использование пустых паролей. Включено по умолчанию для пароля root и кодовой фразы LUKS.

  • --changesok — изменить пароль в пользовательском интерфейсе, даже если в Kickstart-файле он уже указан. По умолчанию отключено.

  • --nochanges — запретить изменение пароля, установленного в Kickstart-файле. Включено по умолчанию.

Замечания

  • Команду pwpolicy можно использовать только в разделе %anaconda Kickstart-файла.

  • Для проверки минимальных требований к паролю (длина и сложность) используется библиотека libpwquality. Вы можете использовать команды pwscore и pwmake, входящие в пакет libpwquality для проверки сложности пароля или для создания случайного пароля с заданным рейтингом.

Команды восстановления системы

Команды, использующиеся для восстановления установленной системы.

rescue (дополнительная)

Команда предоставляет среду оболочки с правами root и набор инструментов управления системой для восстановления установки и устранения таких проблем, как:

  • монтирование файловых систем только для чтения

  • чёрный список или добавление драйвера, имеющегося на диске

  • установка или обновление системных пакетов

  • управление разделами

Примечание

Режим восстановления Kickstart отличается от режима восстановления и аварийного режима, которые предоставляются как часть systemd и диспетчера служб.

Команда rescue сама по себе не модифицирует систему. Она только устанавливает среду восстановления, монтируя систему в /mnt/sysimage в режиме чтения-записи. Вы можете не монтировать систему или монтировать ее в режиме только для чтения.

Синтаксис

rescue [--nomount|--romount]

Дополнительные параметры

  • --nomount или --romount — контролирует способ монтирования установленной системы в среде восстановления. По умолчанию программа установки находит систему и монтирует её в режиме чтения-записи, сообщая вам, где она выполнила это монтирование. При желании вы можете ничего не монтировать (опция --nomount) или монтировать в режиме только для чтения (опция --romount). Можно использовать только один из двух параметров.

Замечания

Для запуска режим восстановления, сделайте копию Kickstart-файла и включите в него команду rescue.

При использовании команды rescue установщик будет выполнять следующие шаги:

  1. Запуск сценария %pre.

  2. Настройка среды для режима восстановления. Будут выполнены следующие Kickstart-команды:

    • updates

    • sshpw

    • logging

    • lang

    • network

  3. Настройка расширенной среды хранения. Будут выполнены следующие Kickstart-команды:

    • fcoe

    • iscsi

    • iscsiname

    • nvdimm

    • zfcp

  4. Монтирование системы:

rescue [--nomount|--romount]
  1. Запуск сценария %post. Этот шаг выполняется только в том случае, если установленная система смонтирована в режиме чтения-записи.

  2. Запуск оболочки.

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