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

Автор Тема: uird.scan=legacy (загрузка установленного full линукса)  (Прочитано 13536 раз)

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

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Экспериментирую на pra-roll-full по рецепту
В качестве эталона использовал
http://magos.sibsau.ru/repository/netlive/2014.64/MagOS/uird.magos.cpio.xz
с http://magos.sibsau.ru/repository/netlive/2014.64/MagOS/vmlinuz
и http://magos.sibsau.ru/repository/netlive/2014.64/MagOS/base/00-kernel.xzm (перепакованный под арч)
Работает (находит фулл установку и загружает ее в ro)
Ищет достаточно долго. Можно как-то указать раздел? А из папки на разделе не загрузить?

Опакетил uird. Наладил сборку инитрд в арче. Дальше эксперименты с одинаковым результатом на родном и собранном в арче uird.initrd
Меняю ядро на pf из ПРА - норм
Меняю ядро на арч - не работает (ожидаемо, т.к. нет aufs)
Меняю ядро на manjaro - не находит (aufs есть модулем, как в ядре магос). Добавляю в параметры ядра debug - заработало... ??? Что-то можно сделать? Хотелось бы это ядро (есть полностью готовые пакеты, новее магос). Это же ядро нормально работало в составе последнего pra-roll-frugal

Всегда при uird.scan=legacy вылезает не мешающая ошибка dirname (см. скрин).

« Последнее редактирование: 14 Июнь 2017, 12:53:31 от sfs »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
В арче есть возможность запускать систему из папки https://aur.archlinux.org/packages/mkinitcpio-loop-subdir/
Как в uird загрузить систему не из корня?

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Опакетил uird. Наладил сборку инитрд в арче
Похоже зря. И раньше в итоге приходилось перепаковывать (подгонять либы ядра) initrd-iurd из магос и теперь - собранный в арче - проблемный (работает не все, вылетают доп. ошибки)
Как ни крутил - ядро от манджаро работает только с debug (что отдельная загадка) и только с собранным в магос initrd-iurd
С пра ядром все ок - вероятно т.к. основное в него вкомпилено монолитно

Короче пока проблемно с универсальностью uird
Оптимально юзать только initrd + kernel из магос. :(

Оффлайн Pro

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
Debug возможно даёт больше информации в логи или dmesg, а эти данные используются при загрузке.
Нечто подобное делаем  в Puppy ядре накладывая патч usb-storage чтобы в логах были строки об окончании сканирования USB. Потом эти строки ищутся и init делает что-то нужное
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Возможно, но в скрипты uird при живых авторах не хочется лезть
Они особой простотой не отличаются.

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
О сколько вопросов. Всех ответов не знаю, напишу Антону, чтоб тему глянул.
По uird.scan=legacy,  uird ищет раздел с линуксом и сам себе создает конфиг для его загрузки. То есть это не для постоянной работы, а чтоб быстро запустить не разбираясь с конфигурацией uird. Если линуксов несколько установлено в системе можно указать номер uird.scan=legasy::2 это в порядке поиска. Первый найденный, второй и т.д.
Для постоянной работы нужно прописать параметры uird.from, uird.ro и т.д. Подсмотреть их можно после загрузки с uird.scan=legacy в /etc/initvars

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Скрипты там не сложные. Там по сути один скрипт и либа с функциями к нему, вот она довольно объемная получилась :)
Из папки загрузить думаю можно, если правильно подобрать параметры, uird.scan не найдет сам.

Вот наша тема по такой загрузке.
http://www.magos-linux.ru/index.php?option=com_agora&task=topic&id=1005&Itemid=55
« Последнее редактирование: 16 Июнь 2017, 03:39:41 от betcher »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Пока добился желаемого арч средствами

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
В каком окружении нужно собрать uird? Есть исошка? Я бы попробовал.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
В каком окружении нужно собрать uird?
В любом арче
Есть исошка?
http://file.puppyrus.org/users/pra64/iso/pra64roll-170130.iso - наиболее близок к арчу
Я бы попробовал.
Из подводных камней - busybox надо из magos
А еще в каких-нибудь дистрах пробовали собирать uird?
Если получится нормально - выложу свои арч-пакеты. Сравним

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Наконец нашел пару часов поразбираться.
Итого. pra6407-1707light
доустанавливаем пакманом:
git
make
pkg-config
kmod
gcc
glibc

Далее:
rm -f /usr/bin/busybox
pacman -S busybox

Не хватает несколько бинарников не особо важных fsck. ___ для разных фс, rsync еще что то. Я только rsync устанавливал, можно упустить пока.
Далее:
git clone --recursive https://github.com/neobht/uird.git
cd uird
./make_dracut.sh
cd dracut
make install
cd ..

Правим конфиг uird:
В строку uirs.syscp=
добавляем через ";"
/usr/bin/busybox::/usr/bin/
Заменяем в этой же строке пути с  /usr/lib/magos/scripts на /usr/bin
uird.from заменяем на это
uird.from=/pra64

Ну и наконец:
./make_uird_magos.sh

Получается вот такой uird: https://yadi.sk/d/3aaufuhC3LYNy3

Pra в виртуалке загрузился без видимых ошибок.

title ▒▒ PRA uird чистый
set d=pra64
kernel /%d%/vmlinuz-4.11.6-pf5_64 dir=%d% 
initrd /%d%/uird.magos.cpio.xz

Надеюсь ничего не перепутал :)

P.S. еще один пакет пропустил, точно не помню название типа linux-api-headers. Не записал почему-то.
« Последнее редактирование: 30 Июль 2017, 17:10:49 от betcher »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Итого. pra6407-1707light
Лучше на http://file.puppyrus.org/users/pra64/iso/pra-roll-170604-test2.iso и с manjaro или др. НЕ спец. ядром
Я опакетил uird под арч. Но по итогу (т.к. выявил проблемы) не выкладывал. Не удалять пока?

В итоге я сделал запуск FULL из папки с сохраненкой. Так и не понял - в uird такое возможно?
Жаль что пришлось уйти от uird. Совместная работа по pfs удалась :(

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Задача загрузить из папки, а не из корня как uird=legacy? Так? Я пока не совсем понимаю смысл такой загрузки. Обрисуйте подробнее задачу.
А есть такое iso где сразу нужное ядро и модули ядра? Чтоб сразу делать то что надо.
Сейчас попытаюсь немного переписать скрипт сборки uird. Чтоб проверял наличие бинарников и модулей ядра перед сборкой. А то не всегда понятно какой модуль попал в uird, а какой нет.
Вот на пра потом и проверю :)

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Задача загрузить из папки, а не из корня как uird=legacy? Так?
Да. Куча дистров на одном разделе - как у фругала
Сохраненка - поэкспериментировать на фул установке без ущерба
А есть такое iso где сразу нужное ядро и модули ядра?
да http://file.puppyrus.org/users/pra64/iso/pra-roll-170604-test2.iso - там же и мой альтернативный uird инитрд
Вот на пра потом и проверю
Эту проблему я не решил
Меняю ядро на manjaro - не находит (aufs есть модулем, как в ядре магос). Добавляю в параметры ядра debug - заработало...

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Ок. Понятно. Быстро не обещаю, со временем как обычно швах.