Данные OpenLDAP производили чистку/хлестали на обновлении сервера Ubuntu 12.04 к 14.04 LTS

Я обновил свой сервер Ubuntu от 12,04 до 14,04 использующих стандартных-обновлений-версии.

После обновления я нашел, что мои данные каталога OpenLDAP очищены. Это - неожиданный результат обновления. Я не думаю, что многие люди ожидаемые данные по серверу, чтобы быть очищаться или хлестаться как часть стандартного обновления обрабатывают.

Но кто-то, должно быть, думал это как неизбежное и необходимое иначе, что это было бы не быть частью обновления. Вопрос теперь состоит в том, если этот человек или люди также думали о восстановлении данных после этой неожиданной чистки данных.

Я не могу найти информацию. Как я восстанавливаю эти данные? Эти данные все еще доступны где-нибудь на сервере для легкого восстановления?

Установка выглядит поврежденной теперь, например, когда я пробую

ostraaten@ubuntu:~$ sudo dpkg-reconfigure slapd
[sudo] password for ostraaten: 
/usr/sbin/dpkg-reconfigure: slapd is broken or not fully installed
-1
задан 22 December 2014 в 12:43
1 ответ

Я исправил эту проблему следующим образом: Полное удаление OpenLDAP с помощью

sudo service slapd stop
sudo apt-get -y remove --purge slapd
rm -rf /var/lib/ldap
sudo rm -rf /etc/ldap/
sudo apt-get -y remove --purge ldap-utils

Install + restore of backup с помощью скрипта, аналогичного

#!/bin/bash
# 
set -x #echo on
export LC_ALL=en_US.UTF-8 
export DEBIAN_FRONTEND=noninteractive
echo -e " \
slapd slapd/internal/generated_adminpw password ******
slapd slapd/password2 password ******
slapd slapd/internal/adminpw password ******
slapd slapd/password1 password ******
slapd slapd/allow_ldap_v2 boolean false
slapd slapd/move_old_database boolean true
slapd slapd/dump_database_destdir string /var/backups/slapd-VERSION
slapd slapd/domain string mydomain.com
slapd slapd/dump_database select when needed
slapd slapd/invalid_config boolean true
slapd slapd/no_configuration boolean false
slapd shared/organization string MyDomain.com
slapd slapd/backend select HDB
slapd slapd/purge_database boolean true
slapd slapd/upgrade_slapcat_failure error   
slapd slapd/password_mismatch note" | sudo debconf-set-selections
sudo apt-get install -y slapd ldap-utils
sudo usermod -a -G openldap user # add user user to openldap group
sudo service slapd status
sudo service slapd start
sudo slapcat

# change root-pw
cat <<EOT >> /home/ostraaten/1-olc-root-pw.ldif
dn: olcDatabase={1}hdb,cn=config 
replace: olcRootPW
olcRootPW: {SSHA}******
EOT
sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f 1-olc-root-pw.ldif
ldapwhoami -vvv -h localhost -p 389  -D cn=admin,dc=mydomain,dc=com -x -w ******

# add memberof attribuut
cat <<EOT >> 2-overlay.ldif
dn: cn=module,cn=config
objectClass: olcModuleList
cn: module
olcModulePath: /usr/lib/ldap
olcModuleLoad: memberof

dn: olcOverlay=memberof,olcDatabase={1}hdb,cn=config
objectClass: olcMemberOf
objectClass: olcOverlayConfig
objectClass: olcConfig
objectClass: top
olcOverlay: memberof
olcMemberOfDangling: ignore
olcMemberOfRefInt: TRUE
olcMemberOfGroupOC: groupOfNames
olcMemberOfMemberAD: member
olcMemberOfMemberOfAD: memberOf
EOT
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f 2-overlay.ldif

# create schema using backup ldif
cat <<EOT >> 3-ok.ldif
dn: ou=people,dc=mydomain,dc=com
objectClass: organizationalUnit
objectClass: top
ou: people

dn: ou=groups,dc=mydomain,dc=com
objectClass: organizationalUnit
objectClass: top
ou: groups

# etc etc
EOT
ldapadd -h localhost -p 389 -D cn=admin,dc=mydomain,dc=com -w ****** -f 3-ok.ldif
0
ответ дан 5 December 2019 в 20:39

Теги

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