Barium:Rosa ini
ROSA.ini
Конфигурационный файл для загружаемой системы задается параметром UIRD - uird.config=Имя.ini, для Бария это Rosa.ini. Поиск файла осуществляется в источниках от последнего к первому до совпадения. Это позволяет иметь разные конфигурационные файлы для отличающихся режимов загрузки. В Барии файлов Rosa.ini - два. ROSA-SYSTEM/Rosa.ini и ROSA-DATA/Rosa.ini. Второй используется для стандартных режимов загрузки, первый только для безопасного режима, когда ROSA-DATA не подключается совсем.
Обработку ini UIRD осуществляет в момент когда rootfs уже собран. Текущим каталогом в момент запуска обработки является корень собранной sysroot, это важно для установки путей в скриптах, обычно просто убираем начальный слэш.
Файл поделен на секции, каждая секция описывает действия над одним файлом. Имя файла задается в квадратных скобках. Если файл отсутствовал он будет создан.
[/etc/ROSA-RW/config]
После скобки можно задать права в формате chmod
[/path/filename]a+x
Если это скрипт и вы хотите здесь же его выполнить, то дальше, также в квадратных скобках нужно задать способ которым вы хотите это сделать. Варианта три:
[/path/filename]a+x [/bin/bash/] запустит с bash [/path/filename]a+x [.] выполнить как часть uird-init [/path/filename]a+x [chroot . ] сделать chroot в sysroot и выполнить там
Дальше идут строки, которые добавляются в файл. Если это скрипт и он находится во временном каталоге, например:
[ /tmp/myscript ]a+x [.]
Можно просто писать строки как бы вы писали их в этот скрипт, если файл существующий и вы вносите в него изменения, то есть несколько ключевых моментов.
- Изменения значения переменной:
Параметр=значение
Меняет параметр в файле на нужное значение. Если параметра нет, строка будет добавлена в конец файла. Это, пожалуй, основной кейс использования ini.
- Добавить строку в файл, если такой строки в нем еще нет, это важно чтобы избежать накопления одинаковых строк в режимах с сохранением.
+строка
- Добавить строку без проверки
|строка
- Удалить строку
-строка -.* - очистит весь файл
Примеры:
Секция, которая запускает преинит скрипты Бария. Если убрать эту секцию преинит скрипты не будут запущены
[/usr/lib/rosa-rw/rc.d/rc.preinit]a+x [/bin/bash] +true
Части секций с основными параметрами настройки Бария, остальное смотрите в сборке
[/etc/ROSA-RW/config] # Хэш пароля для пользователя # Получить хэш можно: barium b-lib getHash пароль DEFAULTPASSWD='$6$gOeGyqCj$mqD04gwHbD1dICacthmQmxN1/02qxwFVILvm/uyHLxkXnTEEqMOqzYr/ehIuZ1JFA7KyPhggBjs5y4wv5M3Tt/' # Хеш пароля для пользователя root DEFAULTROOTPASSWD='$6$gOeGyqCj$mqD04gwHbD1dICacthmQmxN1/02qxwFVILvm/uyHLxkXnTEEqMOqzYr/ehIuZ1JFA7KyPhggBjs5y4wv5M3Tt/' # Имя пользователя по умолчанию (стандартно rosa) DEFAULTUSER=betcher # Дополнительные данные пользователя DEFAULTGECOS='Александр Михайлович,+79039501172' # User for X autostarting # Пользователь для автовхода (none отключает автовход) AUTOLOGINUSER=betcher # Groups for users # Группы, в которых будут состоять пользователи USERGROUPS=audio,video,usb,wheel
#Автообновление системы AUTOUPDATE=auto
#Алгоритм сжатия модулей по умолчанию #MKSQFS_OPTS="-b 512K -comp xz" #Алгоритм сжатия, используемый для сохранения изменений в модуль MKSQFS_FASTALG="-b 512K -comp lz4"
# [/etc/sysconfig/clock] # UTC=true # ZONE=Asia/Krasnoyarsk # ARC=false
# Настройки сервера ssh # Дополнительно нужно открыть порт или подсеть в настройках iptables # А также добавить sshd в SERVICESSTART=sshd # [/etc/ssh/sshd_config] #Port 22 #ListenAddress 0.0.0.0 #PermitRootLogin no #MaxAuthTries 6 #AllowUsers user
# Таблетка от жадности для сотовых операторов [/etc/sysctl.d/rosa.conf] net.ipv4.ip_default_ttl=65
Редактор ROSA.ini
Начиная с мартовских версий 2023 года в сборках доступна графическая утилита для редактирования ROSA.ini. Можно запустить из меню или в консоли:
barium iniedit
Все введенные значения проходят простейшую валидацию (лишние пробелы, не ascii символы и т.д.), пароль автоматически заменяется хэшем. Позволяет использовать в качестве основы для редактирования как текущий ROSA.ini так и файл в его дефолтном виде.