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

Автор Тема: Сохраненка.pfs create-save-pfs  (Прочитано 106529 раз)

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

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5339
  • Репутация: +139/-1
Re: Сохраненка.pfs create-save-pfs
« Ответ #315 : 30 Сентябрь 2020, 13:02:04 »
Все это правильно. Но лучше проверить, на примере того же Discord. Все же как всегда, есть правила, а есть полет фантазии рядового пользователя. :) Тем более с initrd.xz такого эффекта нет, только с initramfs*.

Или оставить как есть, написав, что есть правила. Или признать, что Prar для фругала годен с оговорками.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33996
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: Сохраненка.pfs create-save-pfs
« Ответ #316 : 30 Сентябрь 2020, 13:16:15 »
проверить, на примере того же Discord
Поставил его pacman-oм. Сделал полное сохранение.pfs Ошибок не было
reboot
Discord запускается
есть правила
Я же дал на них ссылку выше

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: Сохраненка.pfs create-save-pfs
« Ответ #317 : 30 Сентябрь 2020, 16:00:21 »
Софт должен быть отдельным модулем, а не в сохраненке.pfs
По магос ровно такие же рекомендации даем. Тем более у вас сохраненка "наживую", а не при выключении. Шансов словить непонятное еще больше.

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5339
  • Репутация: +139/-1
Re: Сохраненка.pfs create-save-pfs
« Ответ #318 : 30 Сентябрь 2020, 17:49:51 »
Долгое время PRA был заточен под sfs, типа мне удобно и ладно. :) Пользователям предлагалось ставить приложение через консольный pacman2pfs, далее искать полученную папку и упаковывать с mkpfs. Графический pacman2pfs.sh делал тоже самое. И только с недавних пор, через GUI, пользователь получает уже готовый модуль.

Поэтому-то и ставили пакеты через pacman -S, а затем create-save-pfs. Так было проще. Как правильно было замечено, так делать неправильно, :) но так делалось многими. Ставят (ставили) приложения или в модуль сохранения или в папку, не задумываясь их 'обмодулить'.
« Последнее редактирование: 30 Сентябрь 2020, 17:59:43 от krasnyh »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33996
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: Сохраненка.pfs create-save-pfs
« Ответ #319 : 01 Октябрь 2020, 10:07:33 »
Долгое время PRA был заточен под sfs, типа мне удобно и ладно.
Ну уж так совсем пофигистически никогда к юзерам не относился
Не вижу я по форучу, что кто-то делает модули кроме меня и пары ветеранов. Вопросов по гуй тоже не было и он был рабочий. По Вашим заявкам подправлено некритичные неудобства
Кроме того нормальный портированный модуль этим скриптом  так просто не сделать
Короче - в LFA1801 это все для опытных, которым гуй не нужен
А вот в прар2008 - попроще, т.к. все опакечено, родной системд и т.п. - так и задумывалось
но так делалось многими.
откуда инфа?
ставили пакеты через pacman -S, а затем create-save-pfs
На самом деле можно еще красивее делать модули - chroot2pfs

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33996
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: Сохраненка.pfs create-save-pfs
« Ответ #320 : 20 Сентябрь 2021, 12:49:04 »
гуй к pfs util , сохраненке
Чем плох тот что есть?
sfs-get по итогу кучи доработок и постоянного использования еще туда -сюда, а create-save-pfs совсем не шедевр. Сам не пользуюсь . Остальные молчат

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8636
  • Репутация: +187/-2
  • Старый чайник
Re: Сохраненка.pfs create-save-pfs
« Ответ #321 : 20 Сентябрь 2021, 13:50:45 »
create-save-pfs совсем не шедевр
Да, очень медленно. Может попробовать на основе mksavexzm?
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33996
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: Сохраненка.pfs create-save-pfs
« Ответ #322 : 20 Сентябрь 2021, 15:14:33 »
Медленно создается?
Может попробовать на основе mksavexzm?
Любые улучшения интересны. Особенно гуя. Чтобы годилось для любого инитрд - точки монтирования и т.п. лучше бы задать конфигом или переменными

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8636
  • Репутация: +187/-2
  • Старый чайник
Re: Сохраненка.pfs create-save-pfs
« Ответ #323 : 20 Сентябрь 2021, 16:28:16 »
Особенно гуя.
При полном автомате? GUI?
для любого инитрд - точки монтирования
По моему, не проблема. Нам ведь нужен save
Код
bash-4.4$ awk '/save/ {print $2}' /proc/mounts
/mnt/bundles/save
и каталог с системой
Код
bash-4.4$ dirname $(losetup -a|awk '/-base./ {print $3}')
/mnt/sda1/BB_64/base
У тебя вместо "base" будет "001". Понятно направление мысли?
Короче, будет вдохновение - сделаю.


Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33996
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: Сохраненка.pfs create-save-pfs
« Ответ #324 : 20 Сентябрь 2021, 16:34:06 »
При полном автомате? GUI?
А как еще выбрать что сохранять в save.pfs?

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33996
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: Сохраненка.pfs create-save-pfs
« Ответ #325 : 20 Сентябрь 2021, 16:36:43 »
mksavexzm
Это ваш скрипт? Где можно ознакомиться?

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5339
  • Репутация: +139/-1
Re: Сохраненка.pfs create-save-pfs
« Ответ #326 : 20 Сентябрь 2021, 16:53:37 »
Оказывается в Richy64, с некоторых пор, base.xzm состоит из кучи подмодулей. Или всегда так было, не замечал.
Цитата
$ pfsinfo /home/live/.cache/spacefm/Richy64.iso/Richy64/base/Richy64F-base.xzm | grep -C6 mksavexzm
libxshmfence-1.3
links-2.19
loginroot-02
lzo-2.10
mc-4.8.20
mesa-18.2.2
mksavexzm
mpg123-1.25.6
mtdev-1.1.5
mtpaint-3.40
ncurses-6.0
nettle-3.2
ntfs-3g-2017.3.23

Оффлайн knn

  • Ветеран
  • *****
  • Сообщений: 2553
  • Репутация: +33/-0
Re: Сохраненка.pfs create-save-pfs
« Ответ #327 : 20 Сентябрь 2021, 17:37:45 »
links-2.19
- офтоп - вроде links-2.24 выпустили...( имхо, может и ничего особенного, но не замерз)
Gr4D, Grub2; HP Mini 210 VT - Intel Atom N470  @ 1.83GHz, Intel GMA3150, RAM=2 ГБ ;
Sams-n110: N270 - 1,6 ГГц, Intel GMA 950, RAM=2 ГБ.

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8636
  • Репутация: +187/-2
  • Старый чайник
Re: Сохраненка.pfs create-save-pfs
« Ответ #328 : 20 Сентябрь 2021, 20:16:07 »
Это ваш скрипт? Где можно ознакомиться?
Здесь
вроде links-2.24 выпустили...
Для просмотра doc.html думаю особой разницы нет.
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8636
  • Репутация: +187/-2
  • Старый чайник
Re: Сохраненка.pfs create-save-pfs
« Ответ #329 : 20 Сентябрь 2021, 21:51:20 »
Вот результат:
Код
root@roll2103:live# time /mnt/sda3/live/Git/mksave/mksavepfs 
Parallel mksquashfs: Using 4 processors
Creating 4.0 filesystem on /run/archroot/root_ro/prar2103/base/090-save-prar-2103-sf03.pfs, block size 131072.
[=====================================================================================/] 53/53 100%
...........................

real 0m0,560s
user 0m1,004s
sys 0m0,424s
root@roll2103:live# ls /mnt/sda1/prar2103/base/090-save-*
'/mnt/sda1/prar2103/base/090-save-*.pfs.old'   /mnt/sda1/prar2103/base/090-save-prar-2103-sf03.pfs
Скрипт:
Код
#!/bin/ash
# DdShurick GPL-v2 18.03.16
# DdShurick changed for prar 20.09.2021
if [ "$(id -u)" != 0 ]; then exit 1; fi

#Задаём переменные
BASE=$(losetup -l -O BACK-FILE | grep 001 | grep -v DEV)
SAVE_NEW=$(basename $BASE | sed "s/001/090-save/")
SAVEPATH=$(dirname $BASE)

#[ -d ${SAVEPATH}/changes ] && SYSMNT=dir

#Последовательно копируем слои
mkdir -p /tmp/savepfs-root
SAVE=$(awk '/save/ {print $2}' /proc/mounts) #/upd/
[ -d "$SAVE" ] && cp -af $SAVE/* /tmp/savepfs-root/
CHANGES=$(awk '/changes/ {print $2}' /proc/mounts)
ls -d1 $CHANGES/[!dmstv]* | while read D
do
cp -af $D /tmp/savesfs-root/
done

#Удаляем каталог сохранения если есть
#[ "$SYSMNT" = "dir" ] && rm -r /$SYSMNT/changes

#Удаляем "затенённые" (отмеченные как удалённые) файлы и каталоги.
find /tmp/savesfs-root -mindepth 2 -name .wh.* | while read WH
do
F=$(echo $WH | sed 's/\/tmp\/savesfs-root//;s/.wh.//g')
if [ -e "${CHANGES}$F" ]; then
rm $WH #если удалённый файл заново создан, удаляем .wh.*
else
[ -e "/tmp/savesfs-root$F" ] && rm -r /tmp/savesfs-root$F #если ранее сохранённый файл удалён, удаляем его.
fi # если .wh.* относится к нижним слоям - ничего не делаем
done

#Бекапим файл сохранения
[ -f $SAVEPATH/090-save-*.pfs ] && mv $SAVEPATH/090-save-*.pfs $SAVEPATH/090-save-*.pfs.old

#Создаём новый файл сохранения
mksquashfs /tmp/savesfs-root/ $SAVEPATH/${SAVE_NEW} -comp xz -Xbcj x86 && rm -r /tmp/savesfs-root
Вот это: "[!dmstv]*" можно заменить на "{etc,home,root}" (список можно продолжить) и задавать переменными через ключи или GUI
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64