<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>31740</bug_id>
          
          <creation_ts>2016-01-28 21:53:51 +0300</creation_ts>
          <short_desc>Нет механизма воссоздания /var/run/dbus под sysvinit</short_desc>
          <delta_ts>2016-07-25 22:18:12 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>dbus</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>https://lists.altlinux.org/pipermail/sysadmins/2016-January/037392.html</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>NMU, backport, patch, systemd</keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>31718</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="solo">solo</reporter>
          <assigned_to name="Valery Inozemtsev">shrek</assigned_to>
          <cc>asy</cc>
    
    <cc>d20052005</cc>
    
    <cc>shrek</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>154745</commentid>
    <comment_count>0</comment_count>
    <who name="solo">solo</who>
    <bug_when>2016-01-28 21:53:51 +0300</bug_when>
    <thetext>В текущем dbus отсутствует механизм воссоздания каталогов /var/run/dbus{,/users}, работающий под sysvinit. При размещении /var/run на tmpfs (например как симлинк на /run), это приводит к неработоспособности dbus sysvinit.

Предлагаю:

1. Обеспечить функционирование systemd-tmpfiles под sysvinit (см. https://bugzilla.altlinux.org/show_bug.cgi?id=31718).

2. Настроить создание каталогов /var/run/dbus{,/users} через /lib/tmpfiles.d/dbus.conf.

PS:

1. Несмотря на отсутствие соответствующих настроек в {/etc,{,/usr}/lib}/tmpfiles.d/, systemd каталог /var/run/dbus воссоздаёт. Возможно он использует информацию из /lib/systemd/system/dbus.socket.

2. Я наткнулся на подобное в p7/t7 (см. https://lists.altlinux.org/pipermail/sysadmins/2016-January/037392.html), но судя по коду данная ситуация характерна и для Сизифа.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>154751</commentid>
    <comment_count>1</comment_count>
    <who name="solo">solo</who>
    <bug_when>2016-01-29 14:07:39 +0300</bug_when>
    <thetext>(В ответ на комментарий №0)
...
&gt; Предлагаю:
...
&gt; 2. Настроить создание каталогов /var/run/dbus{,/users} через
&gt; /lib/tmpfiles.d/dbus.conf.

В http://git.altlinux.org/tasks/156794/ собран dbus-1.10.6-alt1.1 (см. http://git.altlinux.org/people/solo/packages/?p=dbus.git;a=commit;h=5b8fc455dbcabade3fdbcc527bb1e8efea775351) -- тестовый вариант для оценки предлагаемых изменений.

В http://git.altlinux.org/tasks/156795/ собран dbus-1.6.30-alt0.M70T.2.1 (см. http://git.altlinux.org/people/solo/packages/?p=dbus.git;a=commit;h=f909b3dc1d6a1db695a07f08a5af933abaa164a1) -- тестовый вариант порта предлагаемых изменений на p7.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>154763</commentid>
    <comment_count>2</comment_count>
    <who name="solo">solo</who>
    <bug_when>2016-01-30 02:57:22 +0300</bug_when>
    <thetext>(В ответ на комментарий №1)
...
&gt; В http://git.altlinux.org/tasks/156795/ собран dbus-1.6.30-alt0.M70T.2.1 (см.
&gt; http://git.altlinux.org/people/solo/packages/?p=dbus.git;a=commit;h=f909b3dc1d6a1db695a07f08a5af933abaa164a1)
&gt; -- тестовый вариант порта предлагаемых изменений на p7.

Тестирование (совместное с systemd-201-alt1.M70T.2.2, см. https://bugzilla.altlinux.org/show_bug.cgi?id=31718) 1.6.30-alt0.M70T.2.2 (см. http://git.altlinux.org/people/solo/packages/?p=dbus.git;a=commit;h=3ab91a455abb1a7375fbc98bf4f80ad6b5dad5aa) показало, что заявленные цели
достигнуты: под systemd и sysvinit каталоги /var/run/dbus{,/users} создаются и dbus нормально работает в следующих конфигурациях:

а) /run, /var/run и /var/lock отдельные каталоги;

б) /run каталог + симлинки /var/run -&gt; /run и /var/lock -&gt; /run/lock;

Финальные подготовленные варианты, для соответствующих репозиториев, ждут
одобрения (отправлены на тестовую сборку):

1. Для Сизифа -- dbus-1.10.6-alt2 (см. http://git.altlinux.org/people/solo/packages/?p=dbus.git;a=commit;h=c0502f59c2d01b9a2ae359ead011fcfa96228775) в http://git.altlinux.org/tasks/156794/.

2. Для t7 -- dbus-1.6.30-alt0.M70T.3 (см. http://git.altlinux.org/people/solo/packages/?p=dbus.git;a=commit;h=1f47a54b79a5219163e3fbabc4ccf38e4779b4cf) в http://git.altlinux.org/tasks/156795/.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>154810</commentid>
    <comment_count>3</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2016-02-02 14:17:11 +0300</bug_when>
    <thetext>/var/run/dbus/users/dbus-XXXXXXXXXX это абстрактный сокет и обозвать его можно как угодно. на файловой системе ему быть не обязательно</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>154815</commentid>
    <comment_count>4</comment_count>
    <who name="solo">solo</who>
    <bug_when>2016-02-02 18:23:56 +0300</bug_when>
    <thetext>(В ответ на комментарий №3)
&gt; /var/run/dbus/users/dbus-XXXXXXXXXX это абстрактный сокет и обозвать его можно
&gt; как угодно. на файловой системе ему быть не обязательно

Т. е. если dbus, настроенный на открытие некоего /var/run/dbus/users/dbus-XXXXXXXXXX сможет нормально стартовать, при отсутствии каталога /var/run/dbus/users?

А как быть при отсутствии /var/run/dbus? При его отсутствии dbus падает при старте (по крайней мере dbus-1.6.30-alt0.M70T.2 при старте из под sysvinit) -- падает из-за отсутствия каталога для размещения /var/run/dbus/system_bus_socket (описано в https://lists.altlinux.org/pipermail/sysadmins/2016-January/037392.html).

Багу переоткрываю.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>155787</commentid>
    <comment_count>5</comment_count>
    <who name="solo">solo</who>
    <bug_when>2016-03-20 19:29:02 +0300</bug_when>
    <thetext>Повесил https://bugs.freedesktop.org/show_bug.cgi?id=94638.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>155840</commentid>
    <comment_count>6</comment_count>
    <who name="solo">solo</who>
    <bug_when>2016-03-23 11:27:02 +0300</bug_when>
    <thetext>*** Bug 31906 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>155847</commentid>
    <comment_count>7</comment_count>
    <who name="solo">solo</who>
    <bug_when>2016-03-23 21:07:56 +0300</bug_when>
    <thetext>В связи с https://bugzilla.altlinux.org/show_bug.cgi?id=31906 реанимировал протухшие таски:

(В ответ на комментарий №2)
...
&gt; 
&gt; Финальные подготовленные варианты, для соответствующих репозиториев, ждут
&gt; одобрения (отправлены на тестовую сборку):
&gt; 
&gt; 1. Для Сизифа -- dbus-1.10.6-alt2 (см.
&gt; http://git.altlinux.org/people/solo/packages/?p=dbus.git;a=commit;h=c0502f59c2d01b9a2ae359ead011fcfa96228775)
&gt; в http://git.altlinux.org/tasks/156794/.

Теперь в http://git.altlinux.org/tasks/161915.

&gt; 
&gt; 2. Для t7 -- dbus-1.6.30-alt0.M70T.3 (см.
&gt; http://git.altlinux.org/people/solo/packages/?p=dbus.git;a=commit;h=1f47a54b79a5219163e3fbabc4ccf38e4779b4cf)
&gt; в http://git.altlinux.org/tasks/156795/.

Теперь в http://git.altlinux.org/tasks/161916.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>155874</commentid>
    <comment_count>8</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2016-03-25 08:54:10 +0300</bug_when>
    <thetext>Собственно, repocop давно предупреждает про subdir-in-var-run. 
Предлагаю вставить в init-скрипт что-то вроде

[ -d &quot;/var/run/dbus&quot; ] || {
    mkdir -m 755 &quot;/var/run/dbus&quot;
}
[ -d &quot;/var/run/dbus/users&quot; ] || {
        mkdir -m 1777 &quot;/var/run/dbus/users&quot;
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>157783</commentid>
    <comment_count>9</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2016-07-25 22:18:12 +0300</bug_when>
    <thetext>исправлено в 1.10.8-alt1</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>