Содержание
Пакеты и модули: PET, SFS, PFS
В операционных системах Puppy и PuppyRus используется несколько типов пакетов и модулей (аддонов).
Пакеты типа PET (файлы с расширением .pet).
Это самый распространенный тип пакетов в Puppy и PuppyRus, поддерживается практически всеми версиями дистрибутива.
В дистрибутивах проекта Puppy Linux (в т.ч. локализованных) PET является основным типом пакетов. Устаревшие дистрибутивы PuppyRus также собирались из PET-пакетов.
В современных версиях PuppyRus (начиная c версии 12.12) используется другой тип пакетов - PFS. Поддержка PET сохранена для обратной совместимости.
Модули (аддоны) SquashFS (файлы с расширеним .sfs).
SquashFS - это файл, содержащий внутри полноценную сжатую файловую систему (только для чтения).
В дистрибутивах Puppy такие файлы используются для двух целей:
- Один или несколько файлов SFS содержат в себе корневую файловую систему дистрибутива (подробнее см. Архитектура файловой системы Puppy Linux).
- В файлах SFS распространяются большие программы (или наборы программ), в них же обычно закладываются требуемые библиотеки.
Преимущества использования модулей SFS перед пакетами PET - в возможности горячего подключения и отключения их непосредственно в корневую файловую систему.
Работает это так: При подключении SFS-модуля файлы, содержащиеся в нём, «возникают» в корневой файловой системе в соответствующих каталогах (при этом файлы на самом деле не копируются, а читаются операционной системой непосредственно из SFS-модуля). При отключении SFS-модуля эти файлы исчезают из файловой системы.
Пакеты типа PFS (файлы с расширением .pfs).
PFS (Package sFS) - это новый тип пакетов, разработанный командой проекта PuppyRus в 2012 году.
Пакеты типа PFS соединяют в себе преимущества пакетов PET (хранение информации о пакете внутри) и модулей SFS (возможность подключения).
Другая особенность пакетов PFS - использование контейнеров. Файл с расширением .pfs является контейнером, который может содержать внутри один или несколько пакетов PFS. Контейнеры легко перепаковать (добавить или удалить необходимые пакеты, объединить или разделить контейнеры).
Контейнеры PFS можно подключать в корневую файловую систему (так же как SFS-модули).
PFS-пакеты также могут быть установлены в систему (так же как PET, или любые другие пакеты). При установке можно выбрать необходимые пакеты из контейнера, а подключать/отключать можно только весь контейнер сразу.
В операционной системе PuppyRus PFS является стандартным форматом пакетов. Основные компоненты системы также хранятся в одном или нескольких файлах .pfs (контейнерах), которые автоматически подключаются при загрузке системы.
В дистрибутивах Puppy Linux пакеты PFS либо пока не поддерживаются, либо поддерживаются в тестовом режиме.
Все современные (поддерживаемые) дистрибутивы Puppy и PuppyRus поддерживают только SFS v.4. Модули SFS v.3 сегодня практически не встречаются, но их ещё можно найти на форумах и в некоторых репозиториях.
Поддержка SFS с типом сжатия xz присутствует только в дистрибутивах, в которых используется ядро Linux версии 2.6.38 или более новое.
Это же относится и к поддержке функции подключения контейнеров PFS, в которых также используется сжатие xz.
В случае использования PFS это ограничение можно обойти если объединить несколько контейнеров PFS в один (при необходимости их можно потом снова разделить).
Оригинальный текст на форуме PuppyRus: http://forum.puppyrus.org/index.php/topic,14321.0.html.