18.02.2016 17:55, Alexey Shabalin пишет: > 18 февраля 2016 г., 15:49 пользователь Aleksey Avdeev > написал: >> 18.02.2016 02:26, Dmitry V. Levin пишет: >>> On Mon, Feb 15, 2016 at 01:06:23PM +0300, Alexey Shabalin wrote: >>>> 11 февраля 2016 г., 9:06 пользователь Aleksey Avdeev написал: >>>>> 10.02.2016 23:41, Aleksey Avdeev пишет: >>>>> ... >>>>>> >>>>>> 2. sysvinit-tmpfiles-0.1-alt0.M70T.1 (см. >>>>>> ) >>>>>> -- Поддержка tmpfiles для sysvinit. >>>>> >>>>> В вариант для Сизифа: >>>>> sysvinit-tmpfiles-0.1-alt1 (см. >>>>> ). >>>> >>>> Алексей, в задании #159059 новый systemd-229, в который добавлен ваш >>>> сервис tmpfiles, с небольшими моими правками. >>> >>> Там в пакет systemd-utils просочились %_initdir/tmpfiles и >>> %_sysconfdir/cron.daily/tmpfiles; если эти файлы не нужны >>> для systemd-only системы, то их надо убрать из systemd-utils. >> >> По результатам экспериментов с sysvinit-tmpfiles у меня сложилось >> мнение, что наиболее простой вариант получения чистых systemd-only >> систем -- вынос поддержки sysvinit в отдельные подпакеты, например с >> названиями вида *-sysvinit (тогда на systemd-only системах их можно не >> ставить). Причины: > > Нет, не надо придумывать никаких дополнительных пакетов вида *-sysvinit. > >> 1. Для нормальной установки на систему под systemd, пакет содержащий >> %_initdir/ должен содержать и /lib/systemd/system/.service. >> Иначе при установки пакета будут наблюдаться ошибки (см. >> ). > Да, именно должен. И robocop обучен искать ошибки. > > >> 2. При этом симлинк вида /lib/systemd/system/.service -> /dev/null >> к исправлении ситуации не приводит. > > исправляет У меня не получилось, цитирую (читать симлинк /lib/systemd/system/tmpfiles.service -> /dev/null): > Похоже симлинк /lib/systemd/system/tmpfiles -> /dev/null не > помогает... При установке под systemd наблюдаю следующее: > > $ sudo -H apt-get install sysvinit-tmpfiles > ... > Preparing... ################################## [100%] > 1: sysvinit-tmpfiles ################################## [100%] > Failed to issue method call: No such file or directory > Running /usr/lib/rpm/posttrans-filetriggers > Done. Т. е. у меня симлинк /lib/systemd/system/tmpfiles.service -> /dev/null данную ошибку ("Failed to issue method call: No such file or directory" при установке пакета) не исправлял... Или это опять, разница между версиями в Сизифе и t7? > >> А симлинк на реальный service, вида >> /lib/systemd/system/.service -> >> /lib/systemd/system/.service, приведёт к зависимости на >> пакет его содержащий, что не всегда допустимо. > Ничего не приведет ни к каким зависимостям, потому что эти симлинки и > цель должны быть в одном пакете. Это механизм alias, не надо его > использовать для чего-то другого. OK. Прошу в добавить systemd alias вида tmpfiles.service -> systemd-tmpfiles-setup.service. > >> 3. В свете предыдущего пункта, исключения зависимости на пакет >> содержащий /lib/systemd/system/.service, пакету с >> %_initdir/ потребуется: >> >> а) обвить /lib/systemd/system/.service как %ghost; >> >> б) иметь тригер, отслеживающий установку/удаление/наличие пакета >> содержащего .service и в зависимосте от этого >> создающего/удаляющего симлинк .service -> .service. > > Не надо придумывать лишние не нужные интелекты. Согласен. Это излишний источник ненадёжности на пустом месте. -- С уважением. Алексей.