Перейти к содержимому

Файл конфигурации

MiniOS отличается от большинства классических flash-дистрибутивов тем, что некоторые параметры можно задать до загрузки в достаточно простом конфигурационном файле config/config.conf, что минимизирует количество работы при создании собственных модулей для встраиваемых систем. При необходимости некоторые параметры можно задать в параметрах загрузки. Параметры загрузки имеют приоритет над конфигурационным файлом. Некоторые параметры в этом файле являются служебными, и их лучше не изменять. Ниже приведён пример стандартного конфигурационного файла:

# You can get information about minios-live-config and other options:
# man live-config
LIVE_CONFIG_CMDLINE="components"
LIVE_HOSTNAME="minios"
LIVE_USERNAME="live"
LIVE_USER_FULLNAME="MiniOS Live User"
LIVE_USER_DEFAULT_GROUPS="dialout cdrom floppy audio video plugdev users fuse plugdev netdev powerdev scanner bluetooth weston-launch kvm libvirt libvirt-qemu vboxusers lpadmin dip sambashare docker wireshark"
LIVE_USER_PASSWORD_CRYPTED='$y$j9T$ZjqXh232.8hREYixjgMNN.$ADNa7mAp.Cjky5HgjG7JioH3SxnzPLljAC0fVxPsYr6'
LIVE_ROOT_PASSWORD_CRYPTED='$y$j9T$y6H8zml37HjzKO517qvkc.$53Ux0xA0OVHIELjgf91mMd8nr1DM.E3PSI.StCEnn4.'
LIVE_CONFIG_NOROOT=""
LIVE_LOCALES="en_US.UTF-8"
LIVE_TIMEZONE="Etc/UTC"
LIVE_KEYBOARD_MODEL="pc105"
LIVE_KEYBOARD_LAYOUTS="us,us"
LIVE_KEYBOARD_OPTIONS="grp:alt_shift_toggle,grp_led:scroll"
LIVE_KEYBOARD_VARIANTS=","
LIVE_CONFIG_DEBUG="true"
LIVE_LINK_USER_DIRS="false"
LIVE_BIND_USER_DIRS="false"
LIVE_USER_DIRS_PATH="/minios/userdata"
LIVE_MODULE_MODE="merged"

# MiniOS LiveKit settings.
DEFAULT_TARGET="graphical"
ENABLE_SERVICES="ssh"
DISABLE_SERVICES=""
EXPORT_LOGS="false"

Описание параметров

Легенда:

  • 🔒 Только один раз — применяется только при первой загрузке, не может быть изменён при последующих загрузках
  • 🔄 Переконфигурируемый — можно менять при каждой загрузке и применять повторно
ПараметрПереконфигурируемыйЗначениеПример
LIVE_CONFIG_CMDLINE🔄Дополнительные параметры загрузки live-config. См. man 7 live-config.LIVE_CONFIG_CMDLINE="components"
LIVE_HOSTNAME🔄Имя узла, связанного с системой. См. man 7 live-config.LIVE_HOSTNAME="minios"
LIVE_USERNAME🔒Имя пользователя, чей профиль будет создан при первой загрузке. Если указать имя пользователя root, профиль пользователя создан не будет, и вход будет выполнен под root. См. man 7 live-config.LIVE_USERNAME="live"
LIVE_USER_FULLNAME🔒Полное имя основного пользователя. См. man 7 live-config.LIVE_USER_FULLNAME="MiniOS Live User"
LIVE_USER_DEFAULT_GROUPS🔒Список групп для основного пользователя через запятую. См. man 7 live-config.LIVE_USER_DEFAULT_GROUPS="dialout,cdrom,floppy..."
LIVE_USER_PASSWORD_CRYPTED🔒Пароль основного пользователя в зашифрованном виде (хэш). Для генерации используйте mkpasswd -m yescrypt. См. man 7 live-config.LIVE_USER_PASSWORD_CRYPTED='$y$j9T$...'
LIVE_ROOT_PASSWORD_CRYPTED🔒Пароль привилегированного пользователя root в зашифрованном виде (хэш). Для генерации используйте mkpasswd -m yescrypt. См. man 7 live-config.LIVE_ROOT_PASSWORD_CRYPTED='$y$j9T$...'
LIVE_CONFIG_NOROOT🔒Если задано, отключает вход под root и отключает sudo/policykit для пользователя. См. man 7 live-config.LIVE_CONFIG_NOROOT=""
LIVE_LOCALES🔄Устанавливает локаль. Можно указать несколько значений через запятую. См. man 7 live-config.LIVE_LOCALES="en_US.UTF-8"
LIVE_TIMEZONE🔄Устанавливает часовой пояс (например, "Europe/Berlin", "Etc/UTC"). См. man 7 live-config.LIVE_TIMEZONE="Etc/UTC"
LIVE_KEYBOARD_MODEL🔄Устанавливает модель клавиатуры (например, "pc105"). См. man 7 live-config.LIVE_KEYBOARD_MODEL="pc105"
LIVE_KEYBOARD_LAYOUTS🔄Устанавливает раскладки клавиатуры (через запятую, например, "us,de"). См. man 7 live-config.LIVE_KEYBOARD_LAYOUTS="us,de"
LIVE_KEYBOARD_OPTIONS🔄Устанавливает опции клавиатуры (например, "grp:alt_shift_toggle,grp_led:scroll"). См. man 7 live-config.LIVE_KEYBOARD_OPTIONS="grp:alt_shift_toggle,grp_led:scroll"
LIVE_KEYBOARD_VARIANTS🔄Устанавливает варианты клавиатуры (через запятую, можно оставить пустым или соответствовать раскладкам). См. man 7 live-config.LIVE_KEYBOARD_VARIANTS=","
LIVE_CONFIG_DEBUG🔄Включает вывод отладки для live-config. См. man 7 live-config.LIVE_CONFIG_DEBUG="true"
LIVE_LINK_USER_DIRS🔄Если true, пользовательские каталоги будут символически связаны из указанного пути.LIVE_LINK_USER_DIRS="false"
LIVE_BIND_USER_DIRS🔄Если true, пользовательские каталоги будут примонтированы через bind из указанного пути.LIVE_BIND_USER_DIRS="false"
LIVE_USER_DIRS_PATH🔄Путь к пользовательским данным на флеш-накопителе.LIVE_USER_DIRS_PATH="/minios/userdata"
LIVE_MODULE_MODE🔄Выбор режима работы системы. Если планируете устанавливать ПО только модулями, используйте "merged". Если хотите устанавливать ПО через apt, используйте "simple". По умолчанию — "merged".LIVE_MODULE_MODE="merged"
DEFAULT_TARGET🔄Целевой режим загрузки systemd. См. man systemd.special.DEFAULT_TARGET="graphical"
ENABLE_SERVICES🔄Включить сервисы при загрузке (через запятую).ENABLE_SERVICES="ssh"
DISABLE_SERVICES🔄Отключить сервисы при загрузке (через запятую).DISABLE_SERVICES=""
EXPORT_LOGS🔄Если true, при загрузке с носителя с записью логи MiniOS копируются в папку minios/logs во время загрузки.EXPORT_LOGS="false"

Подробнее о большинстве параметров см.:

  • man 7 live-config (live-config)
  • Для целей systemd: man systemd.special

Важно!

  • SSH-сервер включён по умолчанию для совместимости с сторонними initrd, чтобы его отключить, недостаточно просто убрать его из ENABLE_SERVICES.

Чем ещё может быть полезен файл config.conf? Вы можете использовать его для задания собственных параметров в ваших скриптах при создании модулей. При первой загрузке он копируется в папку /etc/minios, далее файл /etc/live/config.conf автоматически отслеживается и при изменениях перезаписывает конфигурационный файл на флеш-накопителе, если он доступен для записи. Таким образом, вы можете помещать свои переменные в config.conf и получать их из /etc/live/config.conf в своих скриптах независимо от типа используемого initrd.