Как удалить DIT с сервера OpenLDAP?

593
Graham Leggett

У меня есть необходимость удалить DIT из установки OpenLDAP v2.4.

Создание DIT описано на http://www.openldap.org/doc/admin24/dbtools.html, однако удаление / удаление DIT не документировано.

Основная проблема, которую я пытаюсь решить, - это обойти поведение Ubuntu v14.04, когда система определяет конфигурацию OpenLDAP на основе имени хоста. У меня есть необходимость удалить эту конфигурацию и создать правильную.

Этот процесс автоматизирован как часть оркестровки системы, поэтому интерактивные механизмы не подойдут.

Я нашел совет 2004 года, в котором предлагалось удалить дерево / var / lib / ldap с помощью rm -rf. Это все еще рекомендуемое решение этой проблемы?

В качестве альтернативы, существует ли неинтерактивный механизм для настройки OpenLDAP DIT в системе Ubuntu v14.04?

0

1 ответ на вопрос

0
grawity

Вы все равно уже заменяете всю конфигурацию, так что просто продолжайте и rm -rfвсе, и скопируйте / extract / unzip / etc. новая конфигурация на своем месте. В конце концов, есть несколько настроек, а не только автоматически сгенерированный DIT.

Кроме того, как мне сказали, пакет Debian / Ubuntu не будет угадывать, если вы извлечете свою пользовательскую конфигурацию перед установкой пакета.

Официальный способ - отключить его через debconf:

echo "slapd slapd/no_configuration boolean true" | debconf-set-selections 

Тем не менее, чтобы удалить конкретный DIT, вам необходимо:

  1. удалите его из конфигурации slapd:

    При использовании статики slapd.confвам необходимо каким-то образом удалить параметр «база данных» и все его параметры конфигурации.

    С динамическим cn=config, кажется, что самые последние версии OpenLDAP позволяют вам только ldapdeleteзапись конфигурации, но более старые все еще требуют, чтобы вы остановили slapd и удалили файлы вручную /etc/ldap/slapd.d/cn=config/….

    Но в любом случае, если вы уже устанавливаете полную пользовательскую конфигурацию, вы можете полностью удалить старую.

  2. удалите его из файловой системы, поскольку slapd не удалит данные самостоятельно:

    Фактическая база данных - это набор файлов. Если вы хотите удалить их, сделайте это с помощью rm -rf.