Summary: | Не выполнять cron-скрипты в fake'овом окружении | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | Sisyphus | Reporter: | Denis Smirnov <mithraen> | ||||||
Component: | man | Assignee: | Slava Semushin <php-coder> | ||||||
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus | ||||||
Severity: | normal | ||||||||
Priority: | P2 | CC: | ldv, voins | ||||||
Version: | unstable | ||||||||
Hardware: | all | ||||||||
OS: | Linux | ||||||||
Attachments: |
|
Description
Denis Smirnov
2007-04-12 18:28:44 MSD
Не может этого быть:
$ rpmquery -p --scripts x86_64/RPMS/man-1.5m2-alt4.x86_64.rpm
preinstall scriptlet (through /bin/sh):
/usr/sbin/useradd -r -g man -d /var/cache/man -s /dev/null -n cacheman
>/dev/null 2>&1 ||:
Я полагаю, что речь идёт о каком-то другом пакете. rpm -qf /etc/cron.weekly/makewhatis man-1.5m2-alt4 из man.spec: %triggerpostun -- %name < 1.5m2-alt2 echo -n 'Rebuilding whatis database... ' /etc/cron.weekly/makewhatis echo done. В этом скрипте содержится вызов su, со всеми вытекающими отсюда последствиями: su -l cacheman -s /bin/sh -c /usr/sbin/makewhatis я полагаю что fakeroot'у от этого плохеет. Если я не прав, на кого перевешивать? ;) Где ты взял man < 1.5m2-alt2? Гм. Извиняюсь, действительно дело не в этом триггере. Дело в том что во всех man-pages: %post -p /etc/cron.daily/makewhatis и, наверное, проще пофиксить это в самом этом скрипте, чем городить проверки во всех man-pages.* Ладно, хуже от этого не будет. Так. Давайте я попробую в этом разобраться, чтобы исправить баг. Во-первых, мне непонятно как и почему портятся права? Что это значит? Во-вторых, если я правильно понял, то править нужно не только /etc/cron.daily/makewhatis, но и /etc/cron.weekly/makewhatis. Я прав? Также я посмотрел мельком доку по fakechroot (http://fakechroot.alioth.debian.org/), в её мане вижу следующее: "FAKECHROOT The value is true for fake chroot environment." Если у нас та же версия что и у апстрима, то имеет смысл использовать именно эту переменную для проверки в чруте мы или нет (вместо FAKED_MODE/FAKEROOTKEY.). Да? В итоге. Я сейчас приложу предлагаемый мной патч. Мне хотелось бы услышать от вас ответы на свои вопросы и подтверждение/замечания по предлагаемому патчу. :-) Created attachment 2380 [details]
Proposal patch
Что-то не очень понял как проверить $FAKECHROOT true она или нет. То ли там
строка с текстом то ли просто 1 или 0.
2ldv@: Прошу от'review'ить мой патч и высказаться.
Короче, патч мой явно кривой. Может быть достаточно будет только проверки существования пемеренной? [ -z "$FAKECHROOT" ] ? Если нет, то как лучше проверить её значение? *ping* (In reply to comment #8) > Created an attachment (id=2380) [edit] > Proposal patch > > Что-то не очень понял как проверить $FAKECHROOT true она или нет. То ли там > строка с текстом то ли просто 1 или 0. Если проверять, то $FAKEROOTKEY Created attachment 2421 [details]
Новая версия патча
2ldv@: такой патч подойдёт?
(In reply to comment #12) > Created an attachment (id=2421) [edit] > Новая версия патча > > 2ldv@: такой патч подойдёт? Проверки можно склеить, но и так будет работать. (In reply to comment #13) > > 2ldv@: такой патч подойдёт? > Проверки можно склеить, но и так будет работать. Спасибо. // что-то мне комментарии по баге не приходили, оказывается меня почему-то нет в СС к баге.. В Сизиф ушел man-1.6f-alt1, в котором этот баг должен быть исправлен. |