sldap.d отсутствует после установки

Я следую инструкциям на http://www.openldap.org/doc/admin24/quickstart.html для установки OpenLDAP на RedHat. Все идет нормально до шага 9: Затем я попробовал запустить только / usr / local / sbin / slapadd -n 0 -F /usr/local/etc/slapd.d -l /usr/local/etc/openldap/slapd.ldif, поскольку я уже вошел в систему как пользователь root, то я получаю эту ошибку:

 5bcca422 invalid config directory /usr/local/etc/slapd.d, error 2
    slapadd: bad configuration directory! 

Мой префикс установки - это значение по умолчанию / usr / local /

Я считаю, что в slapd.d в / usr / local / etc каталог. В чем проблема? Спасибо!

Дополнительная информация: Когда я запустил make на шаге 5, я получил сообщение об ошибке: фатальная ошибка: ltdl.h: нет такого файла или каталога , затем я установил его с yum install libtool-ltdl-devel и повторил шаг 5. Когда я запустил make test на шаге 6, ошибки нет. Не знаю, поможет ли эта дополнительная информация.

-1
задан 22 October 2018 в 23:08
3 ответа

Возможно, вы можете попробовать : mkdir /usr/local/etc/slapd.d

-1
ответ дан 5 December 2019 в 20:59

Местоположение конфигурационных файлов по умолчанию задано как параметр build configuration --sysconfdir. Значение по умолчанию зависит от значения, используемого для --prefix.

$ ./configure --help
  --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]

Таким образом, то, что используется в вашем случае, зависит от конфигурации сборки.

При запуске slapd вы также можете указать конфигурацию, которая будет использоваться с опциями командной строки -f для статического конфигурирования или -F для каталога, содержащего динамический конфигурационный файл. Это очень удобно для использования локальной test-bed-конфигурации или для того, чтобы держаться подальше от того, что пакеты ОС портят во время установки пакета.

На man-странице slapd(8), локально установленной на вашей системе, будут показаны фактические значения по умолчанию для вашей сборки. Помните, что man-страницы, предоставляемые пакетами ОС, отличаются от ваших локальных сборок исходным кодом.

Также я бы порекомендовал а не использовать пакеты RHEL/CentOS. Вы должны использовать предварительно собранные RPM, предоставляемые проектом LDAP Toolbox. Они используют опцию сборки --prefix=/usr/local/openldap и поэтому динамическая конфигурация БД будет находиться по умолчанию /usr/local/openldap/etc/openldap/slapd.d/.

См. также: slapd(8)

0
ответ дан 5 December 2019 в 20:59

Чтобы избежать ошибки su: недопустимая опция -- 'n', вы можете поставить кавычки, как показано ниже:

su root -c '/usr/local/sbin/slapadd -n 0 -F /usr/local/etc/slapd.d -l /usr 
/local/etc/openldap/slapd.ldif'

Обратите внимание, что я поместил часть после -c в кавычки.

Что касается slapd.d, мне помогло создание каталога:

sudo mkdir /usr/local/etc/slapd.d

клиент сразу запросит пароль. После этого на моей консоли выглядит так:

_#################### 100.00% eta   none elapsed            none fast!
1
ответ дан 27 December 2020 в 20:45

Теги

Похожие вопросы