Назад | Перейти на главную страницу

OpenLDAP не останавливается, но запускается нормально, но затем отображается состояние, когда slapd остановлен

Мы запускаем openldap 2.3.43 на RHel 5.3. В последнее время наш сервер LDAP ведет себя нестабильно.

1. Он не останавливается, когда вы запускаете команду service ldap restart, но "кажется" запускается нормально

2.Однако после запуска команды service ldap status он показывает, что slapd остановлен.

Я просмотрел файл ldap.log, и стоит упомянуть только об ошибках:

Jun 25 22:11:14 myldapserver slapd[11593]: daemon IPv6 socket() errno=7 

Jun25 22:11:15 myldapserver slapd[11598]: bdb(cn=accesslog):file id2entry.bdb (meta pgno =0) has LSN [1}[900784]

Jun25 22:11:15 myldapserver slapd[11598]: bdb(cn=accesslog):end of log is [1][956]
Jun25 22:11:15 myldapserver slapd[11598]: bdb(cn=accesslog):/var/log/ldap/accesslog/id2entry.bdb:unexpected file or format

Jun25 22:11:15 myldapserver slapd[11598]: bdb_db_opendb_open(cn=accesslog):/var/log/ldap/accesslog/id2entry.bdb) failed: Invalid argument (22)

Jun25 22:11:15 myldapserver slapd[11598]: bdb(cn=accesslog):Unknown locker ID :0 


Jun25 22:11:15 myldapserver slapd[11598]: 
Jun25 22:11:15 myldapserver slapd[11598]: backend_startup_one: bi_db_open failed! (22) 
Jun25 22:11:15 myldapserver slapd[11598]: bd_db_close: alock close failed! 
Jun 25 22:11:15 myldapserver slapd[11598]: slapd stopped. 
Jun 25 22:11:15 myldapserver slapd[11598]: connections_destroy: nothing to destroy.

Любая помощь будет принята с благодарностью.

У вас проблема с открытием файла /var/log/ldap/accesslog/id2entry.bdb, который является частью базы данных ldap.

Вы можете попробовать следующие шаги:

1) В обычном случае база данных ldap находится где-то вроде / var / lib / ldap (но у меня установлен Ubuntu). Разве вы не изменили каталог базы данных (вы можете увидеть его в /etc/ldap/slapd.conf или где-нибудь в /etc/ldap/slap.d/*, это параметр с именем directory) Попробуйте найти истинное местоположение файла id2entry.dbd и использовать его в нужном месте в файле конфигурации.

2) Доступен ли ваш файл id2entry.dbd для openldap для чтения и записи? Проверьте разрешение этого файла.

3) Если ваша база данных находится в нужном месте и у нее есть соответствующие права, попробуйте восстановить базу данных ldap с помощью этой команды:

/usr/sbin/slapd_db_recover -v -h /var/lib/ldap

(/ var / lib / ldap - каталог, в котором находится файл id2entry.dbd).