Сайт | Скачать | Видео | Wiki

Автор Тема: Initrd UIRD  (Прочитано 242565 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Re:Initrd UIRD
« Ответ #150 : 04 Март 2015, 11:31:39 »
Да. Я сделал такой uird. Там есть над чем поработать. iso с пра сейчас делаю. Про /optional по итогу и  написал
По той же ссылке menu.lst с проверенными мной pra и юбунту
Для пра (в сегодняшнем его виде) uird не особо нужен. В uird надо бороться за универсальность (т.е. под любой дистр и ядро)

Оффлайн Zay

  • Почетный участник
  • Ветеран
  • *
  • Сообщений: 1536
  • Репутация: +25/-0
Re:Initrd UIRD
« Ответ #151 : 04 Март 2015, 11:46:13 »
Да. Я сделал такой uird. Там есть над чем поработать.
1. Выкинул сетевую загрузку
2. Заменил много утилит на busybox
3. Убрал либы ядра (для спецядер не нужны) Для остальных - удобнее делать слоеный initrd
4. Добавил в 167 строку uird-init : clear (убрал крякозябры)
5. Убрал root=uird: в /etc/cmdline.d/01-default.conf

Тут слишком много ручных изменений, универсальности никакой.

Речь шла об оригинальном UIRD, который должен быть одинаковым для всех (за исключением [наличия] модулей).

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Re:Initrd UIRD
« Ответ #152 : 04 Март 2015, 11:53:47 »
Изначально тема была "uird для pra" - под это я и точил
Совместимость не потеряна в моем menu.lst можно юзать родной uird (c учетом 5)

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Re:Initrd UIRD
« Ответ #153 : 04 Март 2015, 15:10:47 »
http://magos.sibsau.ru/repository/netlive/multi/MagOS/kernel/i586/uird.magos.cpio.xz
Не могу решить задачу:
Код
optional/o1.pfs
optional/o2.pfs
optional/o3.pfs
Как загрузить только o2.pfs
Конструкции:
Код
uird.from=optional/o2.pfs
uird.noload=!optional/o2.pfs
не помогли
В портеус решается : load=o2

root=uird: по прежнему необходим и это напрягает
« Последнее редактирование: 04 Март 2015, 15:18:33 от sfs »

Оффлайн neobht

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 1031
  • Репутация: +15/-0
  • Автор темы
Re:Initrd UIRD
« Ответ #154 : 04 Март 2015, 15:56:47 »
uird сделан так, что можно собирать без модулей ядра.
root=uird: - не нужно. В uird я убрал привязку к uird:, но root=blabla требует dracut. То есть неважно, что писать.

Вот так:
uird.from=/optional
uird.load=*o2*

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Re:Initrd UIRD
« Ответ #155 : 04 Март 2015, 16:09:26 »
А dracut от root никак не отучить? Мне прописка в конфиг помогала
Я не написал про еще /base/;/modules/ - думал догадаетесь. Из них надо загрузить все
Код
uird.from=/optional;/base/;/modules/
uird.load=*o2*
грузит только один  o2  :'(
uird.load=/base/*;*o2* - без улучшений
« Последнее редактирование: 04 Март 2015, 16:14:46 от sfs »

Оффлайн for_wov

  • Ветеран
  • *****
  • Сообщений: 464
  • Репутация: +13/-0
  • TRUE
Re:Initrd UIRD
« Ответ #156 : 04 Март 2015, 17:03:14 »
Антон (neobht) как вы видите применение uird на разных модульных дистрах (желательно схематически) к какому варианту загрузки (зависимо ли от загрузчика?) хотели бы прийти? Не буду стесняться повторять что все познается в сравнении. Предполагаю что опции загрузки(зависимо от вариантов использования) у каждого дистра будут свои. Могли бы продемонстрировать отличия скажем для slax/magos/porteus и pra в чисто их специфических вариантах загрузки через uird. Есть ли отличия в загрузке(должны ли быть) модульных дистров. Или вы хотите привести все в унифицированный вид (для чего то же алиасы дорабатывали)?
Опыт увеличивает нашу мудрость, но не уменьшает нашей глупости.

Оффлайн neobht

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 1031
  • Репутация: +15/-0
  • Автор темы
Re:Initrd UIRD
« Ответ #157 : 04 Март 2015, 17:53:40 »
А dracut от root никак не отучить? Мне прописка в конфиг помогала
Я не написал про еще /base/;/modules/ - думал догадаетесь. Из них надо загрузить все
Код
uird.from=/optional;/base/;/modules/
uird.load=*o2*
грузит только один  o2  :'(
uird.load=/base/*;*o2* - без улучшений
Так должно работать. Я не написал, потому что это подразумевалось само собой про base,modules.

Попробуйте */base/*


Оффлайн neobht

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 1031
  • Репутация: +15/-0
  • Автор темы
Re:Initrd UIRD
« Ответ #158 : 04 Март 2015, 18:05:41 »
Опции загрузки в целом единообразны уже сейчас. Примеры можно увидеть по ссылке, которую уже приводил. В качестве загрузчика вполне устраивает вариант grub2 отвязанный от дистрибутива, например, как я сделал с burg.

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

В magos же мы ориентируемся принципом - не исключив гибкости для гуру, сделать пользователю максимально простым управление - в частности у нас есть шаблонные схемы для единого конфига MagOS.ini, с помощью которых элементарно получаются различные северные исполнения в домашних условиях - точка доступа для локальной сети wifi, FTP,smb файлохранилище, и тд.

Оффлайн neobht

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 1031
  • Репутация: +15/-0
  • Автор темы
Re:Initrd UIRD
« Ответ #159 : 04 Март 2015, 18:13:37 »
Отучить можно все, что угодно, но теряется совместимость с апстримом. Поэтому я жестко прописываю это при сборке и указывать уже не надо.

Вообще, по логике в dracut сделано все настолько правильно, что вызывает у меня профессиональную радость (по работе приходится работать со студентами и проверять их творчество грызения гранита науки) от хороших идей, которые в нем заложены.
root= - логичное требование.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Re:Initrd UIRD
« Ответ #160 : 04 Март 2015, 18:19:19 »
Попробуйте */base/*
Без улучшений  :'(
Зачем было менять логику загрузки модулей портеус? Там все просто и логично
Если аналог load= портеуса невоспроизводим в uird - это сводит к нулю все достоинства. И алиасы тогда бесполезны

Даже если бы сработало
uird.from=/optional;/base/;/modules/ uird.load=*o2* и load=o2 - результат один (и то пока его нет), но зачем так усложнено...

Код
kernel vmlinuz root=uird uird.from=/iso/myobraz.iso;/my/my.sfs uird.load=* uird.ro=*/filesystem.squash
initrd uird.magos.cpio.xz
/my/my.sfs - похоже тоже не работает

Оффлайн neobht

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 1031
  • Репутация: +15/-0
  • Автор темы
Re:Initrd UIRD
« Ответ #161 : 04 Март 2015, 18:30:21 »
Вы неправильно понимаете опцию from.
Логику я менял потому что base, modules, optional - это частности. В uird нет понятия спец директорий, в нем все директории, которые хранят модули перечисляются во from. Не модули перечисляются, а место хранения модулей. На этом заканчивается задача параметра from.
Load, noload - вот они определяют, что грузить или не грузить. Параметры работают одинаково для всех источников указанных во from. То есть не тот изворот, что в портеусе, а ранее был в Linux-live, когда load действует только для optional.

В вашем случае скорее всего надо еще указать uird.ro=*.sfs.

Приведите полный текст параметров. То о чем я говорю - это так должно быть по архитектуре. Возможно, где-то есть ошибка, тогда я ее найду и исправлю. Но мне пока не видна вся картина вашего расклада. Правильно ли я понял, что вы грузите Ubuntu?

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Re:Initrd UIRD
« Ответ #162 : 04 Март 2015, 18:44:22 »
http://www.puppyrus.org/~melvik/puppyrus/ftp/puppyrus/puppyrus-a/pra03/iso/test/pra03-150304init-test.iso
Хотелось бы повторить на uird то, что там сделано на портеусе (и это далеко не высший пилотаж его конфигурирования - только load=)
Я уже 3й год насаждаю портеус и то не все разобрались.
uird пока неподъемен. То что load= я не осилил - очень огорчило. Очень сложно. Доки нет. Примеров нет. В код лезть при живом авторе не хочется
Давайте на примере этого исо и наделаем примеров конфигов
Помогайте
« Последнее редактирование: 04 Март 2015, 18:47:10 от sfs »

Оффлайн for_wov

  • Ветеран
  • *****
  • Сообщений: 464
  • Репутация: +13/-0
  • TRUE
Re:Initrd UIRD
« Ответ #163 : 04 Март 2015, 18:46:21 »
изходя из этого:
Перечислять модули не нужно. Это маска фильтра для пути. Можно писать вот так: load=/base/editors/*/testing/*
Опциями должен регулироваться персонализированный набор ПО - загрузка для программистов, для дизайнеров, архитекторов, музыкантов и тд.
понятно что для вас решение прерсонализированного набора ПО должно решаться на уровне структуры (каталогов) вот почему для вас так важен вопрос тематического наполнения софта.
Для вас размер не имеет значения и вы выбираете все модули "скопом" по маске в ходу лишь выбирая что нужно в конкретный момент.
Для паппи же принципиально важно выбирать конкрентые модули (возможно списком) не загружая скопом всего. Минимальный запуск и подключение/отключение на ходу (возможно модульными группами если к этому дойдем)
Избирательность - вот пожалуй слово, которым можно охарактеризовать паппи.
« Последнее редактирование: 04 Март 2015, 18:57:01 от for_wov »
Опыт увеличивает нашу мудрость, но не уменьшает нашей глупости.

Оффлайн neobht

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 1031
  • Репутация: +15/-0
  • Автор темы
Re:Initrd UIRD
« Ответ #164 : 04 Март 2015, 18:56:40 »
Что сложно?
Перечисляете все необходимые директории с модулями в параметре from
Система ищет все файлы в этих директориях по маске load и потом исключает из них файлы по маске noload. Из этих файлов все файлы удовлетворяющие маске ro монтирует в режиме ro.

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