Drake2xzm

  1. Странно но команда mkpfs -l -w папка заработала теперь как аналог dir2xzm
    Странно потому что в help написано - " -w - не включать AUFS тени "
    Но теперь ели я редактирую модуль без теней в drake2xzm то пишется образ без теней.
    Если я редактирую модуль с тенями в drake2xzm то пишется образ с тенями
  2. Предполагаю что если я буду объединять два модуля с тенями через mkpfs, то теней в записанном модуле не будет
    В drake2xzm с тенями скрипт разбирается при монтировании образа aufs

wha=“”
[ -f “$DISK”/.wh…wh.aufs ] && wha=“shwh”
mount -t aufs -o $wha,br:$mod_br=rw:$DISK=ro aufs $root_br

Можно доработать в скрипте pfs команду mkaufs
И pfs будет автоматически распознавать модуль с тенями и монтировать образ aufs с тенями
Если обычные модули то теней не будет
Но я еще не пробовал
Только если объединять модуль без теней и модуль с тенями - это путаница будет
И этот вариант вероятно надо исключить и что то придумать что бы pfs сразу различало
модуль с тенями и модуль без теней
Может интерактвность наладить (Xdialog или kdialog) для выбора модулей ?

PS
Смотрел GitHub для pfs - GitHub - pfs-utils/pfs-utils: Pfs-utils
И даже скачал, но извините за бестолковость ничего не понял
Там вроде по другому все сделано

Вы просто не то взяли.

Ни в коем случае. Это чисто консольные утилиты. Сверху можно городить любые гуи, здесь только ключи.

Раньше так и было. Видимо не исправили. Надо не забыть.

Тут вот какая штука. Учесть тени при монтировании внутренней ауфс для mkpfs можно. Даже по умолчанию наверное можно. Но. Итоговый модуль делается из точки монтирования ауфс, а там теней нет.
Ну то есть если вы склеиваите mkpfs два модуля и во втором есть тень, которая накрывает файл из первого модуля, то можно сделать чтоб в итоговом модуля этого файла не было. Может и сейчас так, не разбирался. Но сделать чтоб в итоговый модуль попала тень не получится, без обходных костылей.
Попробуйте начать тему в форуме паппирус, только объясните подробнее, на примере, а то объяснять это не Ваш конек :))

З.Ы. pfs-utils. Утилиты для работы с модулями squashfs. Версия 3 - Справочная система PuppyRus Linux

Тут еще один момент.
Для Росы, по моим данным, надо полную rpm-базу писать
Для Магеи достаточно /var/lib/rpm/Packages
В MagOS.ini ввел переменную (по умолчанию no)

RPMDBCLEANE=no

Сама п/прога

clear_rpm()
{
#if [ -d “$xzm_br/var/lib/rpm” ] ;then
rm -rf “$xzm_br”/var/cache/urpmi/rpms/* “$xzm_br”/var/cache/urpmi/partial/* “$xzm_br”/var/cache/urpmi/headers/* “$xzm_br”/var/cache/urpmi/mirrors.cache
rm -rf “$xzm_br”/var/cache/urpmi/.metalink “$xzm_br”/var/cache/ldconfig/aux-cache
rm -rf “$xzm_br”/etc/sysconfig/network-scripts/ifcfg-e* “$xzm_br”/etc/sysconfig/network-scripts/ifcfg-p* “$xzm_br”/etc/sysconfig/network-scripts/ifcfg-w*
rm -rf “$xzm_br”/var/lib/preload/preload.state “$xzm_br”/var/lib/rpm/.rpm.lock “$xzm_br”/var/lib/rpm/.RPMLOCK
rm -rf “$xzm_br”/var/lib/rpm/.??* “$xzm_br”/var/lib/rpm/?wh?*
RPMDB=“$xzm_br”/var/lib/rpm/??*
for a in ls -dr $RPMDB; do
#echo “a=$a”
if [ “${a##/}" != “Packages” -a "${a##/}” != “alternatives” -a “${a##*/}” != “modules” ] ;then
rm -rf $a
fi
done
#fi
}

Где xzm_br=mod_br
Т е теперь выбор за юзером

Если вы это для пфс-утилс предлагаете, то нет. Там не должно быть ничего привязанного к конкретному дистру.

Я про чистку rpm-базы. Вроде сохранение полной rpm-базы это и есть привязка к Росе
Непонятно. В сборке MagOS rpm-база представлена одним /var/lib/rpm/ Packages
И при старте системы rpm-база инициализируется
У меня же в drak2xzm, для Росы, получилось что надо сохранять полную rpm-базу
Если сохранять только /var/lib/rpm/ Packages то rpm-база не открывается

В пфс-утилс нет ни чистки базы ни ее оставления, там вообще нет ничего про рпм равно как и про deb и прочее.

То есть если вы хотите использовать чрут2пфс для установки пакетов или обновления, то у вас два пути.

  1. Это внутренний скрипт. Содержание приблизительно такое.
    #!/bin/bash
    urpmi --auto-update
    rm -rf все-не-нужное

И запускаете

chroot2pfs -o mod.xzm --script имя-скрипта.sh

Либо второй путь, чрут2пфс собирает не в модуль, а в папку, которую вы чистите скриптом и пакуете мкпфс, можно сразу и клеить. Мкпфс папки с модулями клеить умеет.

Написал в форум пфс-утилс
http://forum.puppyrus.org/index.php?topic=21961.msg162437#msg162437
Посмотрим что скажут.

Сегодня решил проверить на своей сборке удаление пакетов и удалил пакеты для virtualbox
Само удаление делал на rpmdrake и нужные тени не прошли в модуль записи
Как то странно. Удалял из системы и тени должны быть верхнего уровня и остаться в модуле записи.
Похоже что не желательно из образа для записи модуля удалять файлы

.wh…wh.orph
.wh…wh.plnk
.wh…wh.aufs