Инсталятор НАЙС.ОС

Краткий обзор

5. Что такое UI config

UI config — это файл в формате JSON, в котором можно указать параметры для отображения дополнительных экранов в процессе установки НАЙС.ОС.

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

5.1 download_screen — экран загрузки файла по URL

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

Важно: этот экран отображается только если также включён network_screen.

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

  • "title" (обязательный) — короткий заголовок, отображаемый на экране;
  • "intro" (обязательный) — краткое описание (1–2 строки), объясняющее пользователю, какой URL нужно ввести;
  • "destination" (обязательный) — путь в установленной системе, куда будет сохранён файл после загрузки.

Пример использования: вы хотите, чтобы пользователь ввёл ссылку на кастомный скрипт или конфигурацию, который автоматически загрузится и сохранится в /etc/custom/init.sh после установки.

1. Что такое Kickstart

Kickstart — это специальный файл, в котором заранее указано, как нужно устанавливать систему НАЙС.ОС: какой язык, разметка диска, какие пакеты ставить и т.д. Он помогает полностью автоматизировать установку — от начала до конца без участия пользователя.

Это особенно полезно, если вы ставите систему много раз — например, на сервера, в виртуальные машины или в корпоративной сети.

2. Как использовать Kickstart

Чтобы установка прошла автоматически, установщику НАЙС.ОС нужно «подсунуть» файл конфигурации Kickstart. Есть два основных способа:

  • Для виртуальных машин в ESXi — самый простой способ;
  • Для обычных компьютеров или других виртуалок — через параметр загрузки ks= .

2.1 Если вы устанавливаете в ESXi (виртуализация от VMware)

Здесь всё просто — достаточно добавить файл Kickstart в настройки виртуальной машины. Есть два варианта:

  • guestinfo.kickstart.data=<base64-кодированный текст файла>
    — содержимое Kickstart-файла вставляется прямо в настройки (но предварительно кодируется в base64);
  • guestinfo.kickstart.url=<ссылка на файл>
    — указать ссылку, откуда файл можно скачать (например, с локального сервера или интернета).

Поддерживаются ссылки начинающиеся с: http:// , https:// , или https+insecure:// (последний вариант не проверяет SSL-сертификат сайта).

2.2 Если вы устанавливаете на обычный ПК, сервер или в другую виртуалку

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

Просто добавьте в параметры загрузки строку:

        
          ks=<путь до файла>
        
      

Ниже — примеры, как правильно указать путь.

3. Примеры, как указать путь к файлу Kickstart

3.1 Файл лежит прямо в ISO-образе

        
          ks=cdrom:/isolinux/sample_ks.cfg
        
      

Это работает, если вы добавили файл sample_ks.cfg внутрь ISO. Установщик сам найдёт его на подключённом диске.

3.2 Файл находится на флешке или внешнем диске

        
          ks=/dev/sdb1:/kickstart/naisos.cfg
        
      

Здесь /dev/sdb1 — это имя устройства (например, флешки), а /kickstart/naisos.cfg — путь до файла на этом устройстве.

3.3 Файл находится на удалённом сервере (по сети)

        
          ks=https://example.com/kickstart/naisos.cfg
        
      

Установщик скачает файл с сервера. Можно использовать обычный http , защищённый https , или https+insecure (если не хотите проверять SSL-сертификат).

1. Настройка имени хоста

Скрипт hostname.py устанавливает имя хоста системы, заданное в конфигурации установки. Это имя сохраняется в системных файлах и применяется при запуске.

  • /etc/hostname — устанавливается заданное имя хоста;
  • /etc/hosts — добавляется строка для корректного разрешения имени хоста.

Результат: система получает уникальное сетевое имя, которое используется в терминале, журналах и сетевых службах.

2. Установка пароля root

Скрипт password.py задаёт пароль для суперпользователя root и настраивает срок его действия, если это указано.

  • /etc/passwd — обновляется информация о пароле root;
  • /etc/shadow — устанавливается хеш пароля;
  • /etc/login.defs — при необходимости обновляется срок действия пароля.

Также запускаются системные команды pwconv , grpconv , chage для применения изменений.

3. Добавление публичного ключа

Скрипт public_key.py добавляет SSH-публичный ключ в аккаунт root и разрешает вход по SSH.

  • /root/.ssh/authorized_keys — добавляется публичный ключ;
  • /etc/ssh/sshd_config.d/200-allow-root-login.conf — включается доступ root по SSH.

Это позволяет администратору подключаться к системе сразу после установки, без ввода пароля.

4. Настройка локали

Скрипт locale.py задаёт системную локаль (например, ru_RU.UTF-8 ).

  • /etc/locale.conf — задаётся системная локаль.

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

5. Настройка идентификатора системы

Скрипт machine_id.py генерирует уникальный идентификатор системы или создаёт пустой файл для автоматической генерации при загрузке.

  • /etc/machine-id — создаётся или очищается в зависимости от режима установки (live или образ).

Это предотвращает дублирование идентификаторов при массовом развёртывании систем.

6. Предустановочные скрипты

Скрипт preinstall.py выполняет пользовательские скрипты, заданные в конфигурации, перед началом установки.

  • /tmp/pre-install/ — временное место хранения пользовательских скриптов.

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

7. Скрипты перед установкой пакетов

Скрипт prepkgsinstall.py запускает пользовательские скрипты до установки программных пакетов.

  • /tmp/prepkgs-install/ — временное хранилище скриптов;
  • Устанавливается переменная окружения POI_ROOT для скриптов.

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

8. Пост-установочные скрипты

Скрипт postinstall.py выполняет пользовательские скрипты после завершения установки.

  • /tmp/post-install/ — временное размещение скриптов, которые запускаются внутри установленной системы.

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

Комментарии
Обратная связь

Нашли ошибку или хотите предложить улучшение? Напишите нам.

Отправить отзыв

НАЙС.ОС включена в реестр российского ПО (#23155) и готова к сертификации ФСТЭК. Свидетельство о государственной регистрации программы для ЭВМ №2025612870 от 05 февраля 2025 г.