Golfreeze.packetlove.com: Life style of Golfreeze Canon400D Family kammtan.com Jazz Freebsd Unix Linux System Admin guitar Music
All about unix linux freebsd and FAQ for Packetlove.com Web hosting , Mail hosting , VoIP + IP PBX server => Trick เกี่ยวกับการแก้ปัญหา เกี่ยวกับ compiler gcc c++ c build make install => Topic started by: golfreeze on พฤษภาคม 23, 2012, 07:20:46 pm
-
make sure the ldap daemon is stopped:
#/etc/init.d/ldap stop
take a backup of the curent state just in case:
#cd /var/lib/ldap-dpp/
#rmdir -rfv /home/tmp_ldap/
#mkdir /home/tmp_ldap
#cp * /home/tmp_ldap/ -av
run the recovery tool to rerun/clear out the transactions in the log:
#/usr/sbin/slapd_db_recover -v
restart the ldap service:
#/etc/init.d/ldap start
-
ถ้าในกรณี ทำการ restart service ldap แล้วเกิด error คล้ายๆ ข้างล่างนี้
[root@ldap00 ldap]# tail -f /var/log/slapd.log
Oct 30 14:07:06 ldap00 slapd[4571]: config_build_entry: "olcDatabase={1}bdb"
Oct 30 14:07:06 ldap00 slapd[4571]: backend_startup_one: starting "dc=ntt,dc=co,dc=th"
Oct 30 14:07:06 ldap00 slapd[4571]: bdb_db_open: dc=ntt,dc=co,dc=th
Oct 30 14:07:06 ldap00 slapd[4571]: bdb_db_open: alock package is unstable
Oct 30 14:07:06 ldap00 slapd[4571]: backend_startup_one: bi_db_open failed! (-1)
Oct 30 14:07:06 ldap00 slapd[4571]: slapd shutdown: initiated
Oct 30 14:07:06 ldap00 slapd[4571]: ====> bdb_cache_release_all
Oct 30 14:07:06 ldap00 slapd[4571]: slapd destroy: freeing system resources.
Oct 30 14:07:06 ldap00 slapd[4571]: slapd stopped.
Oct 30 14:07:06 ldap00 slapd[4571]: connections_destroy: nothing to destroy.
ให้ทำการ move file alock ใน /var/lib/ldap/alock ออกไปเป็นไฟล์อื่นก่อน แล้วทำการ recover 1 รอบครับ
#cd /var/lib/ldap
#mv alock alock.ori
#/usr/sbin/slapd_db_recover
#/etc/init.d/ldap restart
-
ถ้าตัว ldap database เกิดการ corrupt ขึ้นมาระหว่างการใช้งาน อาจจะด้วยการปิดตัว service ไม่สมบูรณ์
[root@test test]# /etc/init.d/ldap stop
Stopping slapd: [ OK ]
Checking configuration files for slapd: bdb_db_open: unclean shutdown detected; attempting recovery.
bdb_db_open: Recovery skipped in read-only mode. Run manual recovery if errors are encountered.
config file testing succeeded
ให้ทำการ ซ่อมดังนี้ครับผม
ทำการ stop service ldap ก่อน
#/etc/init.d/ldap stop
จากนั้นทำการ recovery
#/usr/sbin/slapd_db_recover -v -h /var/lib/ldap
เสร็จแล้วทำการ start service ldap ครับ
#/etc/init.d/ldap start
-
ในกรณีที่ใช้งานคำสั่ง ldapsearch แล้วเกิด error "ldap_bind: Invalid credentials (49)"
ต้องลองเชค user ในการ query ด้วยครับว่าถูกหรือเปล่า เรื่องของ attribute "dn:" ตรงกับข้อมูลที่มีใน ldap database หรือ ลองดูเรื่องของ