*Drive*- Здесь рулят padonki

*Drive* - Counter Strike Source
Текущее время: 27 апр 2024, 09:37

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: OPENLDAP: lt_dlopenext failed: (back_bdb) file not found
СообщениеДобавлено: 01 сен 2023, 17:01 
Не в сети
padonki
Аватар пользователя

Зарегистрирован: 14 авг 2006, 20:43
Сообщений: 3751
Благодарил (а): 9 раз.
Поблагодарили: 96 раз.
При обновлении дистрибутива, отвалился OpenLDAP:

Вложение:
IMG_20230831_131330.jpg
IMG_20230831_131330.jpg [ 677.13 KiB | Просмотров: 61092 ]


Код:
Backing up /etc/ldap/slapd.d in /var/backups/slapd-2.4.57+dfsg-2ubuntu1... done.
  Moving old database directories to /var/backups:
  - directory dc=padonak,dc=su... done.
  Loading from /var/backups/slapd-2.4.57+dfsg-2ubuntu1:
  - directory dc=padonak,dc=su... failed.

Loading the database from the LDIF dump failed with the following
error while running slapadd:
    lt_dlopenext failed: (back_bdb) file not found
    config error processing cn=module{0},cn=config: <olcModuleLoad> handler exited with 1
    slapadd: bad configuration directory!
Removing obsolete conffile /etc/ldap/schema/ppolicy.schema ...
Removing obsolete conffile /etc/ldap/schema/ppolicy.ldif ...
Job for slapd.service failed because the control process exited with error code.
See "systemctl status slapd.service" and "journalctl -xeu slapd.service" for details.
invoke-rc.d: initscript slapd, action "start" failed.
× slapd.service - LSB: OpenLDAP standalone server (Lightweight Directory Access Protocol)
     Loaded: loaded (/etc/init.d/slapd; generated)
    Drop-In: /usr/lib/systemd/system/slapd.service.d
             └─slapd-remain-after-exit.conf
             /run/systemd/system/service.d
             └─zzz-lxc-service.conf
     Active: failed (Result: exit-code) since Wed 2023-08-31 10:25:13 UTC; 2ms ago
       Docs: man:systemd-sysv-generator(8)
    Process: 1713 ExecStart=/etc/init.d/slapd start (code=exited, status=1/FAILURE)

Aug 31 11:22:56 padonak slapd[1718]: lt_dlopenext failed: (back_bdb) file not found
Aug 31 11:22:56 padonak slapd[1718]: config error processing cn=module{0},cn=config: <olcModuleLoad> handler exited with 1
Aug 31 11:22:56 padonak slapd[1718]: DIGEST-MD5 common mech free
Aug 31 11:22:56 padonak slapd[1718]: DIGEST-MD5 common mech free
Aug 31 11:22:56 padonak slapd[1718]: slapd stopped.
Aug 31 11:22:56 padonak slapd[1718]: connections_destroy: nothing to destroy.
Aug 31 11:22:56 padonak slapd[1713]:    ...fail!
Aug 31 11:22:56 padonak systemd[1]: slapd.service: Control process exited, code=exited, status=1/FAILURE
Aug 31 11:22:56 padonak systemd[1]: slapd.service: Failed with result 'exit-code'.
Aug 31 11:22:56 padonak systemd[1]: Failed to start LSB: OpenLDAP standalone server (Lightweight Directory Access Protocol).



Как оказалось:

Changes to OpenLDAP 2.5.x

It took more than 10 years for OpenLDAP 2.5.x to be released, and as
such it is important to understand the changes that can impact
production environments and how to deal with them.

The most important change in this release is the removal of the
following backends:

BDB
HDB
Shell


Installations using these backends will need to migrate to a supported
backend instead, like LMDB (preferred).

The nssov overlay has also been dropped from the package.


После этого пришлось долго искать решение. Да и повазиться по полной. Но..... результат положительный!

Что нада делать:
1. необходимо найти резервный файл LDIF, экспортированный во время обновления.процесс. Это файл конфигурации,он должен находиться по адресу:
Код:
/var/backups/slapd-<ПРЕДЫДУЩАЯ ВЕРСИЯ>/cn=config.ldif


<ПРЕДЫДУЩАЯ ВЕРСИЯ> , скорее всего, должна быть последней версией 2.4.x, которую использовали перед попыткой обновления до 2.5.x.

Код:
 /var/backups/slapd-2.4.49+dfsg-2ubuntu1/cn=config.ldif.


сделаем копию файла для работы
Код:
mkdir /tmp/padonak

Код:
cp /var/backups/slapd-2.4.49+dfsg-2ubuntu1/cn=config.ldif  /tmp/padonak



Отредактировать копию файла cn=config.ldif, чтобы устранить отмеченные проблемы, например, удаленные или переименованные модули или серверные части. В нашем случае нам следует сделать следующее:
Изменить olcModuleLoad: back_bdb или back_hdb на back_mdb.

Если есть запись olcBackend: bdb или hdb, изменить ее на mdb или удалить, если не нужно переопределять какие-либо глобальные настройки LMDB.

Для каждой настроенной базы данных BDB или HDB: Изменить объектный класс:

olcBdbConfig или olcHdbConfig на olcMdbConfig.

Также обновить structuralObjectClass.

Изменить olcDatabase: bdb или hdb на mdb.

Также обновить атрибут в DN, например:

olcDatabase={1}mdb,cn=config.

Удалить все атрибуты olcDbConfig.

Добавить атрибут olcDbMaxSize, чтобы установить максимальный размер базы данных в байтах. Если не настроено, значение по умолчанию — 10 МБ.

вот разница из исходных и измененных файлов в примере сценария:

- удалить строку
+ добавить строку

Код:
objectClass: olcModuleList
 cn: module{0}
 olcModulePath: /usr/lib/ldap
-olcModuleLoad: {0}back_bdb
+olcModuleLoad: {0}back_mdb
 structuralObjectClass: olcModuleList
 entryUUID: 216f3358-632c-103b-8f5c-159102fdad19
 creatorsName: cn=config
@@ -617,9 +617,9 @@
 modifiersName: cn=config
 modifyTimestamp: 20210616202109Z
 
-dn: olcBackend={0}bdb,cn=config
+dn: olcBackend={0}mdb,cn=config
 objectClass: olcBackendConfig
-olcBackend: {0}bdb
+olcBackend: {0}mdb
 structuralObjectClass: olcBackendConfig
 entryUUID: 216fb710-632c-103b-8f5d-159102fdad19
 creatorsName: cn=config
@@ -658,10 +658,10 @@
 modifiersName: cn=config
 modifyTimestamp: 20210616202109Z
 
-dn: olcDatabase={1}bdb,cn=config
+dn: olcDatabase={1}mdb,cn=config
 objectClass: olcDatabaseConfig
-objectClass: olcBdbConfig
-olcDatabase: {1}bdb
+objectClass: olcMdbConfig
+olcDatabase: {1}mdb
 olcDbDirectory: /var/lib/ldap
 olcSuffix: dc=padonak,dc=su
 olcAccess: {0}to attrs=userPassword by self write by anonymous auth by * non
@@ -672,15 +672,11 @@
 olcRootDN: cn=admin,dc=padonak,dc=su
 olcRootPW:: 53d7b336598cff021687d249d5236b5716d64dd3
 olcDbCheckpoint: 512 30
-olcDbConfig: {0}set_cachesize 0 2097152 0
-olcDbConfig: {1}set_lk_max_objects 1500
-olcDbConfig: {2}set_lk_max_locks 1500
-olcDbConfig: {3}set_lk_max_lockers 1500
 olcDbIndex: objectClass eq
 olcDbIndex: cn,uid eq
 olcDbIndex: uidNumber,gidNumber eq
 olcDbIndex: member,memberUid eq
-structuralObjectClass: olcBdbConfig
+structuralObjectClass: olcMdbConfig
 entryUUID: 216fc25a-632c-103b-8f5e-159102fdad19
 creatorsName: cn=config
 createTimestamp: 20210616202109Z


3. удалить содержимое /etc/ldap/slapd.d/, чтобы оно это пустой каталог

Код:
rm /etc/ldap/slapd.d/*


4. Загрузить отредактированный файл cn=config.ldif в файл cn=config:

Код:
slapadd -F /etc/ldap/slapd.d -n0 -l /tmp/padonak/cn=config.ldif


Если команда выше не удалась, назад к шагу 2.


5. После успешного выполнения команды slapadd изменить разрешения на Каталог /etc/ldap/slapd.d

Код:
chown -R openldap:openldap /etc/ldap/slapd.d/



Права доступа к файлам должны быть правильными, но проверить, что обычные файлы имеют разрешения 0600 (-rw-------), и каталоги имеют разрешения 0750 (drwxr-x---).

Ну и...... полетели :

Код:
service slapd restart


Код:
service slapd status

_________________
Моя характеристика с детского сада: Хорошо кушает, спит, гуляет! Прошло много лет, ничего не изменилось.
Изображение



За это сообщение автора Padonak поблагодарил: Kodla (05 сен 2023, 16:27)
  Рейтинг: 33.33%
Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 127


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти: