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

Автор Тема: Установка pfs-utils в любой линукс  (Прочитано 1303 раз)

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

Оффлайн ansivar

  • Постоялец
  • ***
  • Сообщений: 124
  • Репутация: +7/-0
  • Автор темы
Установка pfs-utils в любой линукс
« : 08 Январь 2022, 23:03:57 »
 - скачал файл master.zip:
https://github.com/pfs-utils/pfs-utils/archive/master.zip
Код
master.zip  md5:  31153df00a87c71ddbd51220b48dd6c9
master.zip size: 55454

Далее распаковал master.zip в каталог pfs-utils-master и внутри каталога выполнил имеющийся там скрипт:
Код
./build_puppyrus_pack
при этом создался пакет pfs-utils-1.2.0-pr.pfs
Затем на дистрибутиве puppy_disco-19.05_x32(imp) пакет pfs-utils-1.2.0-pr.pfs перепаковал в пакет pfs-utils-1.2.0-pr.pet,
после чего и установил его на этом же дистрибутиве.
При выполнении в консоли:
Код
# pfsmerge ./pulseaudio-9.0-1.01_x86_x32  pulseaudio-9.0-1.01_x86_x32.pfs 
libpulse-9.0-1-i686
pulseaudio-9.0-1-i686
pulseaudio-alsa-2-3-any
pulseaudio-bluetooth-9.0-1-i686
pulseaudio-equalizer-9.0-1-i686
pulseaudio-gconf-9.0-1-i686.pfs
pulseaudio-jack-9.0-1-i686
pulseaudio-lirc-9.0-1-i686
pulseaudio-xen-9.0-1-i686
pulseaudio-zeroconf-9.0-1-i686
Parallel mksquashfs: Using 4 processors
Creating 4.0 filesystem on pulseaudio-9.0-1.01_x86_x32.pfs, block size 524288.
[================================================================================================-] 210/210 100%
Exportable Squashfs 4.0 filesystem, xz compressed, data block size 524288
compressed data, compressed metadata, compressed fragments, compressed xattrs
duplicates are removed
Filesystem size 1199.53 Kbytes (1.17 Mbytes)
.......
bla-bla-bla
.......
Number of gids 1
root (0)
/usr/bin/umountb: line 1: ./mountb: No such file or directory
/usr/bin/umountb: line 1: ./mountb: No such file or directory
/usr/bin/umountb: line 1: ./mountb: No such file or directory
/usr/bin/umountb: line 1: ./mountb: No such file or directory
/usr/bin/umountb: line 1: ./mountb: No such file or directory
/usr/bin/umountb: line 1: ./mountb: No such file or directory
/usr/bin/umountb: line 1: ./mountb: No such file or directory
/usr/bin/umountb: line 1: ./mountb: No such file or directory
/usr/bin/umountb: line 1: ./mountb: No such file or directory
/usr/bin/umountb: line 1: ./mountb: No such file or directory
/usr/bin/umountb: line 1: ./mountb: No such file or directory
- и успешно создается составной пакет pulseaudio-9.0-1.01_x86_x32.pfs.
Созданный составной пакет pulseaudio-9.0-1.01_x86_x32.pfs перенес в другое место,
а в каталог  ./pulseaudio-9.0-1.01_x86_x32 сборки добавил еще один pfs-пакет.
При попытке сборки составного пакета с тем же именем(pulseaudio-9.0-1.01_x86_x32.pfs) имеем:
Код
# pfsmerge ./pulseaudio-9.0-1.01_x86_x32  pulseaudio-9.0-1.01_x86_x32.pfs
Progress is already running!
- и ничего не происходит.
При смене имени выходного составного пакета на pulseaudio-9.0-1.02_x86_x32.pfs(не меняя имя каталога сборки ./pulseaudio-9.0-1.01_x86_x32)
составной пакет pulseaudio-9.0-1.02_x86_x32.pfs успешно создается.
После всего этого, вновь создать составные пакеты с именами pulseaudio-9.0-1.01_x86_x32.pfs и pulseaudio-9.0-1.02_x86_x32.pfs без перезагрузки ПК невозможно...
Какую комманду необходимо выполнить для размонтирования/прибития процесса  для создания составных пакетов с одинаковыми именами  без перезагрузки ПК ?


P.s. На дистрибутиве pra03-1612(который уже не поддерживается) выполнить сборку составного пакета
из меню mc-p-4.8.18-sf02(mc.menu):
Код
m       Pfsmerge текущую директорию
Pwd="`basename %d /`"
Pwd1="`echo $Pwd|sed 's/_pfs$//'`"
pfs="`find "%d" -maxdepth 1 -type f -name "*.pfs"`"
[ "$pfs" ] && m="модулей.pfs:\n\n$pfs\n\n" || m="каталогов "
printf "Объединение $mиз\n%d\nв составной модуль.pfs\n\nВведите имя файла (без расширения) [$Pwd1]: "
read sfs
        [ "$sfs" ] && sfs="$sfs" || sfs="$Pwd1"
cd ..
if [ "$pfs" ];then
     #pfsmerge "$Pwd" ./$sfs.pfs && echo "../$sfs.pfs создан."
    mkpfs -m "$Pwd" -o ./$sfs.pfs && echo "../$sfs.pfs создан."
else
    #pfsmerge-dir "$Pwd"        && echo "../$sfs.pfs создан."
    mkpfs -d "$Pwd" -o ./$sfs.pfs && echo "../$sfs.pfs создан."
fi

= f \.c$ & t r
+ f \.c$ & t r & ! t t
не получается...

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 4961
  • Репутация: +127/-1

Онлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 32959
  • Репутация: +225/-0
    • PuppyRus-A
Re: Установка pfs-utils в любой линукс
« Ответ #2 : 09 Январь 2022, 08:43:18 »
скачал файл master.zip:
В самых свежих версиях пфс есть проблемы, о которых я написал на нашем форуме. Бетчер перешел в профессионалы и похоже пфс подзабросил
Поэтому я откатился на 3 версию 2a-any/pfs-utils-cli 2019.12-02 - это мой пакет в репе на яндексе
Начните с него. 4я версия отличается только составным модулем из составных модулей и недоделанным pfsget
Потом тест : selftest
Не получится - запустите lf в виртуалке и сверяйте

Какую комманду необходимо выполнить для размонтирования/прибития процесса  для создания составных пакетов с одинаковыми именами  без перезагрузки ПК ?
pfs delaufs 1 и 2 и далее, но она нужна только в аварийных случаях

На дистрибутиве pra03-1612(который уже не поддерживается) выполнить сборку составного пакета
из меню mc-p-4.8.18-sf02(mc.menu):
Попробуйте вкатить в него pfs-util и mc.menu из прар2110
Хорошо бы и мс обновить до свежего

С чем связан интерес к puppy_disco? DDR чем-то не подошел?
« Последнее редактирование: 09 Январь 2022, 08:46:37 от sfs »

Оффлайн ansivar

  • Постоялец
  • ***
  • Сообщений: 124
  • Репутация: +7/-0
  • Автор темы
Re: Установка pfs-utils в любой линукс
« Ответ #3 : 11 Январь 2022, 09:08:38 »
Поэтому я откатился на 3 версию 2a-any/pfs-utils-cli 2019.12-02 - это мой пакет в репе на яндексе
Начните с него.
- скачал: https://mirror.yandex.ru/puppyrus/2a-aarch64/pkg-repo/2a-any/pfs-utils-cli-2019.12-02-any.pkg.tar.xz
и перепаковал в pfs-utils-cli-2019.12-02-any.pet, установил его на puppy_750xe_x64
Создание составного пакета(из каталога содержащего внутри одиночные pfs-пакеты) проходит без ошибок:
Код
mkpfs * -o /tmp/pulseaudio-8.0-3.01_x86_x32.pfs
c сохранением  внутри составного пакета служебной информации для каждого одиночного pfs-пакета:
Код
/etc/packages/mount/*/pfs.files
/etc/packages/mount/*/pfs.specs
При создании одиночного pfs-пакета из каталога:
Код
mkpfs ./libpulse-8.0-3-i686
создается  libpulse-8.0-3-i686.pfs, не содержашиий внутри служебную информацию:
Код
/etc/packages/mount/libpulse-8.0-3-i686/pfs.files
/etc/packages/mount/libpulse-8.0-3-i686/pfs.specs
- для mkpfs нужен дополнительный ключ для создания служебной информации внутри одиночного pfs-пакета?

Онлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 32959
  • Репутация: +225/-0
    • PuppyRus-A
Re: Установка pfs-utils в любой линукс
« Ответ #4 : 11 Январь 2022, 09:28:15 »
для mkpfs нужен дополнительный ключ для создания служебной информации внутри одиночного pfs-пакета?
Не помню. Скорее всего никак не создать , т.к. это не нужно. Если слепить этот модуль с другим - тогда и создастся

Оффлайн ansivar

  • Постоялец
  • ***
  • Сообщений: 124
  • Репутация: +7/-0
  • Автор темы
Re: Установка pfs-utils в любой линукс
« Ответ #5 : 11 Январь 2022, 11:41:38 »
Не помню. Скорее всего никак не создать , т.к. это не нужно. Если слепить этот модуль с другим - тогда и создастся
т.е. при установки в систему одиночного pfs-пакета(созданного этим mkpfs из каталога) невозможно будет узнать расположение файлов, принадлежащих этому пакету ?.
Или в систему должны устанавливаться только составные pfs-пакеты?

p.s. pfsextract  из пакета  pfs-utils-cli-2019.12-02-any.pkg.tar.xz не может распаковать https://mirror.yandex.ru/puppyrus/puppyrus-a/pra03/pfs-portable/chromium-p-95.0.4638.69-sf01.pfs - создается пустой католог "chromium-p-95.0.4638.69-sf01". Как распаковывать подобные файлы?

Онлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 32959
  • Репутация: +225/-0
    • PuppyRus-A
Re: Установка pfs-utils в любой линукс
« Ответ #6 : 11 Январь 2022, 11:58:41 »
т.е. при установки в систему одиночного pfs-пакета(созданного этим mkpfs из каталога) невозможно будет узнать расположение файлов, принадлежащих этому пакету ?.
Установка с систему (т.е. распаковка модуля в корень) - редкая операция
По замыслу во время этой операциии должен создаться pfs.files
Советую сначала проверять в прар. Потом повторять в своем дистре

Если selftest прошел - значит все должно быть ок У вас прошел?

Или в систему должны устанавливаться только составные pfs-пакеты?
нет
pfsextract  из пакета  pfs-utils-cli-2019.12-02-any.pkg.tar.xz не может распаковать
Проверил в прар2110 - все ок
Это несоставной пфс. Можно просто unsquashfs

Оффлайн ansivar

  • Постоялец
  • ***
  • Сообщений: 124
  • Репутация: +7/-0
  • Автор темы
Re: Установка pfs-utils в любой линукс
« Ответ #7 : 11 Январь 2022, 19:37:58 »
Если selftest прошел - значит все должно быть ок У вас прошел?
- пока не проходит:
Код
root# selftest
############# mkpfs ##############
############# unsquashfs ##############
############# pfsinstall ##############
############# pfsunstall ##############
############# mkpfs merging ##############
############# pfsinfo ##############
############# mountfile ##############
loo: invalid drive
############# pfsload ##############

find: ‘/mnt/.testmodule.pfs/usr/lib/’: No such file or directory
############# pfsunload ##############
find: ‘/mnt/.testmodule.pfs/usr/lib/’: No such file or directory
############# pfsload to ram ##############

find: ‘/mnt/.testmodule.pfs/usr/lib/’: No such file or directory
############# pfsrebuild ##############
first
second
pfsrebuild  first --nopfs
pfsrebuild  second --nopfs
mkpfs  ./first ./second -o testmodule.pfs
/initrd/bundles1/first
/initrd/bundles1/second
Parallel mksquashfs: Using 4 processors
Creating 4.0 filesystem on testmodule.pfs, block size 524288.
[================================================================================================================================================================|] 7/7 100%

Exportable Squashfs 4.0 filesystem, xz compressed, data block size 524288
compressed data, compressed metadata, compressed fragments, no xattrs
duplicates are removed
Filesystem size 0.75 Kbytes (0.00 Mbytes)
62.41% of uncompressed filesystem size (1.20 Kbytes)
Inode table size 210 bytes (0.21 Kbytes)
38.46% of uncompressed inode table size (546 bytes)
Directory table size 226 bytes (0.22 Kbytes)
67.26% of uncompressed directory table size (336 bytes)
Number of duplicate files found 1
Number of inodes 17
Number of files 8
Number of fragments 1
Number of symbolic links  0
Number of device nodes 0
Number of fifo nodes 0
Number of socket nodes 0
Number of directories 9
Number of ids (unique uids + gids) 2
Number of uids 2
root (0)
nobody (65534)
Number of gids 1
root (0)
############# pfsunload from ram ##############
find: ‘/mnt/.testmodule.pfs/usr/lib/’: No such file or directory
############# pfsextract ##############
mksquashfs: Compressor "lz4" is not supported!
mksquashfs: Compressors available:
gzip
lzma
lzo
xz (default)
error create squashfs module


==========================
mkpfs= OK
pfsextract simple = OK
pfsextract -i= OK
pfsuninstall= OK
mkpfs merging= OK
pfsinfo= OK
(u)mountfile= OK
pfsload= OK
pfsunload= OK
load to ram= OK
pfsrebuild= OK
unload ram= OK
pfsextract= FALSE
====== Test  aborted =====



Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 4961
  • Репутация: +127/-1
Re: Установка pfs-utils в любой линукс
« Ответ #8 : 11 Январь 2022, 20:37:38 »
############# pfsextract ##############
mksquashfs: Compressor "lz4" is not supported!
mksquashfs: Compressors available:
   gzip
   lzma
   lzo
   xz (default)
Устаревший squashfs-tools. Крайний 4.5.