Конфигурационный файл используется для настройки параметров операционной системы и начальных настроек некоторых программ.
В системе присутствуют:
Глобальный конфигурационный файл
Путь: /mnt/livemedia/ublinux-data/ublinux.ini
Содержит в себе все параметры настройки, разделенные блоками (группы файлов). Используется в момент загрузки системы и формирует локальные конфигурационные файлы. Все изменения внесенные в глобальный конфигурационный файл сохраняются после перезагрузки.
Локальные конфигурационные файлы
Путь: /etc/ublinux/*
Локальные конфигурационные файлы формируются из глобального конфигурационного файла каждый раз во время запуска системы и необходимы для изменений в текущий момент работы системы. Внесенные изменения в локальные файлы сбрасываются после перезагрузки.
Если система работает в режиме песочницы и каталог ublinux-data отсутствует, то рекомендуется перенести ublinux.ini в каталог: /mnt/livedata/ublinux/.
Данный файл доступен для изменения только с правами администратора.
Для обновления конфигурационного файла следует воспользоваться утилитой UBConfig:
После каждого обновления создается резервная копия файла "ublinux.ini" с номером:
ublinux.ini.~n~
, где n - порядковый номер резервной копии (например: ublinux.ini.~1~, ublinux.ini.~2~).
Для восстановления конфигурационного файла необходимы права администратора.
Восстановление конфигурационного файла возможно двумя способами:
/mnt/livemedia/ublinux-data/
;ublinux.ini.~n~
;/mnt/livemedia/ublinux-data/
;/mnt/livemedia/ublinux
;ublinux-data.tar.xz
получить файл "ublinux.ini";/mnt/livemedia/ublinux-data/
$Файл
ublinux.ini
, расположенный в архивеublinux-data.tar.xz
, является исходным конфигурационным файлом, с параметрами, установленными по умолчанию.
Для редактирования конфигурационных файлов необходимы права администратора.
Редактировать конфигурационный файл ublinux.ini
можно тремя способами:
Способ №1: Редактирование используя графические системные утилиты
Графические системные утилиты, позволяющие сохранять настройки в глобальный и/или локальные файлы с помощью функциональной кнопки "Сохранить" в верхней части окна (например: утилиты ubl*):
Способ №3: Прямое редактирование файла ublinux.ini
При изменении файла ublinux.ini может потребоваться перезагрузка системы для применения новых настроек.
Для прямого редактирования файла ublinux.ini необходимо открыть его с правами root через любой текстовый редактор:
sudo mcedit /mnt/livemedia/ublinux-data/ublinux.ini #пример открытия через mcedit
sudo vim /mnt/livemedia/ublinux-data/ublinux.ini #пример открытия через vim
Файл ublinux.ini позволяет вносить изменения в другие файлы. Для этого необходимо сначала указать путь до файла:
[/path/filename] #Если файла нет, он будет создан с правами по умолчанию.
[/path/filename]755 #Если файла нет, он будет создан с правами по умолчанию и chmod 755.
[/path/filename]a+x [/bin/bash] #Если файла нет, он будет создан с правами по умолчанию, chmod a+x и вариантом запуска.
Параметр [/bin/bash]
является необязательным и прописывается в том случае, когда файл необходимо с чем-то запустить. Возможные варианты запуска с:
Далее указать параметры:
Параметр=значение # меняет параметр в файле на нужное значение. Если параметра нет, строка будет добавлена в конец файла.
# Например:
DEFAULTUSER=superadmin
+строка # добавит строку в файл, если она ещё не прописана в нём.
|строка # добавит строку в файл без проверки.
-выражение # удаляет строки соответствующие выражению (см info sed). Если указать .* то будут удалены все строки.
# Например:
|[Desktop Entry]
|Version=1.0
|Type=Link
|Name=Сетевой_ярлык
|Comment=Ярлык
|Icon=application-x-theme
|URL=smb://192.168.215.13/public
Включение имеющихся параметров происходит путем раскомментирования строки.
Группы файлов с параметрами отделяются от других путем к файлу и решеткой:
[/etc/ublinux/config]
################################################################################
VERSION=2.41
DEFAULTUSER=superadmin
[/etc/ublinux/network]
################################################################################
IPV6=no
NTPSERVERS=dhcp
После редактирования необходимо обязательно сохранить файл.
services_enable=item_1,item_2,...,item_n # Перечень сервисов/юнитов которые должны быть запущены, разделитель (,) или (;). Пример: services_enable=sbm,nmb,cockpit.socket
services_disable=item_1,item_2,...,item_n # Перечень сервисов/юнитов которые должны быть выключены, разделитель (,) или (;). Пример: services_disable=sbm,nmb,cockpit.socket
useradd=<user_name_1:gecos:uid:user_group:extra_groups:password>;...;<user_name_2:gecos:uid:user_group:extra_groups:password>
# # Перечень пользователей, см. USERADD=
# # Пример: useradd=admin:::::pass;admin2:Administrator-2:1010:admin2:wheel,users:pass2
save_clean=all|changes,rootcopy,homes # Очистить изменения пользователя, см. SAVE_CLEAN=
#
Настройки конфигурации
Версия конфигурации:
VERSION=2.41
Дополнительные параметры загрузки, только для управления модулями:
#CMDLINE="noload=/12,/92 findswap"
Базовые настройки системы
Имя рабочей станции (хоста):
HOSTNAME=ublinux-0000
Номер машины, который попадает в /etc/machine-id.
Можно привязать к носителю, указав свой номер (в формате вывода утилиты md5sum), например получив командой:
echo <MyNumber> | md5sum
#MACHINEID=91ec1cd57b484d479893f012b26f89ea
#MACHINEID=hardware
MACHINEID=hardware
Параметр позволяет включить сервисы/юниты (можно указывать службы inetd).
Синтаксис:
SERVICES_ENABLE=<service_1>,<service_n>
Где:
Для работы в WINDOWS сетях с DNS NETBIOS, включить NSSWITCHWINBIND=yes и добавить:
SERVICES_ENABLE=nmb,winbind
Для VMWareWorkstation: vmware-networks, vmware-usbarbitrator
Для bluetooth: bluetooth
SERVICES_ENABLE=dbus-broker,NetworkManager,sshd,swapspace,systemd-timesyncd,cups,cockpit.socket,avahi-daemon,avahi-dnsconfd,smb,nmb,winbind,bluetooth
Параметр позволяет отключить сервисы/юниты, включенные по умолчанию.
Синтаксис:
SERVICES_DISABLE=<service_1>,<service_n>
Где:
#SERVICES_DISABLE=xinetd,pdnsd,iptables,wine
Параметр позволяет заблокировать и отключить сервисы/юниты, включенные по умолчанию. Запрещает запуск сервисов как зависимость.
Синтаксис:
SERVICES_MASK=<service_1>,<service_n>
Где:
#SERVICES_MASK=adb
Параметр позволяет разблокировать сервисы/юниты, выключенные по умолчанию. Разрешает запуск сервисов как зависимость.
Синтаксис:
SERVICES_UNMASK=<service_1>,<service_n>
Где:
#SERVICES_UNMASK=adb
Включить Apparmor:
#APPARMOR=yes
Apparmor по умолчанию отключен.
Установка глобальных и пользовательских переменных окружения. Синтаксис:
ENVIROMENT[system:<var>]=<value>
ENVIROMENT[profile:<var>]=<value>
ENVIROMENT[<user>:<var>]=<value>
Где:
Примеры:
#ENVIROMENT[system:VAR_SYS]="my value for system"
#ENVIROMENT[profile:VAR_PROFILE]="my value for all users"
#ENVIROMENT[superadmin:VAR_USER]="my value for select user"
Профиль конфигурации PAM авторизации, authselect. Синтаксис:
AUTHPAM[<profile>]=<feature>|disable|no|off
AUTHPAM=<profile>|disable|no|off
Где:
Опция | Описание |
---|---|
<profile> | - *local - локальные пользователи только для минимальных установок, значение используемое по умолчанию; - nis - включить NIS для системной аутентификации; - sssd - включить SSSD для системной аутентификации (также для локальных пользователей); - winbind - включить winbind для системной аутентификации. |
<feature> | Функции для профиля. Доступные функции: • with-altfiles with-ecryptfs with-faillock with-files-access-provider with-files-domain with-pamaccess with-silent-lastlog with-sudo with-systemd-homed with-time without-nullok • with-fingerprint with-pam-u2f with-pam-u2f-2fa without-nullok without-pam-u2f-nouserok • with-smartcard with-smartcard-lock-on-removal with-smartcard-required • with-mdns4 with-mdns6 with-mkhomedir with-mkhomedir-simple with-nispwquality |
disable|no|off | Отключить выбор профиля. |
Примеры
# AUTHPAM[minimal]=with-faillock,with-time,with-systemd-homed
# AUTHPAM[sssd]=with-faillock,with-time,with-systemd-homed,with-mkhomedir-simple
# AUTHPAM=local
# AUTHPAM=disable
# AUTHPAM=sssd
Профили:
/usr/share/authselect/vendor
.
Получить информация о профиле можно командой:
authselect show sssd
Алгоритм сжатия модулей по умолчанию:
#MKSQFS_OPTS="-b 512K -comp xz -Xbcj x86"
Алгоритм сжатия, используемый для сохранения изменений в модуль:
#MKSQFS_FASTALG="-b 512K -comp lz4 -Xhc"
Базовые настройки аппаратного обеспечения
Настройка принтера:
#PRINTERADD=manual
#PRINTERADD=auto
Где:
Обновлять кеш библиотек при старте. Полезно при использовании модулей от старых сборок:
#RUNLDCONFIG=yes
Где:
Обновление базы данных модулей, если используются сторонние модули ядра или видео проприетарное:
#DEPMOD=yes
Включение pulseaudio (yes, no):
#PULSEAUDIO=yes
Установить звуковое устройство по умолчанию для ALSA, к примеру для вывода звука через HDMI (вывести устройства: aplay -l
):
#ALSACARD=1
#ALSADEVICE=7
Базовые настройки пользователей и групп
Пароль пользователя по умолчанию — «ublinux»
Команды для получения хеша:
openssl passwd -6 %password%
mkpasswd2 -m sha256crypt %password%
# Вывести справку
mkpasswd2 -m help
Хэш пароля для пользователя по умолчанию (стандартно ublinux).
Если пароль стандартный, то будет включен первый запуск для настройки системы: отображение подсказки на фоне рабочего стола и "[config] firstboot=yes":
DEFAULTPASSWD='$6$E7stRhRS8fCKk7UU$Qoqw62AUaUa5uLIc2KC7WV3MUThhrR8kjXtCODmnKCzKe2zHu1/wmsiWBHZEIk/IQnk/aELQYbUK93OUtrwg60'
Команды для получения хеша:
openssl passwd -6 %password%
mkpasswd2 -m sha256crypt %password%
# Вывести справку
mkpasswd2 -m help
Пароль root по умолчанию — «ublinux»
Хеш пароля для пользователя root (стандартно ublinux):
#DEFAULTROOTPASSWD='$6$E7stRhRS8fCKk7UU$Qoqw62AUaUa5uLIc2KC7WV3MUThhrR8kjXtCODmnKCzKe2zHu1/wmsiWBHZEIk/IQnk/aELQYbUK93OUtrwg60'
Имя пользователя по умолчанию — «superadmin»
Имя пользователя по умолчанию, будет добавлен в группу whell, при условии если переменная USERADD или NEEDEDUSERS пустая (стандартно superadmin):
#DEFAULTUSER=superadmin
Алгоритм хеширования паролей (возможные значения: des, md5, yescrypt, gost-yescrypt, scrypt, bf, bcrypt, sha512crypt, sha256crypt, md5crypt, descrypt
)
Алгоритмы GOST R 34.11-2012 (Streebog): gost-yescrypt
Отключены: sunmd5, bcrypt-a, bsdicrypt, nt:
#HASHPASSWD=yescrypt
Параметр будет удален!
Данный параметр устарел и поддерживается для совместимости со старыми версиями конфигурационного файла.
Если параметр будет добавлен, то он будет преобразован в новый формат.
Пользователи системы (упрощённый аналог параметра USERADD). Пользователи перечисляются через запятую:
Синтаксис:
## NEEDEDUSERS='name_user:id:password:show_name:, ... '
Где:
NEEDEDUSERS='superadmin:1000:x:Администратор'
Если password = x, то устанавливается знаечние из $DEFAULTPASSWD
Добавить пользователя системы в /etc/passwd
. Если пользователь существует, то без изменений:
## USERADD[user_name]='gecos:uid:user_group:extra_groups:optional:password_hash|x'
Значения USERADD:
Параметр | Опция |
---|---|
user_name | Имя пользователя, обязательное поле. |
gecos | Поле учётной записи GECOS. |
uid | UID пользователя, если необходимо автоматически рассчитывать, то оставить пустым или 'x'. |
user_group | Основная группа пользователя, если выбрано пусто или 'x', то 'user_group=user_name'. |
extra_groups | Дополнительные группы пользователя. Дополнительные к USERGROUPS. Если группа отсутствует или 'x', то 'extra_groups=users'. Если группа не существует, то будет создана. Перечисление через запятую. |
optional | Дополнительные параметры, например: --home-dir <ДОМ_КАТ> - Домашний каталог новой учётной записи -s, --shell /usr/bin/bash - Регистрационная оболочка новой учётной записи; -r, --system - Создать системного пользователя; -M, --no-create-home - Не создавать домашний каталог пользователя; -N, --no-user-group - Не создавать группу с тем же именем что и у пользователя; -o, --non-unique - Разрешить создание пользователей с повторяющимися (не уникальными) UID; |
password_hash|x | Хеш пароля пользователя, если выбрано 'x', то 'password_hash=${DEFAULTPASSWD}'. Если первые символы (!*) то аутентификация запрещена. Если первый символ (*) или (!), то аутентификация по паролю заблокирована. Но другие методы входа, такие как аутентификация на основе ключей или переключение на пользователя, по-прежнему разрешены. |
Команды для получения хеша:
openssl passwd -6 %password%
mkpasswd2 -m sha256crypt %password%
mkpasswd -m help
Примеры:
## USERADD[superadmin]='Администратор:1000:x:x:x:$6$E7stRhRS8fCKk7UU$Qoqw62AUaUa5uLIc2KC7WV3MUThhrR8kjXtCODmnKCzKe2zHu1/wmsiWBHZEIk/IQnk/aELQYbUK93OUtrwg60'
## USERADD[user-1]=x
## USERADD[user-1]='Пользователь-1:x:x:vboxusers,libvirt:-s /usr/bin/bash -o:$6$E7stRhRS8fCKk7UU$Qoqw62AUaUa5uLIc2KC7WV3MUThhrR8kjXtCODmnKCzKe2zHu1/wmsiWBHZEIk/IQnk/aELQYbUK93OUtrwg60'
Синхронизировать пользователей системы (/etc/passwd
) с глобальной конфигурацией:
USERADD_SYNC[user_name]='boot,shutdown'
Значения USERADD_SYNC:
Параметр | Опция |
---|---|
user_name | Имя пользователя, необязательное поле, если не указано, то применяется для всех пользователей |
boot | При загрузке системы принудительно применить глобальную конфигурацию на пользователя |
shutdown | При завершении работы системы синхронизировать указанных пользователей в системе с глобальной конфигурацией |
Изменение параметров срока действия пароля пользователей. Если пользователь существует, то не изменяется.
Синтаксис:
USERSHADOW[user_name]='lastchanged:minday:maxday:warn:inactive:expire'
Значения USERSHADOW:
Параметр | Опция |
---|---|
user_name | Имя пользователя, обязательное поле |
lastchanged | Дата последнего изменения пароля. Указывается в днях. Количество дней исчисляется с 1 января 1970 года (дата эпохи) |
minday | Минимальное количество дней действия пароля, прежде чем пароль пользователя может быть изменен. По умолчанию 0 означает отсутствие минимального срока действия пароля |
maxday | Максимальное количество дней действия пароля после смены пароля пользователя. По умолчанию этот номер установлен на 99999 |
warn | Количество дней предупреждения, в течение которого пользователь получает предупреждение о необходимости изменения пароля |
inactive | Количество дней не активности пароля до отключения учетной записи пользователя. По умолчанию пустое |
expire | Дата, когда учетная запись была отключена. Указывается в днях. Количество дней исчисляется с 1 января 1970 года (дата эпохи) |
<null> | Если один из параметров не задан (содержит пустое значение), то исходное значение не изменяется |
Примеры:
## USERSHADOW[superadmin]=2024-01-01:0:99999:7::
## USERSHADOW[superadmin]=18009:0:120:7:14::
Конвертировать количество дней в дату можно командой:
date --date=@$(( DDDDD*(60*60*24) ))
# или
date --date=@EPOCH
Где:
Группы системы:
GROUPADD[group_name]='group_users:gid:optional:password_hash|x'
Параметр | Опция |
---|---|
group_name | Имя группы |
group_users | Пользователи группы, перечисление через запятую. Может быть пусто. |
gid | GID группы, если необходимо автоматически рассчитывать, то оставить пустым или 'x' |
optional | Дополнительные параметры, например: '--system --non-unique': -o, --non-unique - разрешить создание групп с повторяющимися (не уникальными) GID; -r, --system - создавать системную группу. |
password_hash|x | Хеш пароля группа: x - группа без пароля; password_hash - результат команды: openssl passwd -6 password |
Пример:
## GROUPADD[g_department_1]=ob.ivanov,rv.smirnov
## GROUPADD[g_department_2]='ob.ivanov,rv.smirnov:1001:$6$E7stRhRS8fCKk7UU$Qoqw62AUaUa5uLIc2KC7WV3MUThhrR8kjXtCODmnKCzKe2zHu1/wmsiWBHZEIk/IQnk/aELQYbUK93OUtrwg60'
Синхронизация групп системы /etc/groups
и их параметры /etc/gshadow
с глобальной конфигурацией
GROUPADD_SYNC[group_name]='shutdown'
Где:
Группы, в которых будут состоять пользователи (по умолчанию: scanner,power,audio,lp,optical,storage,video,sambashare,vboxusers,libvirt):
#USERGROUPS=scanner,power,audio,lp,optical,storage,video,sambashare,vboxusers,libvirt
Обновлять домашний каталог при загрузке если он уже существует:
#UPDATEHOME=yes
Где:
Настройка параметра через ubconfig.
Помещать пользователя с ID 1000 в группу Администраторов whell:
## ADDADM=*yes|no
Где:
Настройка репозиториев и обновления системы
Настройка подключения репозиториев.
Синтаксис:
##REPOSITORY[<name_repo>]= disable
##REPOSITORY[<name_repo>]= <siglevel>:<usage>:<server_path_1>,<server_path_2>,...,<server_path_n>
Где:
Параметр | Опция |
---|---|
name_repo | Произвольное имя репозитория (обязательно). Значение "disable" отключает репозиторий. |
siglevel | Уровень проверки подписи репозитория, можно выбрать одну из основных и вторую из дополнительных, разделитель запятая (необязательно): - Never - (основная) - проверка подписи выполняться не будет: - PackageNever - (доп.) - только для пакетов; - DatabaseNever - (доп.) - только для пакетов. - Optional - (основная) - подписи будут проверяться при их наличии, но неподписанные базы данных и пакеты также будут приниматься: - PackageOptional - (доп.) - только для пакетов; - DatabaseOptional - (доп.) - только для пакетов (по умолчанию). - Required - (основная) - подписи будут необходимы для всех пакетов и баз данных (по умолчанию): - PackageRequired - (доп.) - только для пакетов; - DatabaseRequired - (доп.) - только для пакетов. - TrustedOnly - (основная) - если подпись проверяется для пакетов и базы, она должна находиться в связке ключей и быть полностью доверенной: - PackageTrustedOnly - (доп.) - только для пакетов; - DatabaseTrustedOnly - (доп.) - только для пакетов. - TrustAll - (основная) - если подпись проверена, она должна находиться в связке ключей, но ей не требуется назначать уровень доверия: - PackageTrustAll - (доп.) - только для пакетов; - DatabaseTrustAll - (доп.) - только для пакетов. |
usage | Уровень использования этого репозитория (необязательно): - All - включать все перечисленные функции для репозитория (по умолчанию) - Sync - включать обновления для этого репозитория - Search - включать поиск этого репозитория - Install - включать установку пакетов из этого репозитория во время операции --sync - Upgrade - позволить этому репозиторию быть действительным источником пакетов при выполнении --sysupgrade |
server_path_n | Полный URL-адрес места (или несколько), где можно найти базу данных, пакеты и подписи (если доступны) для этого репозитория (обязательно): - <file> - если указан доступный файл, то подключить как дополнительный файл расширения конфигурации; - file:// - URL префикс для репозитория в каталоге; - ftp:// - URL префикс для репозитория FTP; - http:// - URL префикс для репозитория HTTP; - https:// - URL префикс для репозитория HTTPS. |
Примеры:
## REPOSITORY[modules]=::http://192.168.0.1:8080/repo/2204
## REPOSITORY[webmyrepo]=never::http://myweb.org/myrepo
## REPOSITORY[localmyrepo]=never::file:///home/myrepo
Публикация локального репозитория в локальной сети (подключение к сети распределенных репозиториев).
При установке пакет ищется в распределённой сети репозиториев и устанавливается самой последней доступной версией.
Синтаксис:
## REPOPUBLIC_NET=<name_repos_1>,...,<name_repos_n>
Где <name_repos>:
Примеры:
## REPOPUBLIC_NET=all
## REPOPUBLIC_NET=modules
Публикация локального репозитория в виде локального WEB ресурса.
Синтаксис:
## REPOPUBLIC_WEB[<path>]=enable|disable
## REPOPUBLIC_WEB[<path>]=listing:<port>:<auth_name>:<auth_pass>:<auth_hash>
Где:
Параметр | Опция |
---|---|
<path> | Путь до каталога репозитория, который будет опубликован |
enable|disable | Включить/Выключить публикацию |
listing | Включить WEB обозреватель файлов (необязательно) |
<port> | Порт по которому доступен репозиторий. По умолчанию: 8080 (необязательно) |
<auth_name> | Параметры авторизации, имя пользователя (необязательно) |
<auth_pass> | Параметры авторизации, открытый пароль или тип хеша (необязательно): - password - незашифрованный пароль; - sha256 - использовать зашифрованный пароль SHA256; - sha512 # Использовать зашифрованный пароль SHA512 |
<auth_hash> | Зашифрованный пароль SHA256 или SHA512 (необязательно) |
Публикация ленивого зеркала подключенных репозиториев в виде локального WEB ресурса.
Получая запрос от пользователя, загружает с удалённого репозитория пакет и сохраняет в кеше передавая его пользователю.
Синтаксис:
REPOPUBLIC_CACHE=enable|yes|disable|no|none
Где:
Значение | Описание |
---|---|
enable|yes | Включить ленивое зеркало |
disable|no|none | Выключить ленивое зеркало |
Если задано только "REPOPUBLIC_CACHE=enable" без указания репозиториев, то создаётся зеркало по умолчанию, где "2405" версия текущего дистрибутива:
REPOPUBLIC_CACHE[ublinux_2405]=url@http://repo.ublinux.ru/2405,url@https://repo.ublinux.ru/2405
Пример:
REPOPUBLIC_CACHE=enable
Синтаксис:
REPOPUBLIC_CACHE[<var>]=<value>
Где <var>:
Значение | Описание |
---|---|
port | Порт сервиса, по умолчанию: 80 |
cache_dir | Каталог кэша, по умолчанию: /memory/layer-base/1/repopublic_cache |
purge_files_after | Продолжительность бездействия (в секундах), по истечении которой файл должен быть удален из кэша, по умолчанию: 360000 =360000 секунд или 100 часов, =0 никогда не выполнять |
download_timeout | Таймаут (в секундах) для загрузки интернет-кэша, по умолчанию: 3600 |
http_proxy | Работать через прокси. Пример: http://foo.company.com:8989 |
user_agent | Пользовательский агент, используемый для извлечения файлов из репозиториев, по умолчанию: repopublic/1.0 |
prefetch.cron | Cтандартное выражение cron, пример: 0 0 3 * * * * |
prefetch.ttl_unaccessed_in_days | Количество дней подряд, в течение которых не обновляются системы в сети, по умолчанию: 30 Удалять и останавливать пакеты предварительной выборки (и ссылки на базы данных), если они не загружены после ttl_unaccessed_in_days дней, после обновления |
prefetch.ttl_unupdated_in_days | Количество дней подряд, в течение которых не было запрошено обновление, по умолчанию: 300 Удалять и останавливать пакеты предварительной выборки, которые не были обновлены в исходной версии или запрошены в течение ttl_unupdated_in_days |
Пример:
REPOPUBLIC_CACHE[port]=80
REPOPUBLIC_CACHE[download_timeout]=3600
Синтаксис:
REPOPUBLIC_CACHE[<repository>]=<type>@<url>
Где:
Значение | Описание |
---|---|
<repository> | Имя репозитория, для подключения клиентов |
<type> | Тип подключаемого репозитория: - url - вэб ссылка на репозиторий. Допускается несколько через запятую (,) - http_proxy - прокси-сервер, может быть включен для каждого репозитория, затеняя глобальный 'http_proxy'. Допускается только один параметр на репозиторий. - mirrorlist - файл зеркал. Будьте осторожны! Убедитесь, что URL текущего сервера НЕ включен в этот файл! Допускается только один параметр на репозиторий |
<url> | Ссылка на ресурс или путь до файла |
Примеры:
## REPOPUBLIC_CACHE[http_proxy]=http://10.0.24.52:3128
## REPOPUBLIC_CACHE[ublinux_2405]="url@http://repo.ublinux.ru/2405,url@https://repo.ublinux.ru/2405"
## REPOPUBLIC_CACHE[myrepo_x86_64]="url@http://my.repo.ru/myrepo/x86_64"
## REPOPUBLIC_CACHE[newrepo]="http_proxy@http://proxy.localnet.ru:8080,url@http://192.168.1.1/newrepo/x86_64"
## REPOPUBLIC_CACHE[ublinux-reflector]="mirrorlist@/etc/pacman.d/reflector_mirrorlist"4
Настройка автоматического обновления системы.
Синтаксис:
#AUTOUPDATE=enable
#AUTOUPDATE=<mode>:<interval>:<repository>
Значение | Описание |
---|---|
enable | Включает автообновление с параметрами modsys:boot:core,extra,community,multilib,ublinux,modules |
<mode> | Режимы обновления: - *modsys - сначала обновлять все модули и после систему, очищает параметр [update] REPOSITORY= - module - обновлять только модули, очищает параметр [update] REPOSITORY= - system - обновлять всё в порядке указанных репозиториев |
<interval> | Интервал обновления - *boot - каждую загрузку - 12h - каждые 12 часов - 7d - каждые 7 дней - 1M - один раз в месяц |
<repository> | Имена репозиториев с которых будет выполнено обновление. Если не указано, то по умолчанию: core,extra,community,multilib,ublinux,modules |
Пример:
AUTOUPDATE=enable
AUTOUPDATE[mode]=modsys
AUTOUPDATE[interval]=boot
Настройка подключения сетевых ресурсов
Каталог с правами 777 доступный всем локальным пользователям и при разрешении всем из сети:
#PUBLICDIR=
По умолчанию
PUBLICDIR=/home/public
.
Автомонтирование ресурсов.
Синтаксис:
AUTOMOUNT_SHARE[<mountpoint>]='cifs:<share>:[<username>]:[<password_base64>]:[<domain>]:[<opt>]'
Где:
Значение | Описание |
---|---|
<mountpoint> | Точка монтирования. Пример: /media/share_srv |
cifs | Указывает на протокол, который используется для монтирования сетевых ресурсов; |
share | Путь к сетевому ресурсу, который необходимо подключить; |
username | Имя пользователя, который будет использоваться для аутентификации при подключении к сетевому ресурсу; |
password_base64 | Пароль, который будет использоваться для аутентификации, представленный в формате Base64. Получить пароль в кодировке командой: base64 <<< 'password' ; |
domain | Имя домена. Пример: ubdomain.ru; |
opt | Дополнительные опции для монтирования. Пример: noperm,vers=1.0 |
Примеры:
## #AUTOMOUNT_SHARE[/media/cifs:share]='cifs://192.168.103.55/share:user:password_base64:domain:noperm,vers=1.0'
#AUTOMOUNT_SHARE[/media/share2]='cifs://192.168.103.55/share2:share:password_base64:domain:noperm,vers=1.0'
Синтаксис:
AUTOMOUNT_SHARE[<mountpoint>]='virtiofs:<tag>:[<group>]:[<mode>]:[<opt>]'
Где:
Значение | Описание |
---|---|
<mountpoint> | Точка монтирования. Пример: /media/direct:sdb1 |
<tag> | Объявленный тег virtiofs. Пример: mytag |
<group> | Назначенная группа на точку монтирования. Пример: users |
<mode> | Назначенные права доступа. Пример: 775 |
<opt> | Опции подключения. |
Примеры:
#AUTOMOUNT_SHARE[/media/mytag]='virtiofs:mytag:wheel:775:'
Синтаксис:
AUTOMOUNT_SHARE[<mountpoint>]='sshfs:<username>@<hostname>:<share>:<password_base64>:[<opt>]'
Где:
Значение | Описание |
---|---|
<mountpoint> | Точка монтирования. Пример: /media/sshfs:superadmin@192.168.1.1 |
sshfs | Указывает на протокол, который используется для монтирования сетевых ресурсов |
username | Имя пользователя, который будет использоваться для аутентификации при подключении к сетевому ресурсу. Пример: superadmin |
share | Путь каталога который будет подключен. Пример: /home/superadmin |
password_base64 | Пароль, который будет использоваться для аутентификации, представленный в формате Base64. Получить пароль в кодировке командой: base64 <<< 'password' |
opt | Дополнительные опции для монтирования. Пример: noperm,vers=1.0 |
Примеры:
#AUTOMOUNT_SHARE[/mnt/sshfs:user-1@192.168.1.1]='sshfs:user-1@192.168.1.1:/home/user-1:password_base64:'
Синтаксис:
AUTOMOUNT_SHARE[<mountpoint>]='nfs:<hostname>:<share>'
Где:
Значение | Описание |
---|---|
<mountpoint> | Точка монтирования. Пример: /media/nfs:user1@192.168.1.1 |
<hostname> | Адрес или имя хоста. Пример: 192.168.1.1 |
<share> | Путь каталога который будет подключен. Пример: /home/superadmin |
Примеры:
#AUTOMOUNT_SHARE[/mnt/nfs:user-1@192.168.1.1]='nfs:192.168.1.1:/home/user-1'
Подключение всех разделов при старте:
#PARTITIONSAUTOMOUNT=yes
Не подключать указанные разделы:
#PARTITIONSNOMOUNT=boot,hidden
Пользователь - владелец для fat ntfs:
#PARTITIONSMOUNTUID=500
Подключаться к серверу при старте:
#AUTOMOUNTSERVER=yes
Разрешать общий доcтуп к разделам через NFS:
#PARTITIONSSHARE=yes
Исключение для общих разделов:
#PARTITIONSNOSHARE=archive,private
Отключить использование tmpfs для /tmp или /var/tmp при работе с профилем:
#TMPFS=no
#VARTMPFS=no
Настройка аудита и логгирования
Настройка мониторинга и сбора системных событий и записи их в журналы для аудита.
Синтаксис:
## AUDITD[<id_name>]=<rule>
Где:
Примеры:
#AUDITD[event_chmod]="-a always,exit -F arch=x86_64 -S chmod,fchmod,fchmodat -F key=event_chmod"
#AUDITD[passwd_changes]="-w /etc/passwd -p wa -k passwd_changes"
Отключить все созданные правила из конфигурации:
## AUDITD=disable|no|none|off
Настройка журналов. Синтаксис:
JOURNALD[<var>]=<value>
Где:
Значение <var> | Описание |
---|---|
Storage | Указывает, где хранить журнал. Доступны следующие значения: - volatile - Журнал хранится в оперативной памяти, т.е. в каталоге /run/log/journal ; - persistent - Данные хранятся на диске, т.е. в каталоге /var/log/journal ; - auto - Используется по-умолчанию; - none - Журнал не ведётся. |
Compress | Пороговое значение данных для сжатия и записи в ФС. Может принимать: - yes - no - 100M - значение с суффиксом: K, M или G. |
SplitMode | Определяет, следует ли разделять файлы журнала для каждого пользователя: - uid - none |
RateLimitIntervalSec | Настраивает ограничение скорости, которое применяется ко всем сообщениям, интервал времени применения: - 30 - будет установлен интервал в 30 секунд. |
RateLimitBurst | Настраивает ограничение скорости, которое применяется ко всем сообщениям, лимит сообщений - 10000 - будет установлен лимит 10000. |
SystemMaxUse | Указывает максимальное дисковое пространство, которое может использовать журнал в постоянном хранилище: - 10M - значение с суффиксом: K, M или G. |
SystemKeepFree | Указывает объем места, которое журнал должен оставить свободным при добавлении записей журнала в постоянное хранилище: - 10M - значение с суффиксом: K, M или G. |
SystemMaxFileSize | Определяет, до какого размера могут вырасти отдельные файлы журнала в постоянном хранилище перед ротацией: - 10M - значение с суффиксом: K, M или G. |
RuntimeMaxUse | Указывает максимальное дисковое пространство, которое можно использовать в энергозависимом хранилище (в файловой системе /run): - 10M - значение с суффиксом: K, M или G. |
RuntimeKeepFree | Указывает объем пространства, которое будет выделено для других целей при записи данных в энергозависимое хранилище (в файловой системе /run): - 10M - значение с суффиксом: K, M или G. |
RuntimeMaxFileSize | Указывает объем места, которое отдельный файл журнала может занимать в энергозависимом хранилище (в файловой системе /run) перед ротацией: - 10M - значение с суффиксом: K, M или G. |
ForwardToConsole | Перенаправить журнал на консоль: - yes - no |
TTYPath | Изменить используемый консольный TTY, если используется ForwardToConsole=yes. По умолчанию /dev/console. Значение: - /путь/ |
MaxLevelConsole | Тип сообщений перенаправляемые в журнал: - emerg - alert - crit - err - warning - notice - info - debug - 7 - целочисленное значение в диапазоне 0–7. |
Примеры:
#JOURNALD[Storage]=persistent
#JOURNALD[Compress]=yes
#JOURNALD[SystemMaxUse]=8M
#JOURNALD[RuntimeMaxUse]=8M
Настройка дампа ядра (systemd-coredump).
Синтаксис:
SYSTEMD_COREDUMP[<var>]=<value>
Где:
Где:
Значение <var> | Описание |
---|---|
Storage | Указывает, где хранить дамп ядра. Доступны следующие параметры: - journal - дампы будут храниться в журнале и перезаписываться в соответствии со стандартными принципами ротации журналов - external - значение по умолчанию, дампы сохраняются в каталоге /var/lib/systemd/coredump/ - none - дампы ядра записываются (включая обратную трассировку, если возможно), но не сохраняются |
Compress | Используется для сжатия дампов ядра. Принимает логический аргумент - *yes или no |
ProcessSizeMax | Максимальный размер дампа процесса, который может быть сохранен. Если размер дампа превышает значение этого параметра, то дамп сохранен не будет. Суффиксы: B,K,M,G,T,P,E |
ExternalSizeMax | Максимальный (сжатый или несжатый) размер дампа процесса, который будет сохранен на диске |
JournalSizeMax | Максимальный (сжатый или несжатый) размер дампа процесса, который будет сохранен в журнале системы |
MaxUse | Максимальный объем общего дискового пространства, который может быть использован для хранения дампов процессов. Суффиксы: B,K,M,G,T,P,E |
KeepFree | Минимальный объем свободного дискового пространства, который должен оставаться на диске при хранении дампов. Суффиксы: B,K,M,G,T,P,E |
Параметры Storage=none и ProcessSizeMax=0 отключает всю обработку дампа памяти, за исключением записи журнала.
Примеры:
#SYSTEMD_COREDUMP[Storage]=none
#SYSTEMD_COREDUMP[ProcessSizeMax]=0
Настройка ротации файлов логов утилитой logrotate.
Синтаксис:
## LOGROTATE[<tag>]="<mask_file_1>,<mask_file_2>,<mask_file_n>:<setting_1>,<setting_2>,<setting_n>"
Где:
Настройка частоты проверки:
Настройка | Описание |
---|---|
hourly | Проверка выполнения условий ротации каждый час |
daily | Проверка выполнения условий ротации каждый день |
weekly [weekday] | Проверка выполнения условий ротации каждую неделю, номер [weekday] недели |
monthly | Проверка выполнения условий ротации каждый месяц |
yearly | Проверка выполнения условий ротации каждый год |
size <size> | Размер лога, когда он будет перемещен, в параметре <size> передается цифра с постфиксом k,M,G |
Настройки вращения:
Настройка | Описание |
---|---|
rotate <count> | Указывает сколько старых логов нужно хранить, в параметре <count> передается количество |
olddir <dir> | Перемещать старые логи в отдельную папку |
noolddir | Держать все файлы в одном и том же каталоге |
su <user> <group> | Ротация файлов журналов, установленных под этим пользователем <user> и группой <group> |
Настройки выбора файла:
Настройка | Описание |
---|---|
missingok | Не выдавать ошибки, если файл журнала не существует |
nomissingok | Если файл журнала не существует, выдать ошибку |
ifempty | Ротация файла журнала, даже если он пуст, переопределяя параметр notifempty |
notifempty | Не обрабатывать пустые файлы |
minage <count> | Не меняйте журналы, возраст которых меньше указанного количества дней |
maxage <count> | Удалите ротированные журналы старше счетчика дней |
minsize <size> | Файлы журналов чередуются, когда их размер превышает размер в байтах k,M,G, но не раньше дополнительно указанного интервала времени (daily,weekly,monthly,yearly) |
maxsize <size> | Файлы журналов ротируются, когда их размер превышает размер байтов k,M,G, даже до истечения дополнительно указанного интервала времени (daily,weekly,monthly,yearly) |
Настройки файлов и папок:
Настройка | Описание |
---|---|
create [<mode>] [<user>] [<group>] | Указывает, что необходимо создать пустой лог файл после перемещения старого, не обязательно: <mod> - аттрибуты разрешения; <user> - имя пользователь; <group> - имя группы файла. |
nocreate | Указывает, что необходимо создать пустой лог файл после перемещения старого |
copytruncate | После создания копии, обрезать исходный файл журнала взамен перемещения старого файла журнала и создания нового |
nocopytruncate | Не сбрасывать файл журнала после копирования |
Настройка сжатия:
Настройка | Описание |
---|---|
compress | Указывает, что лог необходимо сжимать |
nocompress | Указывает, что лог не сжимать |
delaycompress | Не сжимать последний и предпоследний журнал |
nodelaycompress | Не откладывать сжатие файла на следующий цикл |
Настройка имени файлов:
Настройка | Описание |
---|---|
extension <ext> | Сохранять оригинальный лог файл после ротации, если у него указанное расширение |
dateext | Добавляет дату ротации перед заголовком старого лога |
start | Номер, с которого будет начата нумерация старых логов |
Настройка сообщения:
Настройка | Описание |
---|---|
mail <mail.ru> | Отправлять Email после завершения ротации |
nomail | Не отправлять содержимое удаляемых (старых) журналов по почте |
mailfirst | Отсылать первую ротированную копию |
maillast | Отсылать последнюю ротированную копию |
Настройка выполнения сценариев:
Настройка | Описание |
---|---|
sharedscripts | Сценарии предварительной и последующей ротации запускаются для каждого ротируемого журнала. Один сценарий может быть запущен несколько раз для записей файла журнала, которые соответствуют нескольким файлам. |
firstaction | Сценарий выполняется один раз перед ротацией всех файлов журналов |
lastaction | Сценарий выполняется один раз после ротации всех файлов журналов |
prerotate | Сценарий выполняется до ротации файла журнала |
postrotate | Сценарий выполняется после ротации файла журнала |
preremove | Сценарий выполняется один раз непосредственно перед удалением файла журнала |
<command_1>,<command_2>,<command_n> | Команды сценария |
endscript | Обязательный операнд после команд сценария firstaction,lastaction,prerotate,postrotate,preremove,endscript |
Пример записи сценария:
sharedscripts,postrotate,/usr/bin/chronyc cyclelogs > /dev/null 2>&1 || true,echo Ok,endscript
Примеры:
#LOGROTATE[samba]="/var/log/samba/log.smbd,/var/log/samba/log.nmbd,/var/log/samba/*.log:notifempty,missingok,copytruncate"
#LOGROTATE[clamav]="/var/log/clamav/clamd.log,/var/log/clamav/freshclam.log,/var/log/clamav/clamav-milter.log:create 644 clamav clamav,sharedscripts,missingok,notifempty,postrotate,/bin/kill -HUP \`cat /run/clamav/clamd.pid 2>/dev/null\` 2> /dev/null || true,/bin/kill -HUP \`cat /run/clamav/freshclam.pid 2>/dev/null\` 2> /dev/null || true,/bin/kill -HUP \`cat /run/clamav/clamav-milter.pid 2>/dev/null\` 2> /dev/null || true,endscript"
#LOGROTATE[clamav]='/var/log/clamav/clamd.log,/var/log/clamav/freshclam.log,/var/log/clamav/clamav-milter.log:create 644 clamav clamav,sharedscripts,missingok,notifempty,postrotate,/bin/kill -HUP `cat /run/clamav/clamd.pid 2>/dev/null` 2> /dev/null || true,/bin/kill -HUP `cat /run/clamav/freshclam.pid 2>/dev/null` 2> /dev/null || true,/bin/kill -HUP `cat /run/clamav/clamav-milter.pid 2>/dev/null` 2> /dev/null || true,endscript'
#LOGROTATE[chrony]="/var/log/chrony/*.log:missingok,nocreate,sharedscripts,postrotate,/usr/bin/chronyc cyclelogs > /dev/null 2>&1 || true,endscript"
Настройка загрузчика GRUB
Время отображения меню GRUB для выбора варианта загрузки:
## GRUB_TIMEOUT=<seconds>
## GRUB_TIMEOUT=3
Выбор варианта загрузки GRUB по умолчанию:
## GRUB_DEFAULT=<name_menu>
## GRUB_DEFAULT="UBLinux Desktop Basic 2204 - Песочница в RAM с сохранением профиля пользователя HDD"
Также доступны варианты:
Внимание! Наименование вариантов может быть иное в зависимости от дистрибутива.
Пользователь GRUB для входа в режим редактирования конфигурации загрузки:
## GRUB_SUPERUSERS=<user_1>,<user_2>,<user_n>
GRUB_SUPERUSERS=superadmin
Пароль пользователя GRUB для входа в режим редактирования конфигурации загрузки. Синтаксис:
## GRUB_PASSWORD[<user>]=<password>
Параметр | Описание |
---|---|
user | Имя пользователя |
password | Пароль, в формате grub.pbkdf2 или простым текстом, который автоматически сконвертирует в grub.pbkdf2 |
GRUB_PASSWORD[superadmin]=grub.pbkdf2.sha512.10000.918F54C3C4CDE024A34FDA951FFBAD17D2B8F031A696F22038267FDAC6CF5FEA4FE800880591DBD533C95606A275F170B4F460243A083E89E231B2DAC13467D5.9B3392962D14DE34D6BCD4C559A4A4222ED9C0BF14D15A7E3772DA430513E34F2C96FE324D3FBCC4576C8DDF7B82B7AC8830195CC8886A39B525F070EC236421
Пароль для пользователя superadmin: ublinux-grub
Режим вывода лога загрузки:
GRUB_BOOT_SILENT="splash"
Возможные параметры GRUB_BOOT_SILENT:
Параметр | Описание |
---|---|
splash | Графика plymouth, полный лог |
splash quiet ub.silent | Графика plymouth, нет лога |
quiet ub.silent | Без plymouth, минимальный лог |
plymouth.enable=0 | Без plymouth, полный лог |
loglevel=3 | Позволяет настроить вывод сообщений журнала (логов) загрузки. Уровни: - 0 (KERN_EMERG) Экстренные сообщения (система непригодна для использования) - 1 (KERN_ALERT) Сообщения, требующие немедленного внимания - 2 (KERN_CRIT) Критические условия - 3 (KERN_ERR) Ошибки - 4 (KERN_WARNING) Предупреждения - 5 (KERN_NOTICE) Нормальные, но значимые события - 6 (KERN_INFO) Информационные сообщения - 7 (KERN_DEBUG) Отладочные сообщения |
Устройство ввода для терминала:
## GRUB_TERMINAL_INPUT="console serial"
Устройство вывода для терминала:
## GRUB_TERMINAL_OUTPUT=
Мелодия при включении ПК:
## GRUB_PLAY=<tempo [pitch1 duration1] [pitch2 duration2]>|<file>
## GRUB_PLAY="480 900 2 1000 2 800 2 400 2 600 3"
Аргументы командной строки для загрузки ядра Linux.
Возможные параметры GRUB_CMDLINE_LINUX:
Параметр | Описание |
---|---|
modprobe.blacklist=nouveau | Отключить автоматическую загрузку свободного драйвера nouveau для видеоадаптера NVIDIA |
nomodeset | Отключить выбор и загрузку ядром драйверов видео |
i915.enable_dc=0 | Отключить управление питанием графического процессора |
ahci.mobile_lpm_policy=1 | Максимальная производительность, управление питанием |
intel_idle.max_cstate=1 | Ограничивает состояния сна процессора, это предотвращает переход процессора в состояния глубокого сна |
intel_idle.max_cstate=4 | Устраняет мерцание дисплея ноутбука на процессорах Ultra Voltage |
snd-intel-dspcfg.dsp_driver=1 snd-intel-dspcfg.dsp_driver=3 |
Принудительный выбор драйвера звукового устройства от Intel |
security=apparmor | Включает поддержку AppArmor |
usbcore.autosuspend=-1 | Отключить авто засыпание USB устройств в режиме suspend |
ipv6.disable=1 | Отключить глобально ipv6 |
## GRUB_CMDLINE_LINUX="modprobe.blacklist=nouveau"
Выбор загрузки версии ядра. Если параметр не задан, то загрузка выполняется с самой последней установленной версией.
Синтаксис:
KERNEL_BOOT=<пакет>
Где:
Перед выбором версии ядра следует убедиться, что необходимые модули установлены.
Выбор загрузки версии ядра, принудительно указав файл ядра и initrams, если имеется, то addon.
Работает когда не указан KERNEL_BOOT.
Если указать только GRUB_VMLINUZ_FILE который в формате:vmlinuz-5.15.157-1
и не указывать GRUB_UBLINUX_FILE и/или GRUB_ADDON_FILE, то версия ядра применяется для файлов GRUB_UBLINUX_FILE и/или GRUB_ADDON_FILE
Синтаксис:
GRUB_VMLINUZ_FILE=<file> # Файл загрузки vmlinuz
GRUB_UBLINUX_FILE=<file> # Файл загрузки initramfs
GRUB_ADDON_FILE=<file> # Файл загрузки addon
Настройка сервера
Задать путь хранилища контейнеров containers/podman/docker/
Синтаксис:
STORAGE_CONTAINERS_PATH=<путь>|y|yes|enable
Где:
/mnt/livedata/storage.containers
.Пример:
#STORAGE_CONTAINERS_PATH=yes
Создать хранилище образов для libvirt как движок контроллера виртуализации openvz, kvm, qemu ,virtualbox, xen и другие:
STORAGE_LIBVIRT_PATH=<путь>|y|yes|enable
/memory/layer-base/1/storage.libvirt
.Пример:
#STORAGE_LIBVIRT_PATH=yes
Использовать сервер как контроллер домена:
## SERVER_DOMAIN=<REALM>
## SERVER_DOMAIN[type]=<TYPE>
## SERVER_DOMAIN[adadmin]=<USER_ADMIN>:<PASSWORD_BASE64>'
## SERVER_DOMAIN[dns_backend]=internal|bind
## SERVER_DOMAIN[dns_forwarder]=<IP_ADDRESS>
Примеры:
#SERVER_DOMAIN=ubdc.ru
#SERVER_DOMAIN[type]=samba
#SERVER_DOMAIN[admin]=administrator:0J3QvtCy0YvQuV/QlNC10L3RjCEK
Включить публикацию каталога usershares
в сети:
#SAMBA_USERSHARE=enable
Где:
Настройка параметров:
SAMBA_USERSHARE[<param>]=<value>
Где <param>:
Настройка UBPILE.
Синтаксис:
## UBPILE=<var>
Где:
Параметр | Описание |
---|---|
primary | Выступать в роли главного сервера управляющего всеми 'Worker' |
worker | Исполнитель заданий приходящих от сервера 'Primary' |
disable | Отключить |
clean | Очистить БД и вернуть настройки по умолчанию. После процедуры очистки установится UBPILE=disable |
Синтаксис:
## UBPILE[<var>]=<value>
Параметр | Описание |
---|---|
secretkey | При настройке нескольких серверов все ваши серверы должны иметь один и тот же секретный ключ. Любая случайно сгенерированная строка подойдет |
base_app_url | Полный URL-адрес, включая http порт, если он нестандартный. Это используется в электронных письмах для создания URL-адресов с самостоятельными ссылками |
email_from | Адрес электронной почты, который будет использоваться в качестве адреса "От" при отправке уведомлений |
smtp_hostname | Имя хоста вашего SMTP-сервера для отправки почты. Так-же это может быть 127.0.0.1 или localhost |
debug_level | Уровень детализации в журналах отладки. Он варьируется от 1 (очень тихо) до 10 (очень громко). Значение по умолчанию — 4 |
job_memory_max | Максимальное ограничение памяти по умолчанию для каждого задания, по умолчанию: 1073741824 (1Гб) |
server_comm_use_hostnames | Разрешить серверам подключаться друг к другу по именам хостов, полезно с меняющимися IP адресами. Значения: *false, true |
web_direct_connect | Разрешить веб-интерфейсу прямое подключение к главному серверу, полезно при использовании нескольких резервных серверов или балансировщик нагрузки, или обратного прокси. Значения: *false, true |
web_socket_use_hostnames | Разрешить веб-интерфейсу подключаться к внутренним серверам, используя их имена хостов, а не IP-адреса. Значения: *false, true. Это свойство вступает в силу только в том случае, если web_direct_connect=true |
WebServer.http_port | Номер порта http веб-сервера для пользовательского интерфейса. По умолчанию: 9012 |
WebServer.https | Включить HTTPS, чтобы пользовательский интерфейс был зашифрован SSL. Значения: *false, true |
WebServer.https_port | Номер порта https веб-сервера для пользовательского интерфейса. По умолчанию: 9013 |
... | Могут использоваться любые переменные конфигурационного файла config.json |
Примеры:
## UBPILE=disable
## UBPILE[secret_key]="4a6ed27e0434490028ff63b11f12fb7c"
## UBPILE[base_app_url]="http://localhost:80"
## UBPILE[web_direct_connect]="true"
Настройка базы данных UBPile.
Файл настроек /opt/ubpile-workflow/conf/storage.json
имеет приоритет над /opt/ubpile-workflow/conf/config.json
Внимание! Для режима песочницы необходимо сохранять базу данных и логи. По умолчанию для "fs,sqlite" выполнить:
ubconfig set [save] SAVE_ROOTCOPY_CHANGES="/opt/ubpile-workflow"
Синтаксис:
UBPILE_DB=*fs|sqlite|level|lmdb|mssql|mysql|oracle|postgres|redis|s3|sftp
Значение | Описание |
---|---|
*fs | База данных в виде структуры JSON файлов, по умолчанию |
sqlite | База данных в виде sqlite3 файла |
Синтаксис:
UBPILE_DB[SQL.connection.filename|...]=<value>
Значение | Описание |
---|---|
SQL.connection.filename | Для UBPILE_DB=sqlite местоположение файла БД, по умолчанию корень приложения /opt/ubpile-workflow |
Пример:
#UBPILE_DB=sqlite
#UBPILE_DB[SQL.connection.filename]=ubpile.db
Использование для UBPile преднастроенного обратного прокси, разместив приложение на указанном порту.
##UBPILE_REVERSE_PROXY=80
Где:
Значение | Описание |
---|---|
enable | Только включить автозапуск и запустить сервис haproxy-ubpile.service |
disable | Выключить и отключить автозапуск сервис haproxy-ubpile.service |
<http_port> | Настроить http порт, включить автозапуск и запустить сервис haproxy-ubpile.service. Следует обратить внимание на настройки UBPILE[server_comm_use_hostnames] и UBPILE[web_socket_use_hostnames]. Если требуется настройка SSL, то необходимо полученный сертификат вручную прописать в файле конфигурации /etc/haproxy/haproxy-ubpile.cfg |
Настройка сохранений
Сохранять кэши при перезагрузке/выключении, ускоряет загрузку системы:
SAVE_ALL_CACHE=rootcopy
Работает только в режимах песочницы. Не работает в режиме полного сохранения.
При перезагрузке/выключении, сохранить/перезаписать указанные каталоги/файлы <SAVE_ROOTCOPY_CHANGES>
и <SAVE_ROOTCOPY_INCLUDE>
, кроме <SAVE_ROOTCOPY_EXCLUDE>
в /ublinux-data/rootcopy/
.
Примечание: При загрузке весь каталог /ublinux-data/rootcopy копируется в корень.
В режиме песочницы - потребляет свободное ОЗУ.
В режиме сохранения - заменяет файлы в корне.
Примеры:
#SAVE_ROOTCOPY_CHANGES="/etc"
#SAVE_ROOTCOPY_INCLUDE="/etc/pacman.d/gnupg,/etc/NetworkManager/system-connections"
#SAVE_ROOTCOPY_EXCLUDE="/etc/ublinux"
Синтаксис:
SAVE_CLEAN=all|changes,rootcopy,homes
Где:
Значение | Описание |
---|---|
all | Удалить все изменения из /ublinux-data/changes/ /ublinux-data/rootcopy/ /ublinux-data/homes/ |
changes | Удалить только системные изменения /ublinux-data/changes/ |
rootcopy | Удалить только /ublinux-data/rootcopy/ |
homes | Удалить только /ublinux-data/homes/ |
Пример:
## SAVE_CLEAN=changes,rootcopy
Настройка сети
Подключение к AD серверу:
#DOMAIN=ublinux.ru
Сервер контроллера домена/kerberos. Отключить автопоиск сервера контроллера домена/kerberos и задать статический:
## DOMAIN[server]=pdc.ublinux.ru
Клиент для подключения к домену [ *realmd_sssd | realmd_winbind | samba | none ]:
## DOMAIN[client]=realmd_sssd
Пользователи имеющие права ввода в домен. Применяется, если необходимо автоматизировать ввод в домен с большого числа ПК, или при работе в режиме полной песочницы, где невозможно сохранить.
Кодировка пароля в base64: echo 'ublinux' | base64
.
## DOMAIN[admanger]=USER_ADMIN:password_base64'
## DOMAIN[admanger]=Администратор:0J3QvtCy0YvQuV/QlNC10L3RjCEK
Группа на контроллере домена, пользователи которой будут иметь права для sudo:
## DOMAIN[group:sudoers]=sudoers@ublinux.ru
Группа на контроллере домена, пользователи которой будут иметь права для доступа по ssh:
## DOMAIN[group:ssh]=sudoers@ublinux.ru
Ограничить пользователей, которым разрешён вход в домен:
## REALM_PERMIT_USER=user-1@ublinux.ru,user-2@ublinux.ru,ublinux.ru\\user-3
## REALM_PERMIT_GROUP=ublinux_group@ublinux.ru
## REALM_PERMIT_USER=user-1@ublinux.ru
При методе подключения DOMAIN_CLIENT=realmd_sssd. Задать параметры в /etc/sssd/sssd.conf
для домена:
## REALM_SSSD[параметр:имя_секции]=значение
Если "имя_секции" не указан, то по умолчанию используется секция текущего домена = domain/$
## REALM_SSSD[services:sssd]=nss,pam,pac,ssh
## REALM_SSSD[default_shell:nss]=/bib/bash
## REALM_SSSD[ad_hostname:domain/mydomain.ru]=hostname.mydomain.ru
Короткие имена пользователей домена "user" | полные "user@domain.ru" [False|*True]:
## REALM_SSSD[use_fully_qualified_names]=False
Строить карту всех пользователей домена на локальном ПК [False|*True]:
## REALM_SSSD[ldap_id_mapping]=False
Перечисление всех пользователей и групп, нагружает сервер домена при большом числе пользователей [*False|True]:
## REALM_SSSD[enumerate]=True
Задать статическое имя PC в домене pc_name.domain.ru:
## REALM_SSSD[ad_hostname]=hostname.mydomain.ru
Обновлять Kerberos .keytab одновременно у sssd и samba [*False|True]:
## REALM_SSSD[ad_update_samba_machine_account_password]=True
Формат файла Kerberos .keytab пользователя /tmp/krb5cc_123456879:
## REALM_SSSD[krb5_ccname_template]=FILE:%d/krb5cc_%U
Игнорировать контейнеры и политики, если их атрибуты в контейнерах групповой политики недоступны для чтения [*False|True]
## REALM_SSSD[ad_gpo_ignore_unreadable]=True
Правила контроля доступа на основе объектов групповой политики оцениваются, но не применяются [*permissive|enforcing|disabled]
## REALM_SSSD[ad_gpo_access_control]=permissive
Разрешить доступ без проверок сроков [*permit|deny|ldap|ipa|ad|simple|krb5|proxy]
## REALM_SSSD[access_provider]=permit
Разрешить или запретить доступ на основе списка имен пользователей или групп
## REALM_SSSD[access_provider]=simple
## REALM_SSSD[simple_allow_users]="user1, user2"
## REALM_SSSD[simple_allow_groups]="group1"
Рабочая группа samba:
#SAMBADOMAIN=SMBGROUP
Настройка сетевого интерфейса. Синтаксис:
## NETWORK[<UNIT>@<COMMAND>]=<VALUE>
Где <UNIT>:
Значение | Описание |
---|---|
all|any | Все устройства и все подключения |
<DEVICE> | Устройство, пример: enp3s0, ens192, wlan0 |
<TYPE> | Тип устройства, пример: ethernet, wireless, vpn, wireless, bridge |
<CONNECTION> | Подключение, пример: Проводное соединение 1, WIFI_WORK |
<CON-UUID> | UUID подключения, пример: 6c90739a-5b5f-3b4a-9b42-11aa89c419bc |
<HWADDR> | MAC адрес устройста, пример: 70:48:f7:1a:2b:3c |
Где <COMMAND>:
Значение | Описание |
---|---|
nmcli | Выполняет команду: nmcli <VALUE> |
wifi | Выполняет команду: nmcli device wifi <VALUE> |
imp-ovpn | Выполняет команду: nmcli connection import type openvpn file <VALUE> |
add-pptp | Выполняет команду: nmcli connection add connection.id <DEVICE> connection.type vpn vpn.service-type pptp <VALUE> |
add-l2tp | Выполняет команду: nmcli connection add connection.id <DEVICE> connection.type vpn vpn.service-type l2tp <VALUE> |
devmod | Выполняет: команду nmcli device modify <DEVICE> <VALUE> |
devup | Выполняет команду: nmcli device up <DEVICE> |
devdown | Выполняет команду: nmcli device down <DEVICE> |
connmod | Выполняет команду: nmcli connection modify <UUID> <VALUE> |
connup | Выполняет команду: nmcli connection up uuid <UUID> |
conndown | Выполняет команду: nmcli connection down uuid <UUID> |
Где <VALUE> - Перечень опции для команды nmcli.
Перечень доступных опций:
nmcli -p connection show <CONNECTION>
nmcli -p device show <DEVICE>
Где если <COMMAND> = wifi, то <VALUE>:
Значение | Описание |
---|---|
connect <SSID> | Имя SSID |
password <PASSWORD> | Пароль подключения |
hiden yes | Подключаться к скрытой сети |
rescan | Пересканировать частоты для поиска сетей |
Где если <COMMAND> = add-pptp или add-l2tp, то <VALUE>:
Значение | Описание |
---|---|
vpn.data gateway=<IP_ADDRESS> | Имя/IP сервера VPN, обязательный |
vpn.user-name <USER_NAME> | Имя пользователя, обязательный |
vpn.secrets password=<PASSWORD> | Пароль пользователя, обязательный |
connection.interface-name <DEVICE> | Имя интерфейса через которое подключать VPN соединение, необязательный |
connection.permissions user:<USER1>,<USERn> | Имя пользователя для которого предназначено VPN соединение, необязательный |
Где если <COMMAND> = devmod, то <VALUE>:
Значение | Описание |
---|---|
ethernet.cloned-mac-address <MAC> | Сменить MAC на устройство, формат: 00:00:00:00:00:00 |
ethernet.cloned-mac-address stable | Назначить фиксированный MAC на ethernet интерфейс |
ethernet.cloned-mac-address random | Назначить случайный MAC на ethernet интерфейс |
wifi.cloned-mac-address random | Назначить случайный MAC на WiFi интерфейс |
Где если <COMMAND> = connmod, то <VALUE>:
Значение | Описание |
---|---|
connection.secondaries <CONNECTION_NAME> | Имя соединения, которое будет подключено после текущего |
ipv4.method manual | Переключить метод получения IP адреса, значения auto*|manual |
ipv4.addr 192.168.1.1/24,10.10.1.1/8 | Назначить IP адреса, перечисляются через запятую, с указанием маски через / |
ipv4.gateway 192.168.1.254 | Назначить шлюз |
ipv4.dns 192.168.1.254,8.8.8.8 | Назначить DNS сервера, перечисляются через запятую |
+ipv4.dns 8.8.8.8 | Добавить к существующим адресам новый DNS сервера, перечисляются через запятую |
ipv4.ignore-auto-dns yes | Отключить автоматическое получение DNS |
ipv6.method disabled | Отключить получение IPv6 |
Примеры:
## NETWORK[myopenvpn@imp-ovpn]="/home/superadmin/vpn/myopenvp.ovpn"
## NETWORK[wifi@wifi]="connect MyWiFi password 1234567890 hidden yes"
## NETWORK[PPTP_VPN@add-pptp]="vpn.data gateway=192.168.215.254 vpn.user-name vpn.test-1 vpn.secrets password=1234567890 connection.permissions user:superadmin"
## NETWORK[enp3s0@connmod]="connection.secondaries PPTP_VPN"
## NETWORK[L2TP_IPSEC_VPN@add-l2tp]='connection.autoconnect no ipv4.method auto vpn.data "gateway = <IP>, ipsec-enabled = yes, ipsec-psk = 0s"$(base64 <<< '<PSK>' | rev | cut -c2- | rev)"=, mru = 1400, mtu = 1400, password-flags = 0, refuse-chap = yes, refuse-mschap = yes, refuse-pap = yes, require-mppe = yes, user = <USER>" vpn.secrets password=<PASSWORD>'
## NETWORK[all@devup]=yes
## NETWORK[enp3s0@devdown]=yes
## NETWORK[Проводное соединение 1@connmod]="ipv4.method manual ipv4.addr 192.168.1.2/24,10.10.1.5/8 ipv4.gateway 192.168.1.254 ipv4.dns 192.168.1.254,8.8.8.8"
## NETWORK[Проводное соединение 2@connmod]="802-3-ethernet.cloned-mac-address 00:22:22:22:22:22"
## NETWORK[wlan0@connmod]="wifi.cloned-mac-address 70:70:70:70:70:70"
Включение ipv6 по умолчанию на всех интерфейсах:
IPV6=no
Серверы времени. Синтаксис:
##NTPSERVERS=dhcp|default|ntp-ru|stop|disable|<servers>
Где:
','
или ';'
, например =ntp1.vniiftri.ru,ru.pool.ntp.org
;NTPSERVERS=dhcp
Добавить порядок поиска DNS: avahi
NSSWITCHAVAHI=yes
Добавить порядок поиска DNS: winbind
NSSWITCHWINBIND=yes
Где:
Установка системных прокси для HTTP, HTTPS, FTP, SOCKS, RSYNC и адреса исключений EXCLUDE.
Для применения требуется перелогиниться.
Синтаксис:
PROXY_SYSTEM[<PROTOCOL>]=<SERVER>
Где:
<PROTOCOL>=<null>|http|https|ftp|socks|rsync|all|auto|exclude
:
Внимание, подстановочные символы (звёздочка) и CIDR нотации не поддерживаются!
<SERVER>=no|n|none|disable|<ADDRESS>
Если пароль содержит специальные символы, необходимо их заменить их на ASCII коды. Например символ собаки @, должен быть заменен на «%40».
Если указан <PROTOCOL>=auto, то указывается путь до файла конфигурации, http://my.proxy.org/foo.pac.
Примеры использования:
PROXY_SYSTEM=disable
PROXY_SYSTEM[https]=http://user:password@192.168.1.1:443
PROXY_SYSTEM[http]=http://127.0.0.1:8118
PROXY_SYSTEM[https]=https://127.0.0.1:8118
PROXY_SYSTEM[ftp]=ftp://127.0.0.1:8118
PROXY_SYSTEM[socks]=socks://127.0.0.1:9050
PROXY_SYSTEM[exclude]=localhost,127.0.0.1,::1,192.168.1.1,192.168.2.0/24
Для совместного доступа к интернету можно включить режим шлюза. Также необходим при связывании нескольких сетей (wlan0 eth0 eth1 ...):
#ROUTER=yes
Исключения для межсетевого экрана iptables:
#IPTABLESOPENPORTSTCP=21,22,30001,6881
#IPTABLESOPENPORTSUDP=30002,6881
Для работы в режиме сервера, шлюза и точки доступа необходимо открыть доступ из локальной сети:
#IPTABLESTRUSTEDIP=192.168.1.0/16
Переправлять весь поток от пользователей через TOR. Пользователей можно задавать в виде имени, номера и диапазона.
#TORUSERS=500-999
Должна быть включена служба tor!
Настройка безопасности, ограничений.
Включить поддержку OpenSSL алгоритмов ГОСТ GOST2012-GOST8912-GOST8912 GOST2001-GOST89-GOST89
## OPENSSL_ENGINE=gost
Отключить виртуальные терминалы и запретить переключение на них из X11:
## ACCESS_DENIED_VTX11=yes|no*|enable|disable
## ACCESS_DENIED_VTX11=yes
Управление доступом в систему, правила разрешения.
/etc/security/access.conf
Предостережение: порядок правил имеет значение. Проверяется последовательно и будет применено первое подходящее правило.
Первыми обрабатываются правила ACCESS_ALLOWED_LOGIN, после правила ACCESS_DENIED_LOGIN.
Синтаксис:
## ACCESS_ALLOWED_LOGIN=rule_1,rule_2,rule_n
Формат правила:
users/groups:origins
, где:
users/groups — список пользователей или групп пользователей или ключевое слово ALL;
origins — список TTY (для локального доступа), имен хостов, доменных имен, IP-адресов, ключевое слово ALL или LOCAL.
Правила (rule_n):
Правило | Описание |
---|---|
root:cron crond :0 tty1 tty2 tty3 tty4 tty5 tty6 vc/1 superadmin:foo1.bar.org foo2.bar.org .foo.bar.org |
Пользователю root разрешен доступ через cron, X11 терминал :0, tty1, ..., tty6, vc/1 |
@admins foo:ALL | Пользователю foo и членам администраторов сетевой группы admins разрешен доступ |
@usergroup@@hostgroup:ALL | Членам группы usergroup и группы хостов hostgroup разрешен доступ |
DOMAIN.ORG\Domain Admins:ALL | Пользователям, входящих в группу "Domain Admins" домена DOMAIN.ORG, разрешен доступ |
(wheel):ALL | Членам группы wheel разрешен доступ |
ALL:LOCAL | Разрешить локальным учетным записям вход в систему локально |
ALL EXCEPT root: 192.168.0. | Разрешить всем, кроме root, входить в систему из под указанной маски сети |
Пример:
## ACCESS_ALLOWED_LOGIN="(users)::0 :1 :2 :3 tty2,(wheel):127.0.0.1 ::1,(wheel):ALL"
Управление доступом в систему, правила блокировки:
/etc/security/access.conf
Синтаксис:
## ACCESS_DENIED_LOGIN=rule_1,rule_2,rule_n
Правила (rule_n):
Правило | Описание |
---|---|
root:ALL | Пользователю root должно быть отказано в доступе из всех источников |
root:ALL EXCEPT LOCAL | Запретить root вход через сеть |
wheel:ALL EXCEPT LOCAL .domain.org | Запретить нелокальный вход в привилегированные учетные записи группы wheel |
ALL EXCEPT root:tty1 | Запретить вход без полномочий root на tty1 |
ALL EXCEPT superadmin:ALL | Разрешить доступ только пользователю superadmin и никому больше |
ALL EXCEPT (wheel) shutdown sync:LOCAL | Запретить вход в консоль для всех учетных записей, кроме shutdown, sync и входящих в группу wheel |
ALL EXCEPT (wheel):tty1 tty2 tty3 tty4 tty5 tty6 vc/1 localhost | Запретить вход в консоль tty для всех учетных записей, кроме входящих в группу wheel |
DOMAIN.ORG\Domain Users:ALL | Пользователям, входящих в группу "Domain Users" домена DOMAIN.ORG, запретить доступ |
ALL:ALL | Всем остальным пользователям запретить доступ |
## ACCESS_DENIED_LOGIN="root:ALL,ALL:ALL"
Блокировать макросы приложений:
BLOCK_APP_MACROS=yes
Отключить влияние SUID бита на привилегии порождаемого процесса всем, кроме указанных исключений в ACCESS_ALLOWED_SUID
:
Синтаксис:
## ACCESS_ALLOWED_SUID[<find_path_1> <find_path_n> <options>]=<file_1>,<file_2>,<file_n>
где Find path:
[]
, то будут выбраны пути поиска ="/usr/bin /usr/local/bin /usr/local/sbin /home";где Options:
где Files:
## ACCESS_ALLOWED_SUID[/usr/bin]=vmware-user-suid-wrapper,Xvnc,vncserver-x11,veyon-auth-helper,at,cdda2wav,cdrecord,chage,chfn,chsh,crontab,cu,expiry,firejail,fusermount,fusermount-glusterfs,fusermount3,gpasswd,ksu,mount,mount.cifs,mount.ecryptfs_private,mount.nfs,newgrp,passwd,pkexec,readcd,rscsi,screen-4.9.0,sg,su,sudo,suexec,umount,unix_chkpwd,uucico,uucp,uuname,uustat,uux,uuxqt
## ACCESS_ALLOWED_SUID[/home]=-
Отключить влияние SUID бита на привилегии порождаемого процесса всем, кроме указанных исключений в ACCESS_ALLOWED_SGID
:
Синтаксис:
## ACCESS_ALLOWED_SGID[<find_path_1> <find_path_n> <options>]=<file_1>,<file_2>,<file_n>
где Find path:
[]
, то будут выбраны пути поиска ="/usr/bin /usr/local/bin /usr/local/sbin /home";где Options:
где Files:
## ACCESS_ALLOWED_SGID[/usr/bin]=vmware-user-suid-wrapper,x2goprint,at,locate,mount.cifs,mount.ecryptfs_private,unix_chkpwd,wall,write
## ACCESS_ALLOWED_SGID[/home]=-
Ограничить запуск исполняемых файлов и интерпретаторов языков программирования в интерактивном режиме:
Синтаксис:
## ACCESS_DENIED_EXEC[<find_path_1> <find_path_n> <options>]=<file_1>,<file_2>,<file_n>
где Find path:
[]
, то будут выбраны пути поиска ="/usr/bin /usr/local/bin /usr/local/sbin /home";где Options:
где Files:
## ACCESS_DENIED_EXEC=interpreter
## ACCESS_DENIED_EXEC[/usr/bin,/usr/bin/local]=gbr3,python,python2,python3,perl,perl6,php,ruby,node,awk,gawk
## ACCESS_DENIED_EXEC[/home/*/local/bin]=myfile
## ACCESS_DENIED_EXEC[\"/home/superadmin/soft my\"]=myfile
Отключить пользовательские nosuid nodev noexec на смонтированные цели:
Синтаксис:
## MOUNT_ATTR[<source_1>,<source_n>]=<attribut_1>,<attribut_n>
где Source:
где Attributs:
-acl - включить POSIX ACL;
-noacl - отключить POSIX ACL;
-udba=notify - для AUFS устанавливает либо «fsnotify», либо «inotify» для всех каталогов, к которым осуществляется доступ, в своих ветвях и получает событие об этом каталоге и его дочерних элементах;
## MOUNT_ATTR[/]=acl,udba=notify
## MOUNT_ATTR[/home]=nosuid,nodev,noexec,nosymfollow
## MOUNT_ATTR[/tmp,/dev/shm]=nosuid,nodev,noexec
Использовать дисковые квоты на файловые системы ext2,ext3,ext4,jfs,xfs,vfs,nfs,...
Внимание: для квот на группу, необходимо что-бы указанная группа была основной у пользователей.
Альтернатива для проектов, через дополнительную группу projgrp: groupadd projgrp; mkdir /home/projects; chgrp projgrp /home/projects; chmod g+s /home/projects
Информация: Если квотами просиходит управление через другие программы, то достаточно только включить квоты на требуемый тип квоты.
## DISK_QUOTA[<quota_type>[:<device_ident>]]=<enable/disable>
## DISK_QUOTA[<quota_type>:<device_ident>]=0:0:0:0:<bgrace>:<igrace>
## DISK_QUOTA[<quota_type>:<device_ident>:<user1,user2,user_n>]=<bsoft>:<bhard>:<isoft>:<ihard>[:<bgrace>:<igrace>]
## DISK_QUOTA[<quota_type>:<device_ident>:<group_1,group_2,group_n>]=<bsoft>:<bhard>:<isoft>:<ihard>[:<bgrace>:<igrace>]
## DISK_QUOTA[prjquota:<path_dir>:<project_id>[,<project_name>]]=<bsoft>:<bhard>:<isoft>:<ihard>[:<bgrace>:<igrace>]
## DISK_QUOTA[prjquota:<path_dir>:<project_id>[,<project_name>]]=0:0:0:0:<bgrace>:<igrace>
## DISK_QUOTA[prjquota:<path_dir>:[<project_id>][,<project_name>]]=clean
## DISK_QUOTA[quota:<device_ident>]=clean
## DISK_QUOTA[quota]=<enable/disable>
Где <quota_type>:
Где <enable/disable> - простое включение/отключение дисковой квоты, без указания дополнительных условий, если не указан <device_ident>, то для всех устройств.
Где <device_ident>:
Где:
## DISK_QUOTA[usrquota:/dev/sda3]=enable
## DISK_QUOTA[usrquota:/dev/sda3]=disable
## DISK_QUOTA[quota]=enable
## DISK_QUOTA[usrquota:/dev/sdc1:user-1,user-2]=100M:150M:100:150
## DISK_QUOTA[usrquota:/dev/sdc1]=0:0:0:0:86400:86400
## DISK_QUOTA[usrquota:/dev/sdc1:user-1,user-2]=100M:150M:100:150:86400:86400
## DISK_QUOTA[grpquota:/dev/sdc1:users,users@domain.com]=1G:1500M:0:0:604800:604800
## DISK_QUOTA[prjquota:/mnt/data/project2:1,MyProjectName]=500M:600M:0:0:604800:604800
## DISK_QUOTA[prjquota:/mnt/data/project1:AUTO]=5G:6G:0:0:604800:604800
Квоты на ресурсы, через cgroup2. Механизм systemd или напрямую cgroup. man 5 systemd.resource-control. Синтаксис:
CGROUP_QUOTA[unit|user]=property_1=value,property_2=value,property_n=value
Получить древовидный список cgroups и запущенных процессов: systemd-cgls --no-page
.
Показать монторинг потребляемых ресурсов: systemd-cgtop -c; systemd-cgtop -m
Показать статус и используемые ограничения: systemctl status user.slice --no-page
Единицы измерения: %, K, M, G, T
unit:
user (Системное имя пользователя):
Где property:
## CGROUP_QUOTA[user-1000.slice]="MemoryHigh=200M,MemorySwapMax=300M,CPUQuota=100%"
## CGROUP_QUOTA[superadmin]="MemoryHigh=500M,MemorySwapMax=100M,CPUQuota=400%"
## CGROUP_QUOTA[smb.service]="MemoryHigh=100M,MemorySwapMax=0M,CPUQuota=100%"
## CGROUP_QUOTA[superadmin]="MemoryHigh=1G,MemoryMax=7G,MemorySwapMax=64M,CPUQuota=395%,IOReadBandwidthMax=/dev/sda3 1M,IOWriteBandwidthMax=/dev/sdb3 2M,IOReadBandwidthMax=/dev/sdc3 16K,IOWriteBandwidthMax=/dev/sdd3 16K"
Управление разрешениями действий polkit, можно разрешать для группы пользователей.
Синтаксис:
## POLKIT[id_object]=result:group_1,group_n"
Где result:
Где id_object - объект, полученный в результате команды: pkaction
. Например:
Где group_1 - имя пользователя или группа;
Посмотреть все доступные объекты polkit командой:
pkaction
.
## POLKIT[org.freedesktop.udisks2.]=yes:storage
## POLKIT[org.manjaro.pamac.]=yes:wheel
## POLKIT[com.ublinux.ubl-settings-datetime.run]=yes:users
## POLKIT[org.manjaro.pamac.]=yes:users
Настройка режима киоска.
Режим киоска XFCE4, запретить изменять параметры пользователям и группам:
XFCE4_KIOSK[<channel>:<property>]=<user_groups>
Где:
#XFCE4_KIOSK[xfce4-panel:CustomizePanel]=@wheel
#XFCE4_KIOSK[xfce4-session:SaveSession]=NONE
#XFCE4_KIOSK[xfce4-session:CustomizeSplash]=NONE
#XFCE4_KIOSK[xfce4-session:CustomizeChooser]=NONE
#XFCE4_KIOSK[xfce4-session:CustomizeLogout]=NONE
#XFCE4_KIOSK[xfce4-session:CustomizeCompatibility]=NONE
#XFCE4_KIOSK[xfce4-session:Shutdown]=ALL
#XFCE4_KIOSK[xfce4-session:CustomizeSecurity]=NONE
#XFCE4_KIOSK[xfdesktop:UserMenu]=@wheel
#XFCE4_KIOSK[xfdesktop:CustomizeBackdrop]=@wheel
#XFCE4_KIOSK[xfdesktop:CustomizeDesktopMenu]=@wheel
#XFCE4_KIOSK[xfdesktop:CustomizeWindowlist]=NONE
#XFCE4_KIOSK[xfdesktop:CustomizeDesktopIcons]=@wheel
Определить пользователей, которым будет применено ограничение в режиме "Киоск":
Синтаксис:
XFCE4_KIOSK_USER_LOCKED=<value>
Где <value>:
Значение | Описание |
---|---|
disable | Снять все ограничения |
* | Все пользователи |
@whell;@users | Указанные группы |
superadmin;user-1 | Указанные пользователи |
@wheel;user-1 | Указанные группы и пользователи |
Примеры:
#XFCE4_KIOSK_USER_LOCKED="*"
XFCE4_KIOSK_USER_LOCKED=@wheel;user-1
Определить пользователей, для которых будет применено исключение в режиме "Киоск":
Синтаксис:
XFCE4_KIOSK_USER_UNLOCKED=<value>
Где <value>:
Значение | Описание |
---|---|
disable | Снять все исключения |
* | Все пользователи |
@whell;@users | Указанные группы |
superadmin;user-1 | Указанные пользователи |
@wheel;user-1 | Указанные группы и пользователи |
Примеры:
#XFCE4_KIOSK_USER_UNLOCKED="*"
XFCE4_KIOSK_USER_UNLOCKED="@wheel;user-1"
Назначить настройки XFCE4 через xfconf-query. Синтаксис:
## XFCE4_XFCONF[<users>,<@groups>:<channel>:<property>]=<type>:<value>
Где:
superadmin,user-1
. Разделитель: запятая, точка с запятой.@whell,@users
--channel <channel> --property <property> --create --type <type> --set <set>
xfconf-query --channel <channel> --property <property> --reset --recursive.
Примеры:
#XFCE4_XFCONF[@users:xfce4-session:/shutdown/LockScreen]=bool:false
#XFCE4_XFCONF[@sers:xfce4-session:/shutdown/ShowHibernate]=bool:false
#XFCE4_XFCONF[@users:xfce4-session:/shutdown/ShowSuspend]=bool:false
#XFCE4_XFCONF[@users:xfce4-session:/shutdown/ShowHybridSleep]=bool:false
#XFCE4_XFCONF[@users:xfce4-session:/shutdown/ShowSwitchUser]=bool:false
#XFCE4_XFCONF[@users:xfce4-session:/general/ShowSave]=bool:false
#XFCE4_XFCONF[@users:xfce4-screensaver:/saver/idle-activation/delay]=int:10
Скрыть кнопку LOGOUT в XFCE4 диалог выключения питания. Синтаксис:
## XFCE4_DIALOGPOWER_LOGOUT[<users>,<@groups>]=<value>
[superadmin,user-1]
. Разделитель: запятая, точка с запятой;[@whell,@users]
, можно комбинировать группы с пользователями, пример: @wheel,user-1
;hide, show
;#XFCE4_DIALOGPOWER_LOGOUT[@users]=hide
Скрыть иконки приложений из меню:
APPDESKTOP_BLACKLIST[<users>]=<desktop_files>
## APPDESKTOP_BLACKLIST[${USERNAME}]=*
## APPDESKTOP_WHITELIST[${USERNAME}]=xarchiver,xfce4-power-manager-settings
Скопирует все [/usr/share/applications/*.desktop]
в [${USERNAME}/.local/share/applications/]
и добавит опцию NoDisplay=true
в файлы [${USERNAME}/.local/share/applications/*.desktop]
:
Изменения хранятся в профиле пользователя, для любого режима.
## APPDESKTOP_BLACKLIST[LOCAL]=*
## APPDESKTOP_WHITELIST[LOCAL]=xarchiver,xfce4-power-manager-settings
Скопирует все [/usr/share/applications/*.desktop]
в [/usr/share/local/applications/]
и добавит опцию NoDisplay=true
в файлы [/usr/share/local/applications/*.desktop]
:
В режиме песочницы изменения применяются каждую перезагрузку.
В режиме полного сохранения, вернуть изменения можно только вручную.
## APPDESKTOP_BLACKLIST[GLOBAL]=*
## APPDESKTOP_WHITELIST[GLOBAL]=xarchiver,xfce4-power-manager-settings
Удалит файлы [/usr/share/applications/*.desktop]
[/usr/share/local/applications/*.desktop]
[/home/*/.local/share/applications/*.desktop]
:
В режиме песочницы изменения применяются каждую перезагрузку.
В режиме полного сохранения, вернуть изменения можно только вручную.
#APPDESKTOP_BLACKLIST[user-1]=xarchiver,xfce4-power-manager-settings
#APPDESKTOP_WHITELIST[user-1]=
Разместить ярлыки программ на рабочем столе. Применимо только для новых пользователей.
Синтаксис:
APPDESKTOP_PLACEONDESKTOP_INIT[<users>]=<desktop_files>
Значения:
Значение | Описание |
---|---|
users | Применить для указанного пользователя. Перечислять пользователей через запятую. Можно комбинировать с группами. |
@groups | Применить для указанной группы. Перечислять группы через запятую. Можно комбинировать с пользователями. |
* | Применить для всех пользователей системы. Если ничего не указано, то применяется ко всем пользователям. |
<desktop_files> | Файлы *.desktop. из каталога /usr/share/applications/ . Указывается без расширения ".desktop". |
=@lock | Установить владельца:группу root:root и права ACL только чтения на каталог "Рабочего стола" рекурсивно. В режиме песочниц применяется только после перезагрузки. |
=@dislock | Установить владельца:группу домашний_пользователь:домашний_пользователь и очистить ACL права на каталог рабочего стола рекурсивно. В режиме песочниц применяется только после перезагрузки. |
Пример:
## APPDESKTOP_PLACEONDESKTOP_INIT[superadmin,@wheel]=ubinstall,htop
## APPDESKTOP_PLACEONDESKTOP_INIT=gimp,pinta
Настройка параметра через ubconfig.
Разместить ярлыки программ на рабочем столе.
Синтаксис:
APPDESKTOP_PLACEONDESKTOP[<users>]=<desktop_files>
Значения:
Значение | Описание |
---|---|
users | Применить для указанного пользователя. Перечислять пользователей через запятую. Можно комбинировать с группами. |
@groups | Применить для указанной группы. Перечислять группы через запятую. Можно комбинировать с пользователями. |
* | Применить для всех пользователей системы. Если ничего не указано, то применяется ко всем пользователям. |
<desktop_files> | Файлы *.desktop. из каталога /usr/share/applications/ . Указывается без расширения ".desktop". |
=@lock | Установить владельца:группу root:root и права ACL только чтения на каталог "Рабочего стола" рекурсивно. В режиме песочниц применяется только после перезагрузки. |
=@dislock | Установить владельца:группу домашний_пользователь:домашний_пользователь и очистить ACL права на каталог рабочего стола рекурсивно. В режиме песочниц применяется только после перезагрузки. |
Пример:
## APPDESKTOP_PLACEONDESKTOP[superadmin,@wheel]=ubinstall,htop
## APPDESKTOP_PLACEONDESKTOP[user-1]=htop@lock
## APPDESKTOP_PLACEONDESKTOP[user-2]=@lock
## APPDESKTOP_PLACEONDESKTOP=gimp,pinta
Настройки рабочего стола
Синтаксис:
AUTOLOGINUSER=<user_name>|enable|yes|disable|no
Пользователь для автовхода, значения:
Значение | Описание |
---|---|
=user_name | Включает автовход указанного пользователя. |
=yes =enable |
Включает автовход пользователя с id =${ADMUID} по умолчанию =1000, по умолчанию =superadmin. |
=no =disable |
Принудительно отключить автологин. |
Если задан параметр ${DISPLAYMANAGER_DEFAULTUSER}, то автовход от пользователя переменной.
## AUTOLOGINUSER=yes
Настройка среды рабочего стола.
Синтаксис:
DESKTOP=none|xfce|lxde|gnome|plasma|<other>
Значение | Описание |
---|---|
none | Отключает графический сервер и загружает систему консоли |
xfce | Среда рабочего стола для слабых, средних и мощных машин |
lxde | Быстрая среда для слабых компьютеров |
gnome | Альтернативная среда для средних и мощных машин |
plasma | Альтернативная среда для мощных машин на Wayland |
plasmax11 | Альтернативная среда для мощных машин на X11 |
pantheon | Pantheon альтернативная среда для средних и мощных машин |
<other> | Любая среда установленная в систему |
Пример:
DESKTOP=none
Настройка менеджера входа.
Синтаксис:
DISPLAYMANAGER=lightdm|slim|gdm|<other>
Значение | Описание |
---|---|
lightdm | Функциональный менеджер |
slim | Простой |
gdm | Альтернативный менеджер |
<other> | Любой менеджер установленный в систему |
Пример:
DISPLAYMANAGER=lightdm
Настройка выбранного пользователя в менеджере входа по умолчанию:
Синтаксис:
DISPLAYMANAGER_DEFAULTUSER=<user>
Где: <user> - пользователь системы
## DISPLAYMANAGER_DEFAULTUSER=user-1
Перечень программ для автозагрузки под указанным пользователем или группой:
## AUTOEXEC[<users>,<@groups>]="<de_1>:<appname_1>,<appname_n>;<de_2>:<appname_1>,<appname_n>;<appname_n>"
#AUTOEXEC[user-1,@wheel]="xbindkeys;kde:yakuake;gnome:guake;xfce:plank.desktop,xterm;lxde:guake"
Простой режим мульти рабочего места MultiSeat, когда в ПК установлено два независимых графических контроллера (посмотреть все устройства: loginctl seat-status seat0
)
lsusb
- показывает подключенные устройства USB;
lspci
- показывает информацию о подключенных устройствах PCI.
Синтаксис:
#MULTISEAT_SIMPLE[НомерМеста]="АдресУстройстваДляМеста1 АдресУстройстваДляМеста..."
Пример:
#MULTISEAT_SIMPLE[seat1]="/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card1 /sys/devices/pci0000:00/0000:00:14.0/usb1/1-8 /sys/devices/pci0000:00/0000:00:14.0/usb1/1-7"
#MULTISEAT_SIMPLE[seat2]="/sys/devices/pci0000:00/0000:00:02.0/0000:02:00.0/drm/card2 /sys/devices/pci0000:00/0000:00:14.0/usb2/1-10 /sys/devices/pci0000:00/0000:00:14.0/usb2/1-9"
Сервис удалённого управления рабочим столом X11 и TT. Пароль для VNC сервиса x11vnc-ublinux:*.service. Настроен на работу только по паролю для всех рабочих мест. Создаёт шифрованный пароль в файле /root/.vnc/.passwd.
Поддерживает Multiseat по номеру порта display:0=port:5900 display:1=port:5901 display:2=port:5902
Пароль кодировать в base64: echo 'ublinux' | base64
.
## X11VNC[password]=dWJsaW51eAo=
Дополнительные опции к автоматическому соединению:
## X11VNC[options]="-noipv6"
Значение | Описание |
---|---|
-noipv6 | Не использовать IPv6 для подключений |
-ultrafilexfer | Включите расширение передачи файлов UltraVNC |
-tightfilexfer | Включите расширение передачи файлов TightVNC |
-xkb | Если копирование и вставка не работают должным образом с буфером обмена |
-ssl [pem] | [pem]=file_pem [pem]=SAVE [pem]=ANON # Аноним Диффи-Хеллмана используется метод обмена ключами, без SSL [pem]=TMP |
-unixpw | Что-бы работало, должна быть установлена переменная UNIXPW_DISABLE_SSL=1 |
-users unixpw= | Предоставить доступ к системным учетным записям |
-xdummy | Использовать Xdummy |
-avahi | Используйте протокол Avahi/mDNS ZeroConf для объявления этого VNC-сервера на локальном компьютере в сеть |
VNC для управления TTY:
## X11VNC[tty1]="-noipv6"
Пользовательская настройка запуска, new_1..new_2..new_n:
## X11VNC[new1]="-no6 -rfbauth /root/.vnc/.passwd -rawfb vt2"
Отключить автоматическое создание X11VNC для всех дисплеев:
## X11VNC[display]=disable || X11VNC[nodisplay]=1 || X11VNC[disable]=1
Параметр настройки протокола XDMCP у LightDM.
Синтаксис:
LIGHTDM_XDMCP=yes|no|enable|disable
LIGHTDM_XDMCP[port]=<port>
LIGHTDM_XDMCP[listen-address]=<address>
LIGHTDM_XDMCP[key]=<key>
LIGHTDM_XDMCP[hostname]=<hostname>
Где:
keys.conf
);Настройка гритера для менеджера диспелея Lightdm.
Синтаксис:
LIGHTDM_GREETER[<parametr>]=<value>
Где <parametr>:
Пример:
#LIGHTDM_GREETER[greeter-session]=io.elementary.greeter
Настройки видеодрайвера
Загрузить подходящий видеодрайвер, вначале пытаемся запустить проприетарный, после свободный. Модули видеодрайверов с нужной версией должны быть подключены. По умолчанию отключено (no).
## VGADRV_AUTO=yes|*no
#VGADRV_AUTO=yes
Отключить свободные radeon/nouveau, использовать проприетарные видео драйвера nvidia/amdgpu, при подключенных модулях станут активны проприетарные драйвера. По умолчанию отключено (no).
Синтаксис:
## VGADRV_NOFREE=yes|*no|nouveau|radeon
Где:
#VGADRV_NOFREE=yes
Принудительно добавить и установить разрешение монитора в /etc/X11/xorg.conf.d/
Перечень имён портов вывода получить по команде:
xrandr
#или
xrandr | grep -E "^[A-Z0-9]* connected" | cut -d' ' -f1
Пример:
## XORG_MONITOR[VGA1]=1920x1080,1600x1200x60,848x480x60,nodpms
Где:
1920x1080
=1920x1080x75
## XORG_MONITOR[VGA1]=1920x1080,ro:hdmi1
Принудительно задать дополнительные возможности XORG, XORG_EXT=, значения:
XORG_EXT=nodpms
Принудительно задать DPI, XORG_DPI=, значения:
## XORG_DPI=192
Драйверы для видеокарт в случае, если проприетарные не доступны или не работают:
#FAILSAFENVIDIA=fbdev
#FAILSAFEATI=fbdev
Перечень программ, которые следует запускать через optirun для ноутбуков с Nvidia optimus:
#OPTIRUN=
Перечень программ, которые следует запускать через primusun для ноутбуков с Nvidia optimus:
#PRIMUSRUN=steam
При наличии 2х видеокарт (ноутбуки с картами AMD/ATI) по умолчанию используется.
Встроенная (intel), отключите параметр INTEGRATEDVGA, чтобы использовать AMD/ATI:
#INTEGRATEDVGA=no
Настройки темы
Доступные темы: ublinux(по умолчанию), ublinux-green, ublinux-dark
#THEME=ublinux
Настройка параметра через ubconfig
Выбор обоев рабочего стола: XFCE4, Plasma. Синтаксис:
##BACKGROUND_DE=none|no|disable|</dir/file>|</dir/subdir>
Где:
Если параметр не задан, то фирменные обои по умолчанию собираются в /usr/share/backgrounds/background.jpg.
#BACKGROUND_DE=/mnt/livedata/ublinux-data/backgrounds/wallpapers/
Метод масштабирования: XFCE4, Plasma
Пример:
## BACKGROUND_DE_MODE=0
Выбор обоев экранного менеджера Display Manager: Lightdm
##BACKGROUND_DM=none|no|disable|</dir/file>|</dir/subdir>
Где:
Если параметр не задан, то фирменные обои по умолчанию собираются в /usr/share/backgrounds/dm.jpg.
#BACKGROUND_DM=/mnt/livedata/ublinux-data/backgrounds/wallpapers/
Метод масштабирования экранного менеджера Display Manager: Lightdm
Пример:
## BACKGROUND_DM_MODE=0
Подписывать режим загрузки системы на обоях в виде иконки
## GRAFFITI=*yes|no
#GRAFFITI=no
Настройки steam
Настройки клиента ~/.steam для вынесения данных из профиля. Места занимает немного, переносить имеет смысл только при работе в чистом режиме.
Не назначайте переменную STEAMCONF если steam ещё не установлен!
#STEAMCONF=
Место для клиента и библиотеки игр. Т.к. это занимает много места, то лучше перенести из домашней папки:
#STEAMAPP=/mnt/livedata/ublinux-data/steam
Настройки времени
Параметр HWCLOCK_SYNC
синхронизирует время в биос при завершении работы системы/перезагрузки, и считывает время из биоса при загрузке. Синтаксис:
## HWCLOCK_SYNC=*utc|localtime
Где:
HWCLOCK_SYNC=localtime
Установка часового пояса * =UTC:
ZONE= | Описание |
---|---|
* =Etc/UTC | Time zone for UTC MSK-3 |
=Europe/Kaliningrad | Time zone for UTC+2 MSK-1 |
=Europe/Moscow | Time zone for UTC+3 MSK |
=Europe/Samara | Time zone for UTC+4 MSK+1 |
=Asia/Yekaterinburg | Time zone for UTC+5 MSK+2 |
=Asia/Omsk | Time zone for UTC+6 MSK+3 |
=Asia/Krasnoyarsk | Time zone for UTC+7 MSK+4 |
=Asia/Irkutsk | Time zone for UTC+8 MSK+5 |
=Asia/Chita | Time zone for UTC+9 MSK+6 |
=Asia/Yakutsk | Time zone for UTC+10 MSK+7 |
=Asia/Vladivostok | Time zone for UTC+11 MSK+8 |
=Asia/Magadan | Time zone for UTC+12 MSK+9 |
#ZONE=Europe/Moscow
Языковые настройки
#LOCALE="en_US.UTF-8,ru_RU.UTF-8"
#LANG="ru_RU.UTF-8"
#CONSOLE_FONT=lat0-16
Настройки клавиатуры
Режим работы клавиатуры NumLock. По умолчанию включено, если нет тачпада.
## NUMLOCK=*yes|no|on|off
#NUMLOCK=off
#XKBMODEL=pc105
#XKBLAYOUT="us,ru"
#XKBVARIANT="ru"
Раскладка клавиатуры в X:
#XKBOPTIONS=grp:lalt_lshift_toggle,grp_led:scroll,compose:rwin
Переключение раскладки клавиатуры в консоли: grp:lalt_lshift_toggle
#CONSOLE_KEYMAP="ru"
#CONSOLE_KEYMAP_TOGGLE="grp:lalt_lshift_toggle"
Настройки модулей
#UBMDIR=/var/lib/ubmodules
#EXT=ubm
#compression="${MKSQFS_OPTS}"
#compression="-b 512K -comp xz -Xbcj x86"
#compression_fast="${MKSQFS_FASTALG}"
#compression_fast="-b 512K -comp lz4 -Xhc"
Настройки NFS сервера
Строгая привязка служб NFS сервера к работе через определенные порты (полезно при работе в сети через межсетевой экран):
#RPCMOUNTD_OPTIONS="--port 4002"
Настройки NFS common
#STATD_OPTIONS="--port 4000"
Настройка локальной и сетевой автоустановки
Язык установщика.
Синтаксис:
AUTOINSTALL[installer_lang]=*russian|english
Где:
Пример:
#AUTOINSTALL[installer_lang]=russian
Источники установки, раздел или каталог с образом системы или файл образа ISO
Синтаксис:
AUTOINSTALL[source]=<source1>,<source2>,<source..>,...
Где <source1>:
Значение | Описание |
---|---|
*auto | Источником выступает текущая загруженная система |
<device> | Раздел с образом системы, может быть cdrom или флешка, пример: /dev/sdb3 |
<path> | Каталог к образу системы, пример: /home/superadmin/distrib |
<file_iso> | Путь до файла ISO с образом системы |
Пример:
#AUTOINSTALL[source]=auto
Тип установки.
Синтаксис:
AUTOINSTALL[install_type]=fast|next|part|grub_install|grub_update|system_only|data_only|custom
Где:
Значение | Описание |
---|---|
fast | Быстрая типовая установка на выбранное устройство Обязательные параметры: AUTOINSTALL[device] |
next | Установка рядом с другой системой на выбранное устройство в отдельный раздел Обязательные параметры: AUTOINSTALL[part] |
part | Установка рядом с другой системой на выбранное устройство в раздел другой системы Обязательные параметры: AUTOINSTALL[part] |
grub_install | Переустановить GRUB, на выбранное устройство и раздел Обязательные параметры: AUTOINSTALL[part] |
grub_update | Обновить GRUB, на выбранное устройство и раздел Обязательные параметры: AUTOINSTALL[part] |
system_only | Установить/перезаписать только базовые модули с источника (source)/ublinux/base на выбранное устройство и раздел Обязательные параметры: AUTOINSTALL[part] |
data_only | Установить/перезаписать только дополнительные модули с источника (source)/ublinux/modules на выбранное устройство и раздел, с полной очисткой (part)/ublinux-data Обязательные параметры: AUTOINSTALL[part] |
custom | Выборачная установка с возможностью использовать все параметры Обязательные параметры: AUTOINSTALL[device] |
Пример:
#AUTOINSTALL[install_type]=fast
Тип загрузки системы с устройства.
Синтаксис:
AUTOINSTALL[boot]=*bios+efi|bios|efi|none
Где:
Значение | Описание |
---|---|
*bios+efi | Гибридная установка Bios_boot + EFI. По умолчанию |
bios | Только Bios Boot сектор |
efi | Только EFI разел |
none | Не создавать BIOS/EFI разделы |
Пример:
#AUTOINSTALL[bios_boot]=bios+efi
Устройство на которое будет установлена система.
Если установлена опция AUTOINSTALL[device_type], то возможно пречислять через запятую (,) несколько устройств.
Синтаксис:
AUTOINSTALL[device]=<device_1>[,<device_n>]
Пример:
## AUTOINSTALL[device]=sda
## AUTOINSTALL[device]=sda,sdb,sdc,sde
Тип виртуального устройств из выбранных физических, используется для рейда MDADM или LVM и другие.
Синтаксис:
AUTOINSTALL[device_typevfs]=<type_vfs>
Где:
Значение | Описание |
---|---|
<type_vfs> | Тип виртуального устройства, доступные типы: - *none - по умолчанию - raid0 - raid1 - raid4 - raid5 - raid6 - raid10 - lvm - lvm_dynamic |
Пример:
#AUTOINSTALL[device_typevfs]=*none
Раздел на который будет установлена система (part)/ublinux и пользовательские данные(part)/ublinux-data.
Если указан второй раздел через запятую (,) то установка разделится на (part1)/ublinux (part2)/ublinux-data
Синтаксис:
AUTOINSTALL[part]=<part_1>[,<part_2>]
Где:
Значение | Описание |
---|---|
<part_n> | Раздел, возможно указать сокращённо, пример: sda2 или /dev/sda2 |
Пример:
## AUTOINSTALL[part]=sda2
## AUTOINSTALL[part]=sda1,sda2
Размер раздела для установки.
Если указано два раздела в AUTOINSTALL[parts], то возможно указать два размера через запятую (,) для первого и второго раздела.
Синтаксис:
AUTOINSTALL[part_size]=<size_1>[,<size_2>]
Где:
Значение | Описание |
---|---|
<size_n> | Размер раздела, может иметь суфиксы: M G T P |
Пример:
## AUTOINSTALL[part_size]=256G
Метка раздела.
Если указано два раздела в AUTOINSTALL[parts], то возможно указать два типа опций через запятую (,) для первого и второго раздела.
Синтаксис:
AUTOINSTALL[part_label]=<label_1>[,<label_2>]
Пример:
## AUTOINSTALL[part_label]=*ublinux
Тип файловой системы для раздела.
Если указано два раздела в AUTOINSTALL[parts], то возможно указать два типа опций через запятую (,) для первого и второго раздела.
Синтаксис:
AUTOINSTALL[part_fs_type]=<type_fs_1>,<type_fs_2>
Где:
Значение | Описание |
---|---|
<type_fs_n> | Тип виртуального устройства, доступные типы: - exfat - ext2 - ext3 - ext4 - fat16 - fat32 - riserfs - udf - xfs - zfs |
Пример:
## AUTOINSTALL[part_fs_type]=ext4
## AUTOINSTALL[part_fs_type]=ext3,ext4
Метка файловой системы.
Если указано два раздела в AUTOINSTALL[parts], то возможно указать два типа опций через запятую (,) для первого и второго раздела.
Синтаксис:
AUTOINSTALL[part_fs_label]=<label_1>[,<label_2>]
Пример:
## AUTOINSTALL[part_fs_label]=ublinux
## AUTOINSTALL[part_fs_label]=ublinux,ublinux-data
Форматировать устройство.
Если указано два раздела в AUTOINSTALL[parts], то возможно указать два типа опций через запятую (,) для первого и второго раздела.
Синтаксис:
AUTOINSTALL[part_format]=<yes_no_part1>[,<yes_no_part2>]
Где:
Значение | Описание |
---|---|
<yes_no_part1> | Форматировать устройство, имеет варианты выбора: *no|yes |
Пример:
## AUTOINSTALL[part_format]=no
## AUTOINSTALL[part_format]=no,no
Зашифрованный раздел dm-crypt + LUKS.
Если указано два раздела в AUTOINSTALL[parts], то возможно указать два типа опций через запятую (,) для первого и второго раздела.
Синтаксис:
AUTOINSTALL[part_crypt]=luks1|luks2:<password>[,luks1|luks2:<password>]
Где:
Значение | Описание | |
---|---|---|
**luks1 | luks2** | Тип шифрования, имеет выбор: luks1:<password> или luks2:<password> |
<password> | Пароль шифрованного раздела |
Пример:
## AUTOINSTALL[part_crypt]=luks2:password
## AUTOINSTALL[part_crypt]=luks2:password,luks2:password
Параметры создания SWAP.
Синтаксис:
AUTOINSTALL[swap]=*auto|yes|no
Где:
Значение | Описание |
---|---|
*auto | Не создавать отдельный раздел для SWAP, если существует, то использовать существующий, включить SWAP в динамический сжатый файл |
yes | Создать раздел для SWAP, если существует, то использовать существующий |
no | Без SWAP |
Пример:
## AUTOINSTALL[swap]=auto
Размер раздела SWAP.
Синтаксис:
AUTOINSTALL[swap_size]=ram|<number>MG
Где:
Значение | Описание |
---|---|
*ram | Размер SWAP по размеру ОЗУ |
<number>MG | Размер SWAP в M(мегабайт) G(гигабайт) |
Пример:
## AUTOINSTALL[swap_size]=ram
Поддерживаемые системой локали. Перечисляются через запятую.
Пример:
## AUTOINSTALL[locale]=en_US.UTF-8,ru_RU.UTF-8
Основная локаль системы.
Пример:
## AUTOINSTALL[lang]=ru_RU.UTF-8
Часовой пояс.
Пример:
## AUTOINSTALL[zone]=Europe/Moscow
Имя пользователя.
Пример:
## AUTOINSTALL[user_name]=superadmin
GECOS пользователя.
Пример:
## AUTOINSTALL[user_gecos]="Администратор"
Пароль пользователя.
Данный пароль станет паролем по умолчанию для остальных пользователей, которые будут добавлены в систему без пароля.
Пример:
## AUTOINSTALL[user_password]=ublinux
Пароль пользователя root.
Пример:
## AUTOINSTALL[root_password]=ublinux
Часовой пояс.
Пример:
## AUTOINSTALL[zone]=Europe/Moscow
Позволяет включить или отключить автоматический вход в учетную запись пользователя после загрузки.
Синтаксис:
## AUTOINSTALL[autologin]=*no|yes|<username>
Пример:
## AUTOINSTALL[autologin]=no
Выбор модели клавиатуры.
Пример:
## AUTOINSTALL[xkbmodel]=pc105
Выбор раскладки клавиатуры.
Пример:
## AUTOINSTALL[xkblayout]="us,ru"
Выбор комбинации клавиш для переключения раскладки клавиатуры.
Пример:
## AUTOINSTALL[xkboptions]="grp:lalt_lshift_toggle,grp_led:scroll,compose:rwin"
Выбор языка.
Пример:
## AUTOINSTALL[xkbvariant]=ru
Установка имени рабочей станции.
Синтаксис:
AUTOINSTALL[hostname]=<hostname>|auto
Где:
Значение | Описание |
---|---|
*auto | Динамически сгенерированное имя с суфиксом "ublinux-<nnnn>", где "nnnn" четыре цифры |
<hostname> | Имя хоста, по умолчанию: ublinux-install |
Пример:
## AUTOINSTALL[hostname]=auto
Установить пользовательское значение в конфигурационный файл установки.
Синтаксис:
AUTOINSTALL["<ubconfig command>"]=<value>
Где:
Значение | Описание |
---|---|
<ubconfig command> | Команда, пример: "ubconfig set [boot] GRUB_TIMEOUT" |
<value> | Значение параметра |
Пример:
#AUTOINSTALL["ubconfig set [boot] GRUB_TIMEOUT"]=3
#AUTOINSTALL["ubconfig set [boot] GRUB_DEFAULT"]="UBLinux Desktop Basic 2204 - Песочница в RAM с сохранением профиля пользователя HDD"
#AUTOINSTALL["ubconfig set [boot] GRUB_SUPERUSERS"]=superadmin
#AUTOINSTALL["ubconfig set [boot] GRUB_PASSWORD[superadmin]"]=grub.pbkdf2.sha512.10000.918F54C3C4CDE024A34FDA951FFBAD17D2B8F031A696F22038267FDAC6CF5FEA4FE800880591DBD533C95606A275F170B4F460243A083E89E231B2DAC13467D5.9B3392962D14DE34D6BCD4C559A4A4222ED9C0BF14D15A7E3772DA430513E34F2C96FE324D3FBCC4576C8DDF7B82B7AC8830195CC8886A39B525F070EC236421
Модули для установки из источника.
Синтаксис:
AUTOINSTALL[modules]=*auto|<list_modules>
Где:
Значение | Описание |
---|---|
*auto | Все модули источника установки из каталога (source)/ublinux/base (source)/ublinux/modules |
<list_modules> | Выбранные модули источника установки из каталога (source)/ublinux/ (source)/ublinux/modules |
Пример:
## AUTOINSTALL[modules]=auto
Модули для установки из архива модулей дистрибутива через интернет.
Синтаксис:
AUTOINSTALL[modules_extra]=<list_modules>
Где:
Значение | Описание |
---|---|
<list_modules> | Выбранные модули из архива модулей дистрибутива |
Сохранить лог установки.
Синтаксис:
AUTOINSTALL[log]=<list_modules>
Где:
Значение | Описание |
---|---|
yes | Использовать лог файл установки |
no | Не использовать лог файл установки |
save | Использовать лог файл установки и сохранить в установленную систему по адресу (part)/ublinux-data/ubinstall.log |
debug | Добавить в лог расширенные сообщения об ошибках |
Пример:
## AUTOINSTALL[log]=yes
Настройки сервера polipo
В настройках прокси сервера polipo можно перенаправить весь поток на другой сервер - это может быть и обычный сервер и служба tor:
#socksParentProxy="localhost:9050"
#socksProxyType=socks5
Настройки wifi карты в режиме точки доступа
#driver=nl80211
#ssid=ublinux
#country_code=RU
#hw_mode=g
#channel=11
Пароль к wpa2:
#wpa_passphrase=ublinux
Переключение в режим открытой wep сети:
#wpa=0
Принимать запросы от других компьютеров в сети:
#server_ip=any;
Адрес основного DNS сервера, откуда брать запросы:
#ip=77.88.8.8;
Перенос временных файлов КДЕ4 в отдельную папку. Убирает притормаживание главного меню в КДЕ4
#export KDEVARTMP=/mnt/livedata/ublinux-data/tmp
Если на видеокарте nvidia наблюдается эффект разрыва окон, то есть 2 варианта борьбы с этим.
Следует выбрать один из вариантов, нельзя включать сразу 2 переменные сразу.
1 вариант. Может снизить производительность в играх.
#export __GL_YIELD=USLEEP
2 вариант. Не на каждой видеокарте может сработать.
#export KWIN_TRIPLE_BUFFER=1
Отключение парковки жесткого диска на ноутбуках:
#CONTROL_HD_POWERMGMT=1