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

Автор Тема: pfsrebuild  (Прочитано 40450 раз)

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

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: pfsrebuild
« Ответ #15 : 16 Май 2019, 18:33:46 »
Создайте файл /etc/pfs.cfg и запишите в него строку
prefixmp="/mnt/live/memory/images/"
После попробуйте еще раз pfsrebuild

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #16 : 16 Май 2019, 18:38:46 »
Создайте файл /etc/pfs.cfg и запишите в него строку
Я могу проверить конечно, но что дальше? Мне сомнительно, что sfs захочет переделывать такое количество модулей?

upd. Или сделать, чтобы pfsrebuild сам выстроил этот список при первом запуске.
Все же применение pfsrebuild будет полезно для 2-3 модулей и нет необходимости переделывать все модули в PRA под него.
    сделать, чтобы pfsrebuild сам выстроил этот список при первом запуске.

так бы лучше

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: pfsrebuild
« Ответ #17 : 16 Май 2019, 18:40:58 »
Вы совершенно не о том говорите. Никакие модули переделывать не надо. У вас не правильно работают pfs утилиты потому, что не знают где искать бандлы. Что то поменялось, а утилиты то и не в курсе. Посмотрю позже может в других местах расположение бандлов подругому определяется из aufs-n например.

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #18 : 16 Май 2019, 18:56:19 »
Создайте файл /etc/pfs.cfg и запишите в него строку
Код
% sudo pfsrebuild youtube-dl_any-sf02
/mnt/bundles1/youtube-dl_any-sf02
Parallel mksquashfs: Using 4 processors
Creating 4.0 filesystem on youtube-dl_any-sf02.pfs, block size 524288.
[=============================================================================/] 8/8 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 1620.73 Kbytes (1.58 Mbytes)
93.99% of uncompressed filesystem size (1724.42 Kbytes)
Inode table size 278 bytes (0.27 Kbytes)
54.62% of uncompressed inode table size (509 bytes)
Directory table size 238 bytes (0.23 Kbytes)
76.04% of uncompressed directory table size (313 bytes)
Number of duplicate files found 0
Number of inodes 15
Number of files 5
Number of fragments 1
Number of symbolic links  1
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) 1
Number of uids 1
root (0)
Number of gids 1
root (0)
Сработало
Код
% du youtube-dl_any-sf02
4 youtube-dl_any-sf02/home/live/.qmplay2
8 youtube-dl_any-sf02/home/live
12 youtube-dl_any-sf02/home
8 youtube-dl_any-sf02/etc
8 youtube-dl_any-sf02/usr/local/bin
12 youtube-dl_any-sf02/usr/local
1732 youtube-dl_any-sf02/usr/bin
1748 youtube-dl_any-sf02/usr
1776 youtube-dl_any-sf02

Вы совершенно не о том говорите
Возможно я неправильно выражаюсь по форме проблемы, но я прав по ее духу. :)
Если возникнет необходимость чего-то добавить в модули, то здесь проблема в лице sfs и необходимых трудочасов. :)


upd.
Никакие модули переделывать не надо.
« Последнее редактирование: 16 Май 2019, 19:14:46 от krasnyh »

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: pfsrebuild
« Ответ #19 : 16 Май 2019, 19:16:32 »
Возможно я неправильно выражаюсь по форме проблемы, но я прав по ее духу. :)
:)
Если возникнет необходимость чего-то добавить в модули, то здесь проблема в лице sfs и необходимых трудочасов. :)
Добавьте этот /etc/pfs.cfg в сборку. Даже если конкретно для prefixmp позже будет не нужен,  то все равно полезный. Сжатие например задавать можно.

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #20 : 16 Май 2019, 19:24:40 »
Сжатие например задавать можно.
Можно узнать все параметры которые можно задать через /etc/pfs.cfg

если найду скрипт , который папку пра со всеми модулями перепакует, то  попробую, а вручную каждый - не эффективно.
С помощью pfsrebuild и /etc/pfs.cfg возможно перепаковать все модули в директории с нужным сжатием?

Или есть какой-то специализированный скрипт?

p.s. Вроде в PRA, что-то есть если не ошибаюсь. Вроде видел, поискал по форуму, ничего не нашел.
« Последнее редактирование: 16 Май 2019, 19:27:41 от krasnyh »

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #21 : 16 Май 2019, 19:36:52 »
Если возникнет необходимость чего-то добавить в модули, то здесь проблема
Поправка.
Если разовое добавление и не в каждый модуль, то проблемы не будет.

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: pfsrebuild
« Ответ #22 : 16 Май 2019, 19:46:46 »
С помощью pfsrebuild и /etc/pfs.cfg возможно перепаковать все модули в директории с нужным сжатием?
Для этого достаточно mkpfs в цикле запустить. Указывать сжатие в /etc/pfs.cfg имеет смысл если всегда используете "недефолтное" сжатие. К примеру у меня lzo работает быстрее чем дефолтный xz и я использую его.
Вот мой.
PFSDIR=/var/lib/packages
EXT=xzm
. /usr/lib/magos/os-config
. /etc/sysconfig/MagOS
compression="$MKSQFS_OPTS"
compression_fast="$MKSQFS_FASTALG"

Сделано так, чтоб можно было задавать compression_fast и compression из MagOS.ini

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #23 : 16 Май 2019, 20:12:50 »
Для этого достаточно mkpfs в цикле запустить.
Никак не могу сообразить как это будет выглядеть. )
Код
for n in {1..5}; do <КОМАНДА>; done
?

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: pfsrebuild
« Ответ #24 : 16 Май 2019, 20:20:57 »
Зачем цифры?
for mod in $( ls -1 |grep pfs$) ; do
mkpfs $mod -o new_$mod
done
Типа такого. Это если все в одной папке. Если в разных, то можно с find.
« Последнее редактирование: 16 Май 2019, 20:23:15 от betcher »

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #25 : 16 Май 2019, 20:31:13 »
Да, работает.
ШАМАНЯ интересовался с целью перепаковать модули с легким алгоритмом сжатия
Цитата
mkpfs --help
-f / --fast - быстрая компрессия (размер .pfs больше, но создается быстрее).

Поэтому наверно так?
Цитата
for mod in $( ls |grep pfs$) ; do mkpfs -f $mod -o new_$mod; done

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 1611
  • Репутация: +27/-1
Re: pfsrebuild
« Ответ #26 : 16 Май 2019, 20:41:17 »
 mkpfs --help
..
--mksqfs / параметры для mksquashfs, компрессия размер блока и проч.(Внимание параметр должен быть последним)
можно наверное точнее сжатие подобрать?
1.пень G2020,8Gb,Radeon RX460 (Debian+openBox+LXPanel)
2.нетбук  Samsung N145 (Debian+openBox+LXPanel, ddr01)

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #27 : 16 Май 2019, 20:44:22 »
PFSDIR=/var/lib/packages
EXT=xzm
. /usr/lib/magos/os-config
. /etc/sysconfig/MagOS
compression="$MKSQFS_OPTS"
compression_fast="$MKSQFS_FASTALG"
В принципе здесь вся инфа об этом Терминология и спецификации формата PFS

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 1611
  • Репутация: +27/-1
Re: pfsrebuild
« Ответ #28 : 16 Май 2019, 21:07:13 »
Код
#!/bin/sh
mkdir /tmp/pfs-new
for modul in $( ls -1 /mnt/live/memory/images | egrep '^00') ; do
echo $modul
mkpfs /mnt/live/memory/images/$modul -o /tmp/pfs-new/$modul  --mksqfs -comp lz4
done
потестил на трех  00**.pfs  ( egrep '^00' )
компрессия lz4 , на самом деле быстрая, секунд пять скрипт работал
но модули "распухают" раза в два  :)
Код
sudo ./repackpfs 
mkdir: невозможно создать каталог «/tmp/pfs-new»: Файл существует
000-kernel-4.4.1-pf3.pfs
/mnt/bundles1/000-kernel-4.4.1-pf3.pfs
Parallel mksquashfs: Using 2 processors
Creating 4.0 filesystem on /tmp/pfs-new/000-kernel-4.4.1-pf3.pfs, block size 131072.
[===========================================================================================================|] 2450/2450 100%

Exportable Squashfs 4.0 filesystem, lz4 compressed, data block size 131072
compressed data, compressed metadata, compressed fragments, compressed xattrs
duplicates are removed
Filesystem size 26623.95 Kbytes (26.00 Mbytes)
51.99% of uncompressed filesystem size (51207.13 Kbytes)
Inode table size 37231 bytes (36.36 Kbytes)
41.03% of uncompressed inode table size (90747 bytes)
Directory table size 42442 bytes (41.45 Kbytes)
69.84% of uncompressed directory table size (60772 bytes)
Number of duplicate files found 0
Number of inodes 2814
Number of files 2338
Number of fragments 307
Number of symbolic links  3
Number of device nodes 0
Number of fifo nodes 0
Number of socket nodes 0
Number of directories 473
Number of ids (unique uids + gids) 1
Number of uids 1
root (0)
Number of gids 1
root (0)
001-ddr01-sf17.pfs
/mnt/bundles1/001-ddr01-sf17.pfs
Parallel mksquashfs: Using 2 processors
Creating 4.0 filesystem on /tmp/pfs-new/001-ddr01-sf17.pfs, block size 131072.
[=========================================================================================================/] 11245/11245 100%

Exportable Squashfs 4.0 filesystem, lz4 compressed, data block size 131072
compressed data, compressed metadata, compressed fragments, compressed xattrs
duplicates are removed
Filesystem size 122985.88 Kbytes (120.10 Mbytes)
51.27% of uncompressed filesystem size (239899.77 Kbytes)
Inode table size 217702 bytes (212.60 Kbytes)
42.53% of uncompressed inode table size (511880 bytes)
Directory table size 197517 bytes (192.89 Kbytes)
63.73% of uncompressed directory table size (309952 bytes)
Number of duplicate files found 703
Number of inodes 14362
Number of files 10109
Number of fragments 607
Number of symbolic links  2802
Number of device nodes 0
Number of fifo nodes 0
Number of socket nodes 0
Number of directories 1451
Number of ids (unique uids + gids) 16
Number of uids 5
root (0)
live (1000)
unknown (1015)
unknown (502)
unknown (1001)
Number of gids 14
root (0)
unknown (513)
shadow (42)
fuse (1000)
users (100)
live (1002)
unknown (11)
tty (5)
messagebus (102)
unknown (502)
utmp (43)
staff (50)
adm (4)
mail (8)
005-nss-ddr01-sf03.pfs
/mnt/bundles1/005-nss-ddr01-sf03.pfs
Parallel mksquashfs: Using 2 processors
Creating 4.0 filesystem on /tmp/pfs-new/005-nss-ddr01-sf03.pfs, block size 131072.
[===============================================================================================================/] 72/72 100%

Exportable Squashfs 4.0 filesystem, lz4 compressed, data block size 131072
compressed data, compressed metadata, compressed fragments, compressed xattrs
duplicates are removed
Filesystem size 3347.65 Kbytes (3.27 Mbytes)
58.99% of uncompressed filesystem size (5675.27 Kbytes)
Inode table size 1100 bytes (1.07 Kbytes)
60.94% of uncompressed inode table size (1805 bytes)
Directory table size 795 bytes (0.78 Kbytes)
67.09% of uncompressed directory table size (1185 bytes)
Number of duplicate files found 1
Number of inodes 50
Number of files 35
Number of fragments 3
Number of symbolic links  1
Number of device nodes 0
Number of fifo nodes 0
Number of socket nodes 0
Number of directories 14
Number of ids (unique uids + gids) 1
Number of uids 1
root (0)
Number of gids 1
root (0)
« Последнее редактирование: 16 Май 2019, 21:08:45 от k0l0p0k »
1.пень G2020,8Gb,Radeon RX460 (Debian+openBox+LXPanel)
2.нетбук  Samsung N145 (Debian+openBox+LXPanel, ddr01)

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #29 : 16 Май 2019, 21:16:35 »
mkpfs /mnt/live/memory/images/$modul -o /tmp/pfs-new/$modul  --mksqfs -comp lz4

В принципе здесь вся инфа об этом Терминология и спецификации формата PFS
compression_fast - компрессия внутри squashfs при использовании mkpfs -f . По умолчанию lz4 :)