Сейчас там нет возможности передавать значения. Только флаги. Можно просто сделать 3 минуты, пойдет так?
Подождем ещё мнения
С фильтром вроде определился и /etc/systemd в Магее в uird-модуле присутствует
Теперь фильтры у меня одинаковые но отличаются : Магея без слэша а МагОС-Роса со слэшем
Принципиально проблем то нет но лучше унификация
А где он этот шарик в uird находится ?
Сам что ли попробую что то сделать. Искал но что то не нашел …
И шарику можно вроде чуть побыстрее лететь
UIRD ведь может и не дождаться.
Когда у меня получались большие объемы записи (более 1 гб) для 81-saetomodule выявил, что
- Через ~3 мин записи начинает запускаться systemd-poweroff.service. Но для UIRD это вроде неактуально
- через 5 мин записи пытается отключиться дисплей. Отключал все что можно отключить.
Но это явление так и осталось. Надо тут успеть нажать на клавишу - через 10 мин записи комп принудительно отключался
Для моего компа запись можно было сделать для 1.8 Гб в /memory/changes
Если /memory/changes будет 1.9 Гб то модуль уже прерывался на записи
Конечно это мой комп ну а может это и у всех так.
Если это верно, то на все 5 мин
В МагОС-Росе например дольше ~3 мин процесс записи длиться не сможет, т к systemd-poweroff.service. его принудительно отключит
аптайм=3 мин то же много. Я бы дал 30 сек
Что там ждать 3 мин ?
ЗЫ
Еще бывает что на флэшке уже нет места. Тогда модуль начинается писаться и место заканчивается. Тогда получается пустой модуль.
Если места для записи не хватает, то хорошо бы ask применить
Чего не дождаться? Эта фишка просто включит ask, то есть сохранять или нет, если перезагрузка или выключение компа произошло слишком быстро. Нам нужно выбрать оптимальное время.
Посмотрю что можно сделать.
/uird/modules.d/00uird/shutdown-uird.sh
Если шарик не отцентрован, скорее всего нет переменной COLUMNS в окружении. Там должна быть ширина терминала в символах. Можно на пробу перед перезагрузкой записать туда свое значение например 150. В файл /run/initramfs/shutdown.cfg добавьте
COLUMNS=150 перед выключением машины.
Если аптайм меньше этой цифры, то скрипт спросит у вас надо ли сохранять модуль. Если вы комп включили и сразу выключили стоит ли сохранять без вопросов или если что-то пошло не так и комп сам перегружается. Если аптайм блольше этой цифры, то все согласно вашим настройкам.
Добавлена обработка доп. параметров для uird.mode=toxzm. Это EXT - расширение для модулей, а также значения для дефолтной секции MODE, ADDFILTER, DROPFILTER, SQFSOPT, MAXCOPYSIZE. Пока без пробелов, то есть значение - одно слово. Дальше можно передать параметры монтирования и поиска для папки в которой лежит модуль.
TIMEOUT, MNT_OPTS, FSCK, SGN и т.д. Напоминаю, выглядеть должно так:
uird.mode=toxzm::EXT=pfs::TIMEOUT=2::MODE=mount
P.S. Возможно правильнее передавать эти значения в uird.changes? или тут оставить? Или как вариант хоть там, хоть там.
Добавил стр 21 в /usr/share/uird/modules.d/00uird/shutdown-uird.sh
COLUMNS=‘250’
Теперь в Магее где то посередине
- Что то опять в Магее не удаляются с корня папки dev, proc, sys
В прошлой версии как то заудалялись ???
Причем если в фильтре присутствует sys, то удаляется папка sys с корня а также все вложенные папки кот начинаются на sys* (/etc/systemd и т д)
Добавил стр 169 в shutdown-uird.sh
echo "/dev" >> /tmp/excludedfiles echo "/proc" >> /tmp/excludedfiles echo "/sys" >> /tmp/excludedfiles
Помогло !!!
Теперь чисто
- Сделал MODE0=‘mount
Изменил в /usr/share/uird/modules.d/00uird/livekit/uird-init стр 182
#-# add data to union
union_append_bundles $LAYER_BASE/0 “$BUNDLES” “$UNION” “$COPY2RAM” “$LAYER_CACHE”
debug_shelltoxzm mode
setup_toxzm_mode “$DATAMNT/xzmchanges” “$CHANGES” “$BUNDLES” “$UNION” “$COPY2RAM”#-# add data to union
[ -d “$LAYER_BASE/1” ] && union_append_bundles $LAYER_BASE/1 “$BUNDLES” “$UNION” “$COPY2RAM” “$LAYER_CACHE”
debug_shell#-# add data to union
[ -d “$LAYER_BASE/2” ] && union_append_bundles $LAYER_BASE/2 “$BUNDLES” “$UNION” “$COPY2RAM” “$LAYER_CACHE”
debug_shell
Теперь
- /memory/layer-base/0 стартует дистр
- старт toxzm mode
- /memory/layer-base/1 старт магос-модуля
- /memory/layer-base/2 старт аналога MagOS-Data, но он у меня на флэшке отсутсвует
аналога MagOS-Data (LX-Data) я использую при установке на диск
Даже понятнее стало что откуда стартует.
Еще бы /memory/bundles так же разложить
Далее
- 81-savetomodule пока удалил
- 30-umount то же удалил, т к отключает uird.shutdown нормально
Проблемы возможно будут в Росе, ну а в Магее у меня нет преждевременного отключения модулей
Сейчас работает, но только сохранение теней куда то пропало
Вначале вроде были, но может запускал предыдущую версию. Уже запутался в загрузчиках
Но мои правки вроде не при чем.
А можно ли из системы uird-писалку запустить ?
Долго это править uird-конфигуратор, делать загрузчик да бесконечно перезагружаться.
И можно ли отключить загрузку toxzm-модуля при старте ?
Пробовал uird.noload . Но он не помогает
А так toxzm мне понравилась. Пишет гораздо быстрее чем мой 81-savetomodule.
Может и хомяк можно будет писать ?
- MODE0=‘none*
Сейчас предыдущие записи пишутся но теней нет и сразу не было
Пробовал еще до правок
Может теперь исключить его. Может он с тенями что путает ?
Но этот режим вроде подойдет как простая замена обычной писалки.
Вроде ничего переделывать даже не надо.
Эти папки добавлю. Мешать не будет.
Немного подкостылил на случай отсутствия COLUMNS. Сделал 150.
Так менять можно только для себя. В стоке - нельзя. Источники равнозначны.
Если модуль у вас переключен в моунт и при этом включен ребилд, то при первой перезагрузке.тени пропадут.
С моде=none аналогично, с той разницей что копировать его или монтировать нужно решать с uird.ro, uird.cp. То есть если попал под фильтр uird.ro теней не будет.
Не понял вопрос.
uird.mode=clean или как вы хотите?
MODE0=‘mount
Изменил стр 160 в /usr/share/uird/modules.d/00uird/ shutdown-uird.sh
mount -t aufs -o shwh,br:$SRC=rw:${AUFS}-bundle=ro aufs $AUFS
Теперь после первой перезагрузки тени не пропадают.
Провел тест на зависшие тени.
Допустим в системе выключить из загрузки сервис cups - и выключился с сохранением
Включил в системе в загрузку сервис cups - и выключился с сохранением
В системе должен быть активный сервис cups
Но вот что в записанном модуле
/memory/bundles/55-uirdsave.xzm/etc/systemd/system/multi-user.target.wants/.wh.cups.path
/memory/bundles/55-uirdsave.xzm/etc/systemd/system/multi-user.target.wants/cups.path
Т е .wh.cups.path не нигелируется. И cups.path теперь не появится в системе
Проблемы нет если при каждом выключении писать изменения в отдельный модуль
Тогда корневая aufs нигелирует .wh.cups.path
У меня в 81-savetomodule эта проблема решена, по рекомендациям со старого форума
Сделана ловушка зависших теней и их удаление
Т е если в $AUFS найдется .wh.file+file то .wh.file удаляется
Попробую так отпишусь.
Еще делал в 81-savetomodule запись rpm-базы в отдельном модуле
Да что то эта фича не прижилась. Две записи это для 81-savetomodule это многовато
Но toxzm пишет намного быстрее !!!
Может попробовать ?
В смысле для своей сборки я могу это использовать ?
Или будут проблемы ?
Вроде все работает. А как еще запустить toxzm-модуле раньше магос-модуля ?
Тени пропадают не потому, что мне так захотелось. Тени пропадают из-за склейки смонтированного модуля с ченджез при его ребилде. Склейка делатся с ауфс, пакуется точка монтирования ауфс, а там теней быть не может. Когда модуль только создается, т.е. первая перезагрузка, даже если в его секции написано mount тени будут, так как склеек еще не было.
Вообще эта ситуация, мягко говоря, не стандартная. По логике изменения сделанные пользователем должны иметь приоритет над системными модулями.
Но обойти можно. Вариант первый mode=none и монтируете модуль с сохранениями с uird.ro, так чтоб он оказался ниже 88-magos.xzm. И вариант 2, переносите 88-magos.xzm к модулям с сохранениями и прописываете его в новую секцию, в конец конфига. С mode=copy и rebuild=no. Так он всегда будет перекрывать все ваши модули. Надо только подумать как при этом сохранить работоспособным maxcopysize.
Проблем с тенями не должно быть если у вас модуль с mode=copy, и думаю не будет при использовании maxcopysize=, в этом режиме, не смотря на то что при увеличении модуля сверх лимита он переведется в mount, склеек не будет.
Сильно не проверял но должно быть все ок
С MODE0=‘mount проблемы. В частности зависшие тени - Концепт режима сохранения в модуль - #91 от пользователя ingvaro
Собственно сделал
MODE0=‘mount работает и прошел тест на зависшие тени
Тени пишутся, удаляются ну как в моем варианте 81-savetomodule
shutdown-uird.sh - https://cloud.mail.ru/public/3yck/dZTwikcEe
Добавил п/прог WHDELL
И стр 187
rm -rf $LOGWH/whtoxzm.log
whfl=‘.wh.’
WHDELL
whfl='.wh…wh.’
WHDELL
Тени должны удаляться два раза. Сначала тень и потом тень тени
Логи удаленных теней пишутся в /memory/layer-base/0/optional/whtoxzm.log
Т к на экране все быстро и трудно что то разглядеть
Цвет шарика изменил на белый. Вроде элегантнее стало.
Т к вывод ч/белый а тут цветной шарик.
ЗЫ
Вроде и хомяк должен писаться. Так что думаю уже перейти на toxzm
Тем более что он и два модуля может писать и все упрощается
Ситуация вероятно нестандартная для самой MagOS(Роса) т к это уже почти свой дистр на базе Росы и 88-magos.xzm это часть системы
У меня же по уровню исполнения это что то вроде LiveDVD для Магеи . Сборка и без магос-модуля запускается но как Магея.
И если изменения будут стоять после моего магос-модуля то что то может переписываться по дефолту. Ну попробовать надо еще раз наверно
Но у меня допустим уже plymouth не запускается а там выводится имя загружаемого дистра
Ингваро, придумайте мне очень простой способ повторить проблему с зависшими тенями с toxzm на магос. Типа создал файл, перегрузился, удалил файл, перегрузился и т.д. И какая нужна секция для этого. Просто я таких проблем не наблюдаю, но я и сохранениями не пользуюсь. Только вот для тестов toxzm.
Может сравнить сохраненку с 88 магос и понять где конфликт и решить проблему? Класть сохранения под системный модуль это в принципе не правильно.
Тут не против. Еще есть мнения? Можно цвет к дню недели привязать или еще как.