Смотрел исо. В основном из-за uird. Он работает, но есть моменты.
В папке UIRD должна быть папка saves, в ней еще две todir и homes. На эти имена настроены пункты в загрузчике.
Сам UIRD достаточно старый , во всяком случае EXPAND_ME не работает и даже не пытается.
Сделал скриптик для сборки исо с расширяющимся разделом. Сразу после dd на флешку можно юзать с уирдом. Раздел под данные должен сам расшириться при первом старте в режиме где используется раздел с UIRD.
#!/bin/bash
# ---------------------------------------------------
# Script to create hibryd bootable iso
# author: Betkher A. <a.betkher@rosalinux.ru>
# ---------------------------------------------------
CDLABEL="`date "+%y%m%d"`"
[ $1 ] && CDLABEL="$1"
rm -f efi.img data.img 2>/dev/null
dd if=/dev/zero of=./data.img bs=1 count=0 seek=100M
mkfs.ext4 ./data.img
mkdir ./dataimg
mount ./data.img ./dataimg
cp ./UIRD ./dataimg/ -fax
: > ./dataimg/EXPAND_ME
umount ./dataimg/
rmdir ./dataimg/
GRAFT_POINTS=$(ls -1 |egrep -v '\.img|UIRD' |while read a ; do
echo -n "$a=$a "
done)
ISONAME=$(readlink -f ./$CDLABEL.iso)
d="boot/grub/iso"
xorriso_opt="-no-emul-boot
-boot-load-size 4
-hide boot.catalog
-boot-info-table \
-b $d/grub2.eltorito
--grub2-mbr $d/boot_hybrid.img \
-boot-info-table
--grub2-boot-info $d/grub2.eltorito \
-append_partition 2 0xef $d/efi.img \
-append_partition 3 0x83 data.img \
-eltorito-alt-boot -e $d/efi.img \
-no-emul-boot"
xorrisofs -o "$ISONAME" -v -J -R -D -A "$CDLABEL" -V "$CDLABEL" --graft-points $GRAFT_POINTS $xorriso_opt
rm -f efi.img
rm -f data.img
Если чего еще по UIRD надо пишите. Тут или в чат в телеге, его тоже смотрю.
Гм. Скопировал из исошника папок не было.
live@roll2207 /mnt/+tmp+iso+lfd11mx-test1-x86_64.iso % ls UIRD/saves
homes todir toxzm
Если речь об этом изошнике.
У меня как обычно не сложилось взял вот эту версию https://file.puppyrus.org/users/pra64/iso/lfd11mx-test2-x86_64.iso , сразу поробовал скрипт для создания модуля apt2pfs , выскочило предупреждение о том что необходимо установить компонент(имя компонента выписал его себе но комп завис, пишу по памяти) установил его, перезапустил скрипт, появился GUI , в окне для записи имени программы написалл gimp, скрипт продолжил своё выполнение в итоге выдал вот это,
mkdir: невозможно создать каталог «/live/00-core-d11m-220905.pfs»: Нет такого файла или каталога
mkdir: невозможно создать каталог «/live/00-minios-d11m-220905.pfs»: Нет такого файла или каталога
mkdir: невозможно создать каталог «/live/000-kernel-5.16.0-pf1-mg2_64.pfs»: Нет такого файла или каталога
mkdir: невозможно создать каталог «/live/03-gui-base-d11m-220905.pfs»: Нет такого файла или каталога
mkdir: невозможно создать каталог «/live/04-xfce-desktop-d11m-220905.pfs»: Нет такого файла или каталога
mkdir: невозможно создать каталог «/live/089-upd-zz-lfd-sf05.pfs»: Нет такого файла или каталога
mkdir: невозможно создать каталог «/live/089-upd-zz-sfsget-d11m-sf05.pfs»: Нет такого файла или каталога
mkdir: невозможно создать каталог «/live/089-upd-zzz-d11m-sf02.pfs»: Нет такого файла или каталога
mkdir: невозможно создать каталог «/live/05-xfce-apps-d11m-sf01.pfs»: Нет такого файла или каталога
mkdir: невозможно создать каталог «/live/083-chrome-profile-sf28.pfs»: Нет такого файла или каталога
ls: невозможно получить доступ к '/live/*/var/lib/dpkg': Нет такого файла или каталога
ls: невозможно получить доступ к '/live/*/var/lib/dpkg': Нет такого файла или каталога
ls: невозможно получить доступ к '/live/*/var/lib/dpkg': Нет такого файла или каталога
ls: невозможно получить доступ к '/live/*': Нет такого файла или каталога
Mount bind the main module, prepare the chroot.
Sorry, something went wrong, exiting...
Press any key to close . . .
модуль не сделал
live@minios:~/portapps/pfs-utils/pluma$ sudo chroot2pfs -o ModuleDIR --flist /tmp/module.list --command apt install pluma
Using: chroot
aufs number: 1
grep: /tmp/module.list: No such file or directory
chroot: failed to run command ‘env’: No such file or directory
/usr/local/bin/mkpfs: 370: [: mkpfs: unexpected operator
/run/bundles2/changes1
Please wait...
umount: : no mount point specified.
delaufs 1
/home/live/portapps/pfs-utils/pluma/ModuleDIR
live@minios:~/portapps/pfs-utils/pluma$ epms aufs
$ apt-cache search -- aufs | grep -E -i --color -- "(aufs)"
live@minios:~/portapps/pfs-utils/pluma$
запускал на версии minios прошлого года (bullseye), то есть чистая Minios, завтра день миграции на новую версию и потому как раз можно по мучать систему экспериментами
К сожалению так и не осилил прикручивание pfs-utils, и причины насколько я понял в конфликте способа монтирования модулей, в pfs-utils ориентировано всё на aufs , а в minios оверлей? В общем стал использовать скрипт который использует штатный предустановленый способ горячего подключения отключения модулей ,minios-bundle, которых можно наделать с помощью тоже штатной утилиты apt2sb.
скрипт ищет в каталоге ~/modules модули, выводит их список в меню peco , пользователь выбирает модуль для активации модуля, жмет ввод, и модуль активируется, дезактивация модуля происходит автоматом , после перезагрузки, для выхода из программы -- esc.
#!/bin/bash
#этот скрипт ищет модули в каталоге $HOME/modules выводит их список в peco
#выбираем строку с модулем, жмем ввод
#выход из программы по esq
while true; do
MODULE=$(ls $HOME/modules | peco --prompt "Выберите модуль для активации:")
if [ "$MODULE" = "" ]; then
echo "Выход из скрипта."
break
fi
if [ -n "$MODULE" ]; then
sudo /usr/bin/minios-bundle activate ~/modules/$MODULE
echo "Модуль активирован: $MODULE"
sudo glib-compile-schemas /usr/share/glib-2.0/schemas/
sleep 3
else
echo "Отменено пользователем."
fi
done
в minios оверлей?
/lib/livekitlib, стр. 246-259 init_union() {
debug_log "init_union" "$*"
mkdir -p "$1"
mkdir -p "$2"
if aufs_is_supported >/dev/null; then
echo_green_star
echo "Setting up empty union using aufs"
mount -t aufs -o xino="/.xino",trunc_xino,br="$1" aufs "$2"
else
echo_green_star
echo "Setting up union using overlayfs"
mkdir -p "$1/changes"
mkdir -p "$1/workdir"
mount -t overlay overlay -o lowerdir=$(find "$3" -mindepth 1 -maxdepth 1 | sortmod | tac | tr '\n' ':' | sed -r 's/:$//'),upperdir=$1/changes,workdir=$1/workdir $2
fi
}
В minios автовыбор: нет aufs -> используется overlayfs.
Впечатление навскидку: Porteus, только с большими наворотами.