Научили UIRD создавать образы (img файлы)

UIRD теперь умеет самостоятельно создавать образы для хомяков и профилей. Единственное условие, что задавать в uird.changes или uird.home нужно с путем или с куском пути иначе UIRD не знает где ваш файл создавать. По идее в будущем можно будет выкинуть готовые профили из архива со сборкой MagOS.
Если в cmdline у Вас uird.home=/MagOS-Data/home.img сперва UIRD попытается найти этот файл, в случае неудачи предложит создать. Спросит размер и FS. Соответственно при повторной загрузке файл будет найден и вопросов не последует.
Параллельно реализована идея stea.61, которая заключается в использовании таких образов в tmpfs, интересна мысль тем, что можно форматировать в btrfs и монтировать со сжатием. Получается что-то вроде uird.zram только отдельно для хомяка и для changes. Можно просто указать uird.home=/memory/home.img::discard+compress=lzo и это сработает, но будет при загрузке спрашивать размер и ФС, что не удобно. Как красиво передать эти параметры не придумалось поэтому пока небольшой костылик :slight_smile: uird.home=/memory/btrfs.2048.img::discard+compress=lzo то есть размер и фс передаются в имени файла. FS.SIZE.bla-bla.img
Для uird.changes все также, но не забывайте об uird.mode=changes.

cat /proc/mounts |grep changes
/dev/loop0 /memory/changes btrfs rw,relatime,compress=lzo,discard,space_cache,subvolid=5,subvol=/ 0 0

P.S. В последнюю сборку МагОС (20190323) эти изменения не попали.

2 лайка

Добавлена возможность создания и криптоконтейнеров тоже. Делается ровно также только расширение для файла нужно указать - .enc.
Добавлена возможность подключения (и создания) криптоконтейнеров по ключу. Ключ указывается также как для LUKS подпараметром KEY=
Изменена логика работы в случае если файл (.img или .enc) указан без пути и не найден. В этом случае будет предложено его создать в корне последнего источника. Для магос это /MagOS-Data. Аналогично с ключем. Такое решение позволяет перенести созданный ключ ы корень любого раздела без изменений в menu.lst.
Например добавляем в cmdline ядра:
uird.changes=crypto.enc::FS=ext4::SIZE=2048::KEY=crypto.key::FORCE=yes
После первой загрузки у вас в /MagOS-Data появятся два файла:
crypto.enc - сам контейнер
crypto.key - файл-ключ
Переносите ключ в корень флешки и без этой флешки теперь систему с вашими файлами не загрузить, только в чистый режим.
С uird.home - работает аналогично. А с from, mounts, ro и т.д. контейнер нужно как и прежде создавать заранее.

2 лайка