Bug 36620 - не загружаются crontab пользователей из ldap
Summary: не загружаются crontab пользователей из ldap
Status: NEW
Alias: None
Product: Sisyphus
Classification: Development
Component: vixie-cron (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: placeholder@altlinux.org
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-04-17 17:49 MSK by Vadim Gusev
Modified: 2019-04-17 22:53 MSK (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Vadim Gusev 2019-04-17 17:49:45 MSK
Имеем систему с авторизацией пользователей через 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 тоже можно добавить.
Comment 1 Dmitry V. Levin 2019-04-17 22:53:00 MSK
(In reply to comment #0)
> Имеем систему с авторизацией пользователей через ldap с помощью nslcd.
[...]
> Вероятно slapd тоже можно добавить.

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

Надеюсь, что в systemd есть способ описать то, что вы хотите, не зашивая в каждую службу, использующую passwd database, информацию о каждой службе, которая в принципе может реализовывать passwd database.