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

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

    <bug>
          <bug_id>36620</bug_id>
          
          <creation_ts>2019-04-17 17:49:45 +0300</creation_ts>
          <short_desc>не загружаются crontab пользователей из ldap</short_desc>
          <delta_ts>2024-04-01 18:57:00 +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>vixie-cron</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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="Vadim Gusev">kopilo4ka</reporter>
          <assigned_to name="placeholder@altlinux.org">placeholder</assigned_to>
          <cc>glebfm</cc>
    
    <cc>ldv</cc>
    
    <cc>nekapitan2009</cc>
    
    <cc>placeholder</cc>
    
    <cc>shaba</cc>
    
    <cc>vt</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>180913</commentid>
    <comment_count>0</comment_count>
    <who name="Vadim Gusev">kopilo4ka</who>
    <bug_when>2019-04-17 17:49:45 +0300</bug_when>
    <thetext>Имеем систему с авторизацией пользователей через ldap с помощью nslcd.
У пользователя jenkins настроены запуски задач в crontab. При загрузке сервера в момент запуска crond пользователь jenkins не существует, т. к. nslcd еще не запустился и crond, при попытке прочитать crontab пользователя, выдает ошибку:

crond[1028]: (jenkins) ORPHAN (no passwd entry)

Предлагается добавить патч, решающий эту проблему:

# diff -u /lib/systemd/system/crond.service.orig /lib/systemd/system/crond.service
--- /lib/systemd/system/crond.service.orig      2019-04-17 17:37:36.388205867 +0300
+++ /lib/systemd/system/crond.service   2019-04-17 16:42:09.136053899 +0300
@@ -1,6 +1,6 @@
 [Unit]
 Description=Vixie Cron Daemon
-After=syslog.target systemd-user-sessions.service
+After=syslog.target systemd-user-sessions.service nslcd.service

 [Service]
 ExecStart=/usr/sbin/crond -n

Вероятно slapd тоже можно добавить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>180918</commentid>
    <comment_count>1</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2019-04-17 22:53:00 +0300</bug_when>
    <thetext>(In reply to comment #0)
&gt; Имеем систему с авторизацией пользователей через ldap с помощью nslcd.
[...]
&gt; Вероятно slapd тоже можно добавить.

Не должен cron знать, как у вас реализована passwd database.
Невозможно каждую службу, использующую passwd database, обучить всем мыслимым службам, которые могут реализовывать passwd database.
Name Service Switch создан для того, чтобы обычным приложениям не надо было задумываться о том, как реализована passwd database в каждой конкретной системе.

Надеюсь, что в systemd есть способ описать то, что вы хотите, не зашивая в каждую службу, использующую passwd database, информацию о каждой службе, которая в принципе может реализовывать passwd database.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243872</commentid>
    <comment_count>2</comment_count>
    <who name="Горев Андрей">nekapitan2009</who>
    <bug_when>2024-04-01 18:57:00 +0300</bug_when>
    <thetext>   Та же херь происходит и без LDAP. К примеру:
1. отредактировал crontab юзверь через crontab -e;
2. и хрен изменения начинают работать;
3. исправить можно только с помощью systemctl reload crond. Но, извините, это у меня есть права выполнить такую команду! А что делать обычному юзверю?</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>