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

Автор Тема: pfsrebuild  (Прочитано 40478 раз)

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

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #60 : 30 Май 2019, 11:45:30 »
Папки с содержимым.

С --nopfs создалась папка 083-palemoon-profile-ru-28.4.0_any-sf01 с правами root у всех папок. Все файлы в этих папках с правами live.

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #61 : 30 Май 2019, 11:53:31 »
Скорее всего ситуация следующаяя. Сверху модуля который вы пересобираете подключен модуль где есть эти папки и они принадлежат другому пользователю. Проверьте права на папки в системе, а не в исходном модуле.
С pra6408-1904 кажется становится понятно. В 083-palemoon-profile-ru-28.4.0_any-sf01 помимо основного профиля есть еще папка nobody с этим же профилем, но с другими правами.
https://mirror.yandex.ru/puppyrus/puppyrus-a64/pfs-portable/083-palemoon-profile-ru-28.4.0_any-sf01.pfs


Или это не причем, пути ведь разные:
Цитата
live@prar-1811 ..ofile-ru-28.4.0_any-sf01.pfs/home/live % sudo ls -la *
'.moonchild productions':
итого 0
drwx------ 3 live root 32 июн 23  2014  .
drwxr-xr-x 4 live root 59 сен 21  2018  ..
drwx------ 3 live root 54 ноя  8  2014 'pale moon'

nobody:
итого 0
drwxr----- 3 nobody root 45 янв 19 10:02  .
drwxr-xr-x 4 live   root 59 сен 21  2018  ..
drwx------ 3 nobody root 32 июн 23  2014 '.moonchild productions'


upd. Перепроверил на другом модуле с ~/, тоже меняются права папок, т.е. nobody ни при чем.
« Последнее редактирование: 30 Май 2019, 12:17:17 от krasnyh »

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #62 : 30 Май 2019, 12:34:58 »
Оффтоп.
При пересборке pra6408-1904.iso c iso-make-hybrid.sh, он мне сбрасывает у pfsrebuild права на выполнение в rootcopy.
Скрин.


Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: pfsrebuild
« Ответ #63 : 30 Май 2019, 13:03:53 »
 Если с нопфс косяк не исчез значит он в пфсребилд, елсли папки не пустые, значит косяк с конвейером через tar. Надо смотреть ключи, но вообще это достаточно стандартный способ копирования по списку с сохранением прав. Не я придумал. Странно короче, надо думать.

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: pfsrebuild
« Ответ #64 : 30 Май 2019, 14:53:43 »
А права в системе и в исходном модуле не сравнивали? Может в системе все же меняются.

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #65 : 30 Май 2019, 15:19:49 »
А права в системе и в исходном модуле не сравнивали?
Скрины.

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: pfsrebuild
« Ответ #66 : 01 Июнь 2019, 20:38:51 »
Косяк проявляется и в магос.  Tar по непонятной причине меняет пользователя на папки при этом сохраняя на файлы. Чет не гуглится как лечить.
Есть вариант заменить на цикл с cp -a --parent, но это однозначно приведет к тормозам. Возможно весьма существенным. Вкраце задача такая. Копировать файлы из системы в папку по списку из файла. С сохранением прав и путей.
Пока ничего менять не буду. Давайте думать.
https://github.com/pfs-utils/pfs-utils-cli/blob/v4/project-files/usr/bin/pfsrebuild
строка 50

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #67 : 01 Июнь 2019, 22:09:29 »
Если в pfsrebuild закавычить allow_only_root (17 строка), то создается папка build_083-firefox-profile_any-kr7 с правильными правами. Может натолкнет на решение?
Код
$ pfsrebuild 083-firefox-profile_any-kr7                      
Only root can run /usr/local/bin/mkpfs

can't create module
Код
live@prar-1811 ..zilla/firefox/5jsgis9h.default-release % ls -l |grep dr
drwxr-xr-x 2 live live      80 июн  1 22:00 bookmarkbackups
drwx------ 3 live live      80 июн  1 20:58 crashes
drwxr-xr-x 3 live live     100 июн  1 22:00 datareporting
drwxr-xr-x 2 live live     240 июн  1 22:00 extensions
drwx------ 2 live live      40 июн  1 20:58 gmp
drwxr-xr-x 3 live live      60 июн  1 22:00 gmp-gmpopenh264
drwx------ 2 live live      40 мая 27 17:24 minidumps
drwxr-xr-x 5 live live     100 июн  1 20:58 storage
drwxr-xr-x 6 live live     140 июн  1 22:00 weave


Хотя это очевидно, что без sudo там нечему менять пользователя у папок. :)
« Последнее редактирование: 01 Июнь 2019, 22:16:13 от krasnyh »

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #68 : 07 Апрель 2020, 12:05:32 »
Косяк проявляется и в магос.  Tar по непонятной причине меняет пользователя на папки при этом сохраняя на файлы. Чет не гуглится как лечить.
Есть вариант заменить на цикл с cp -a --parent, но это однозначно приведет к тормозам. Возможно весьма существенным.
Подвижки есть или заброшено?


Я делал на днях модуль для пазла и по привычке создавал директории mkdir -p. В результате ушли права у папки /var/lib/private и получил не запуск пазла при тесте.
Далее уже работал с cp -a --parent, успешно.

А mc умеет создавать директории или копировать с директориями? То что атрибуты умеет сохранять, я в курсе.
« Последнее редактирование: 07 Апрель 2020, 12:07:06 от krasnyh »

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: pfsrebuild
« Ответ #69 : 07 Апрель 2020, 14:50:41 »
Не возвращался к этому вопросу.

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #70 : 16 Апрель 2020, 15:18:22 »
Там tar чудит, а tar я чинить не умею, а значит все переписывать
Знаю, что sfs проверяет свои скрипты командой sh -vx.
На просторах инета нашел https://www.shellcheck.net/ (git), для таких же целей (имхо). Полезная штука или нет, не мне судить. :)
Скрин.


p.s. Понятно, что к теме багов pfsrebuild, и tar в частности, это не имеет отношения, но не знал куда еще приткнуть эту информацию.
Но именно pfsrebuild первым прогнал через этот сервис и скрин о нем.
« Последнее редактирование: 16 Апрель 2020, 15:20:40 от krasnyh »

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: pfsrebuild
« Ответ #71 : 07 Май 2020, 13:22:17 »
Krasnyh, просьба к Вам. Попробуйте заменить в скрипте pfsrebuild строку 55
tar -c -p --ignore-failed-read --no-recursion -T $fileslist  2>/dev/null | tar -x -p -C ${buildir}

на такую
cpio -pd ${buildir} < "$fileslist"

И проверить то что у вас работало некорректо с правами.

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #72 : 07 Май 2020, 13:50:33 »
Думаю не только у меня, а у всех. Желающие могут проверить на модуле профиля браузера 083-firefox-profile_any или 083-palemoon-profile. Проверочная команда sudo pfsrebuild модуль_профиля.


cpio -pd ${buildir} < "$fileslist"
Тоже самое:
Цитата
..zilla/firefox/5jsgis9h.default-release % ll |grep root
drwxr-xr-x 2 root root     147 мая  7 13:40 bookmarkbackups
drwxr-xr-x 3 root root      75 мая  7 13:40 datareporting
drwxr-xr-x 3 root root      30 мая  7 13:40 gmp-gmpopenh264
drwxr-xr-x 2 root root      47 мая  7 13:40 mediacapabilities
drwxr-xr-x 2 root root      36 мая  7 13:40 security_state
drwxr-xr-x 5 root root     112 мая  7 13:40 weave

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: pfsrebuild
« Ответ #73 : 07 Май 2020, 13:53:28 »
Дело в том, что я то тоже проверил. Сменил пользователя на файл в 88-magos.xzm. Файл попал в changes и после пересборки модуля права сохранились.
Опишите как словить косяк.

Файл в изначальном модуле.
rosa scripts # unsquashfs -ll /memory/layer-base/0/base/88-magos.xzm | grep usr/lib/magos/scripts/share.ftp
-rwxr-xr-x root/root              1024 2015-12-28 14:34 squashfs-root/usr/lib/magos/scripts/share.ftp

Файл в системе со смененным владельцем
rosa scripts # ls -la /usr/lib/magos/scripts/share.ftp
-rwxr-xr-x 1 betcher betcher 1024 дек 28  2015 /usr/lib/magos/scripts/share.ftp*

Файл в пересобранном модуле
rosa scripts # unsquashfs -ll ./88-magos.xzm | grep usr/lib/magos/scripts/share.ftp
-rwxr-xr-x betcher/betcher        1024 2020-05-07 13:57 squashfs-root/usr/lib/magos/scripts/share.ftp
« Последнее редактирование: 07 Май 2020, 14:01:30 от betcher »

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: pfsrebuild
« Ответ #74 : 07 Май 2020, 14:10:43 »
Опишите как словить косяк.
Проще наверно проверять в prar1912-x86_64-05.iso, раз уже есть навыки его использования. Может в PRA есть отличия от MagOS.

Запустить prar1912. В /modules есть профиль basilisk, sudo pfsrebuild 083-basilisk-gtk3-profile_any-sf06.pfs.