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

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

    <bug>
          <bug_id>26390</bug_id>
          
          <creation_ts>2011-09-29 09:59:01 +0400</creation_ts>
          <short_desc>Странное поведение init-скриптов</short_desc>
          <delta_ts>2011-09-29 12:11:26 +0400</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>zarafa</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></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Radik Usupov">radik</reporter>
          <assigned_to name="Lenar Shakirov">snejok</assigned_to>
          <cc>aen</cc>
    
    <cc>boyarsh</cc>
    
    <cc>radik</cc>
    
    <cc>rider</cc>
    
    <cc>vitty</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>125754</commentid>
    <comment_count>0</comment_count>
    <who name="Radik Usupov">radik</who>
    <bug_when>2011-09-29 09:59:01 +0400</bug_when>
    <thetext>Коллеги, наблюдаю странное поведение init-скриптов в разных виртуальных окружениях и ядрах. Не знаю что с чем связано, поэтому прошу помочь разобраться.
Суть:
Есть виртуалка на openvz, с ядром 2.6.18-ovz-rhel-alt13.M51.18 #1 SMP Thu Dec 23 14:07:02 UTC 2010 x86_64 GNU/Linux
Есть виртуалка на kvm, я ядром 2.6.38-std-def-alt8.1 #1 SMP Fri Jun 3 10:16:35 UTC 2011 x86_64 GNU/Linux
На обоих системах р6.
Рассмотрим на примере init-скрипта zarafa-spooler.
Если запускать через /etc/init.d/zarafa-spooler, то все запускается и работает.
Но если захотеть узнать статус через /etc/init.d/zarafa-spooler status, то на виртуалке с openvz получим ошибку &quot;zarafa-spooler is dead, but stale PID file exists&quot;. На виртуалке с kvm все отрабатывает как надо.
После выяснений причин такого поведения, оказалось, что это из-за параметра &quot;--expect-user root&quot; в init-скрипте. Если его убрать, то все нормально отрабатывает.

Когда писал скрипты для Zarafa использовал для примера /etc/init.d/template

Собственно мои патчи:
init-скрипт: http://git.altlinux.org/people/radik/packages/?p=zarafa.git;a=blob;f=patches/zarafa-7.0rc2-alt-use-init.alt.patch;h=93d3bfd92b990d76025721745f19b39fb459c67e;hb=HEAD#l890
Оригинал для RH: http://git.altlinux.org/people/radik/packages/?p=zarafa.git;a=blob;f=zarafa/installer/linux/zarafa-spooler.init.rhel;h=09e83c9b7d1d337169c70f5b0b94f2a420969c77;hb=HEAD

Пошу помочь разобраться с багой, ибо совсем не комильфо.
Спасибо!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125755</commentid>
    <comment_count>1</comment_count>
    <who name="Vitaly Kuznetsov">vitty</who>
    <bug_when>2011-09-29 11:29:41 +0400</bug_when>
    <thetext>Ядра тут ни при чём.

Могу предположить, что демоны свитчатся в пользователей собственными средствами, т.е. работают не под root. Достаточно посмотреть ps aux | grep zarafa. Если это так, то и параметр expect-user должен быть иным.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125756</commentid>
    <comment_count>2</comment_count>
    <who name="Radik Usupov">radik</who>
    <bug_when>2011-09-29 11:37:35 +0400</bug_when>
    <thetext>Виталий спасибо!
Так как пользователь может  менять пользователя, от которого может запускаться zarafa, я вообще убрал эти параметры.
Результатом стал вот этот коммит: http://git.altlinux.org/people/radik/packages/?p=zarafa.git;a=commit;h=807ec93c7eeeebd86b2c3e9c47f0199662a61e6b

Спасибо!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125757</commentid>
    <comment_count>3</comment_count>
    <who name="Vitaly Kuznetsov">vitty</who>
    <bug_when>2011-09-29 12:04:21 +0400</bug_when>
    <thetext>Если пользователи, под которыми запускаются демоны, являются настройками в конфигах, то с точки зрения безопасности лучше эти параметры достать и использовать в init-скрипте (установить expect-user в ожидаемое значение).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125758</commentid>
    <comment_count>4</comment_count>
    <who name="Radik Usupov">radik</who>
    <bug_when>2011-09-29 12:11:26 +0400</bug_when>
    <thetext>Виталий, если научишь, буду благодарен.
Хотя бы пример уже существующего в альте пакета.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>