Содержание

pfs-utils. Утилиты для работы с модулями squashfs. Версия 2

Терминология

Функционал pfs-utils

Зависимости

Спецификация

Структура файловой системы внутри модуля

От корня «/»

В одном файле .pfs может быть включено несколько модулей, в этом случае в каталоге «/etc/packages/mount» должно быть несколько каталогов «[Название_модуля]». При установке модулей соответствующие каталоги [Название_модуля] перемещаются из каталога «/etc/packages/mount» в каталог «/etc/packages/install».

Графические скрипты (GUI)

open_pfs

Основной скрипт, позволяет подключить, отключить или установить модули.pfs.

Если в подключаемом .pfs есть файл «/tmp/.pfs/.command», содержащий команду запуска программы (например «firefox») - то после подключения пользователю будет предложено запустить эту команду.

После подключения или установки pfs выводится список отсутствующих зависимостей.

uninstall_pfs

Удаляет выбранные пользователем pfs.

manager_pfs

Показывает список всех (постоянно подключённых, временно подключённых и установленных) pfs в системе.

open_pet

Скрипт позволяет установить PET-пакет, либо конвертировать его в PFS.

loader_fs

Позволяет подключить к корневой файловой системе AUFS файлы SFS, 234fs и разделы Ext234 (GUI к pfsload | sfsload | extload).


editor_pfs

Редактор файлов PFS (GUI к pfsmerge).

Принцип работы скрипта:

extractor_pfs

Скрипт позволяет извлечь один или несколько модулей из файла .pfs (GUI к pfsextract).

Консольные команды

pfsload

Подключает файл .pfs к корневой файловой системе AUFS.

Также могут быть подключены SFS, 234fs, разделы Ext234 и каталоги на таких разделах к AUFS (скрипты sfsload, extload, dirload в настоящий момент являются ссылками на pfsload).

Использование:
Параметры (ключи):

pfsunload

Отключает файл от корневой файловой системы AUFS.

Использование:

pfsinstall

Устанавливает PFS в корневую файловую систему.

Использование:
Параметры (ключи):

pfsuninstall

Удаляет pfs из корневой файловой системы (файлы, используемые несколькими pfs не будут удалены, пока хотя бы один из этих pfs установлен или подключён).

pet2pfs

Конвертирует .pet в PFS.

petinstall

Устанавливает .pet в режиме совместимости с PFS.

fileinpack

Информация о том, к какому подключенному или установленному pfs относится указанный файл. Допустимо указывать часть имени файла.

Использование:

pfsinfo

При запуске pfsinfo /file.pfs выводит список pfs в составном.pfs

При запуске без параметров выводит список всех pfs в системе.

Параметры (ключи):

mkpfs

Создаёт .pfs из каталога (аналогично mksquashfs). Автоматически создаёт файлы pfs.files, pfs.specs и pfs.dirs.empty (при наличии внутри pfs пустых каталогов).

Использование:
Параметры (ключи):

pfsmerge

Объединяет несколько .pfs в один составной модуль

Использование:

Допустимо смешанное использование (например «pfsmerge /сatalog_1 /file_1.pfs /сatalog_2 /file_2.pfs /outfile.pfs», в этом случае «/outfile.pfs» будет собран из «/file_1.pfs», «/file_2.pfs» и всех файлов .pfs из каталогов «/сatalog_1» и «/сatalog_2»).

Параметры (ключи):

Можно объединять до 126 .pfs за один проход (если не указывать при загрузке параметр ядра max_loop с меньшим значением). Это ограничение AUFS. При большем количестве pfs рекомендуется объединить их в файлы по 126 pfs, потом объединить эти файлы.

Наличие pfs с одинаковыми названиями в объединяемых файлах .pfs недопустимо. При наличии одинаковых pfs скрипт выведет их список и завершит работу.

pfsextract

Извлекает отдельные pfs из составного модуля .pfs.

Использование:
Параметры (ключи):

pfsmerge-dir

Используется для пересборки составного модуля вместе с pfsextract -d

Обновляет списки файлов в каталогах отдельных модулей и собирает их в один составной модуль

Использование:
Параметры (ключи):

Кроме ключа -d полностью совпадают с mkpfs


Подключение PFS c копированием в RAM

Перед подключением можно скопировать pfs на RAM-диск.

Преимущества:

Недостатки:

Рекомендуется для компьютеров с RAM 500мб или более.

pfsramload

Копирует файл .pfs в оперативную память компьютера и подключает его.

Использование:
Параметры (ключи):

Для отключения файла используется скрипт pfsunload. После отключения нужно очистить оперативную память командой pfsramfree.

Обсуждение на форуме.


Поиск зависимостей (библиотек) содержимого модуля

pfsdepends

Проверка зависимостей.

Использование:
Параметры (ключи):
Формирование списка зависимостей при создании модуля описано на форуме разработчиков:

http://forum.puppyrus.org/index.php/topic,12727.msg84950.html#msg84950