Есть ли какая-либо плохая вещь, происходит, если я изменяю/etc/ldap/slapd.d/cn=config.ldif вручную?

Проверьте свою схему по активному каталогу для тех свойств. Это может помочь сделать их идентичными..

2
задан 16 April 2013 в 18:18
2 ответа

Если вы измените файлы LDIF в cn = config вручную, их содержимое и контрольные суммы не будут совпадать, что не фатально, но раздражает при использовании таких инструментов, как slapcat .

Правильное изменение cn = config с помощью ldapmodify очень болезненно, и в конечном итоге вы накопите тонны тщательно вручную созданных одноразовых файлов LDIF. По сравнению с простым редактированием slapd.conf это кошмар. В любом случае, если вам нужно внести изменения в конфигурацию среды выполнения, ldapmodify - ваш единственный вариант. Однако, если вы можете позволить себе некоторое время простоя, у вас есть два других яда на выбор.

Во-первых, есть сильно неподдерживаемый , но быстрый и грязный метод, который отлично работает для начальной конфигурации OpenLDAP, если вы знаете, что вы делаем:

$ service slapd stop
$ cp -a /etc/ldap/slapd.d /etc/ldap/slapd.d.old
<edit the LDIF files in /etC/ldap/slapd.d>
$ service slapd start

Если slapd запускается, он должен работать нормально, но всегда рекомендуется отслеживать / var / log / syslog при запуске службы:

$ tail -n 0 -f /var/log/syslog|grep slapd

Вы можете исправить ошибки контрольной суммы, используя slapcat и slapadd , как описано ниже.

Во-вторых, существует менее неподдерживаемый метод , который включает использование slapcat и slapadd ] (изменено из этих инструкций ):

$ slapcat -n0 -F /etc/ldap/slapd.d > config.ldif
<edit config.ldif>
$ mkdir /etc/ldap/slapd.d.new
$ slapadd -n0 -F /etc/ldap/slapd.d.new -l config.ldif

Если slapadd завершился успешно без ошибок, вы можете перейти в измененный каталог slapd.d. Согласно этот поток slapadd только добавляет данные, поэтому перезапись исходного содержимого каталога slapd.d невозможна. Поэтому нам нужно немного переместить каталоги:

$ service slapd stop
$ mv /etc/ldap/slapd.d /etc/ldap/slapd.d.old
$ mv /etc/ldap/slapd.d.new /etc/ldap/slapd.d
$ chown -R openldap:openldap /etc/ldap/slapd.d
$ service slapd start

Эти два более или менее неподдерживаемых метода делают жизнь с cn = config немного более терпимой.

10
ответ дан 3 December 2019 в 08:42

Когда вы видите файл с надписью

# AUTO-GENERATED FILE - DO NOT EDIT!! Use ldapmodify.

, вам следует следовать инструкциям по правильному изменению содержимого этого файла .

В этом В этом случае это означает, что обновляет конфигурацию OpenLDAP с помощью команды ldapmodify в соответствии с руководством OpenLDAP.
Это позволяет вам на лету вносить изменения в конфигурацию OpenLDAP и регенерировать файл slapd.conf (используется при запуске сервера LDAP в качестве конфигурации начальной загрузки)


Как правило, несоблюдение инструкций (например, «НЕ РЕДАКТИРУЙТЕ ЭТОТ ФАЙЛ, ПОТОМУ ЧТО ОН СОЗДАН АВТОМАТИЧЕСКИ!») приведет к боли и страданиям.

В этом конкретном случае вы можете обнаружить, что ваши изменения в файле будут стерты в следующий раз, когда кто-то сделает что-то правильным образом, и вам придется реконструировать вашу конфигурацию (вероятно, без записи об этом, поскольку файл вы отредактированный будет заменен).
В следующий раз, когда вы не примете во внимание подобное предупреждение, вы можете сделать систему не загружаемой или того хуже.

0
ответ дан 3 December 2019 в 08:42

Теги

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