pfs-utils. Утилиты для работы с модулями squashfs. Версия 4mkpfs
Использование:
mkpfs - создаст .pfs из текущего каталога
mkpfs /catalog - создаст .pfs из каталога «/catalog».
mkpfs -d /catalog - создаст составной.pfs из каталогов внутри «/catalog».
mkpfs -m /catalog - создаст составной.pfs из .pfs внутри «/catalog». Вложенные в «/catalog» каталоги не просматриваются.
mkpfs /path/1.pfs /path2/2.pfs /path3/3.pfs -o contaner.pfs - создаст составной.pfs из перечисленных с именем contaner.pfs
pfsextract
Составной модуль разбирает (извлекает отдельные pfs из составного модуля .pfs).
Не составной - распаковывает
Зачем нужны составные модули? Сейчас уже не скажу определенно, более того, в своей сборке не использую (кроме тех, что беру уже готовыми из iso).
Но по началу казалось что это что-то сверхудобное и нужное, типа если все модули состоят из подмодулей, то можно отцеплять неиспользуемое, комбинируя сборку под свой вкус или пересобирать отдельный модуль на новую версию, а затем опять цеплять к общему модулю.
(Плюс там еще и важный аспект использования памяти. Подсчитано было, что на каждый отдельный модуль расходуется около 4mb ram и экономичней сделать один сложносоставной модуль, чем, например, 100 отдельных.)
А по факту, мне проще собирать монолитный модуль со своими приложениями по списку пакетов, командой
"sudo pacman2pfs $(cat мои_пакеты.txt)"UPD. Но sfs активно использует составные модули:
live@roll2110 ..ar21.10-x86_64-04.iso/prar2110/modules % for i in *.pfs ; do print $i && pfsinfo $i && echo ' ' ; done
030-qt5-noicu-5.15.2-2110-sf02.pfs
070-prar-full-2110-sf03.pfs
btrfs-progs-5.14.1-1-x86_64
efibootmgr-17-2
gptfdisk-1.0.8-1
mkinitcpio-rootaufs2-2021.12-10-any
mkinitcpio-setfont-2018.12-15-any
uird-busybox-r631.af65409-1-x86_64
uird-dracut-r631.af65409-1-x86_64
uird-r631.af65409-1-any
083-chrome-profile-sf23.pfs
celluloid-0.21-2110-sf03.pfs
celluloid-0.21-2110-sf01
mpv-1_0.34.0-2-x86_64
z-mpv
connman-1.40-2110-sf03.pfs
cmst-2020.11.01-1-x86_64
connman-1.40-1
connman_gtk3-p-1.1.1_64-sf02
z-connm
evince-gtk3-p-3.26.0_64-sf06.pfs
google-chrome-gtk3-p-97.0.4692.71_64-au01.pfs
gparted-1.3.1-2110-sf01.pfs
gthumb-gtk3-p-3.10.0_64-sf01.pfs
gthumb-light-p-3.10.0-1-x86_64
sfs-get-dep-gtk3-2018.01-02
linux-firmware-middle-pt-2201_any-sf01.pfs
mesa-driver-2110_64-sf01.pfs
mesa-driver-2110_64-sf02
vdpauinfo-1.4-1
z-libva-utils-2.12.0-1
pamac-aur-10.2.0-2110-sf01.pfs
pra-installer-2021.08-17-any.pfs
premote-p_64-sf03.pfs
cifs-utils-light-6.10-1
curlftpfs-0.9.2-6
djmount-p-0.71-5-x86_64
dlna-mnt-gui-2018.04-10-any
gtkrdp-2021.10-19-any
premote-2021.10-19-any
rdesktop-light-1.8.6-1-x86_64
rdesktop-light-1.9.0-2-x86_64
sshfs-p-3.3.1-1-x86_64
turbovnc-p-1.1-2
wdfs-p-1.4.2-3-x86_64
z-cifs-utils-6.14-1-x86_64
remmina-gtk3-p-1.4.2_64-sf04.pfs
freerdp-light-p-2.0.0_64-sf01
remmina-light-1.4.2-3
transmission-sequential-gtk3-p-3.00_64-sf03.pfs
usbimager-gtk3-p-1.0.5_64-sf02.pfs
vlc-qt5-cel-3.0.16-2110-sf01.pfs
youtube-dl-2021.11.10_any-sf01.pfs