Разработки проекта PuppyRus > Initrd UIRD

Поддержка монтирования с 9p (qemu) для источников

(1/3) > >>

betcher:
Новая фишечка.
https://forum.magos-linux.ru/t/podderzhka-montirovaniya-s-9p-dlya-istochnikov/219

krasnyh:

--- Цитата ---Это позволит загрузить, к примеру магос, с qemu прямо из распакованного архива. Не создавая исо и не устанавливая на флешку.
--- Конец цитаты ---
Помнится, я грузил в Qemu сборки PRA и MagOS, распакованные на разделе HDD. Даже умудрялся обновлять MagOS встроенными средствами из вирта. )
Правда, потом мне приходилось чинить файловую систему с fsck (писал об этом здесь). :) В итоге, уже давно запускаю только iso или с флешки.

Теперь же, получается, можно вернуться к той первоначальной 'порочной' ) практике? 

betcher:

--- Цитата: krasnyh от 23 Январь 2023, 20:45:40 ---Правда, потом мне приходилось чинить файловую систему с fsck
--- Конец цитаты ---
Тоже на эти грабли наступал. Грузил виртуалбоксом ту же систему с которой загружена ОС хоста. Для этого был в меню пункт с чистым режимом, с монтированием раздела RO. Но однажды случайно выбрал не тот пункт...

krasnyh:

--- Цитата: betcher от 23 Январь 2023, 19:59:57 ---Новая фишечка.
--- Конец цитаты ---

--- Цитата ---Добавил в UIRD возможность использовать в качестве источников монтирования с 9p. Эта та штука, которой делают общие папки в qemu. Указывать нужно аналогично папкам по сети, только с 9p.
То есть например:

uird.mounts=9p://mount_tag::MNT=/mnt/9p

Можно использовать для автомонтирования общих папок при работе с qemu, но затея была не в этом, а в загрузке с такого источника. Это позволит загрузить, к примеру магос, с qemu прямо из распакованного архива. Не создавая исо и не устанавливая на флешку. Параметры кему при запуске в папке в которую распакован архив с магос приблизительно такие:

--- Код ---
qemu-system-x86_64 \
    -cpu max \
    -vga qxl \
    -machine q35,accel=kvm:tcg \
    -name "MagOS" \
    -m 2G \
    -rtc base=localtime \
    -kernel ./MagOS/vmlinuz \
    -initrd ./MagOS/uird.magos.cpio.xz \
    -virtfs local,path=$(realpath ./),mount_tag=MagOS,security_model=mapped,id=MagOS \
    -append "uird.from=9p://MagOS,/MagOS"

--- Конец кода ---
В барии аналогичный скрипт будет добавлен в архив со сборкой.
--- Конец цитаты ---

Интересно, как различать в скрипте:
- MagOS как название вирт. машины
- MagOS как название общей расшаренной папки
- MagOS как название рабочей папки с модулями (/base; /modules)


А есть успешный запуск в qemu host-системы этим способом? Естественно, скопированной в отдельную папку. А то я попробовал, пишет "has already been processed' при загрузке uird, затем уходит в цикл. )
Еще пишет, что пытается примонтровать папку в /memory/data/from/0, но там типа занято ("failed: Device or resourse busy").

betcher:

--- Цитата: krasnyh от 02 Февраль 2023, 16:16:02 ---Интересно, как различать в скрипте:
--- Конец цитаты ---
-name "MagOS"   - название машины
path=$(realpath ./) - путь к расшаренной папке
mount_tag=MagOS - тег который указывается как источник 9p://mount_tag
id=MagOS - не знаю зачем надо ))
-append "uird.from=9p://MagOS,/MagOS" - тут 9p://MagOS это папка расшаренная в гостя по 9p, а /MagOS это подкаталог в расшаренной папке где модули искать.

Можно добавлять uird.mounts=9p://mount_tag тогда в uird.from ничего менять не нужно.


--- Цитата: krasnyh от 02 Февраль 2023, 16:16:02 ---А есть успешный запуск в qemu host-системы этим способом?
--- Конец цитаты ---
Конечно. В коммерческих версиях бария будет включен скрипт, который позволяет устанавливать на флешку из qemu где барий загружен из распакованного архива таким способом.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Перейти к полной версии