Author Topic: ขั้นตอน และ วิธีการ how to recovery openldap  (Read 8831 times)

golfreeze

  • Administrator
  • Hero Member
  • *****
  • Posts: 2140
    • View Profile
    • นั่งสมาธิ สติปัฏฐานสี่ พาเที่ยววัด แนะนำวัด แจกcd ธรรมะฟรี
    • Email
ขั้นตอน และ วิธีการ how to recovery openldap
« 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
« Last Edit: พฤศจิกายน 08, 2012, 04:31:48 PM by golfreeze »

golfreeze

  • Administrator
  • Hero Member
  • *****
  • Posts: 2140
    • View Profile
    • นั่งสมาธิ สติปัฏฐานสี่ พาเที่ยววัด แนะนำวัด แจกcd ธรรมะฟรี
    • Email
Re: Recovery openldap
« Reply #1 on: ตุลาคม 30, 2012, 02:12:27 PM »
ถ้าในกรณี ทำการ 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

golfreeze

  • Administrator
  • Hero Member
  • *****
  • Posts: 2140
    • View Profile
    • นั่งสมาธิ สติปัฏฐานสี่ พาเที่ยววัด แนะนำวัด แจกcd ธรรมะฟรี
    • Email
Re: Recovery openldap
« Reply #2 on: พฤศจิกายน 08, 2012, 04:30:43 PM »
ถ้าตัว 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

golfreeze

  • Administrator
  • Hero Member
  • *****
  • Posts: 2140
    • View Profile
    • นั่งสมาธิ สติปัฏฐานสี่ พาเที่ยววัด แนะนำวัด แจกcd ธรรมะฟรี
    • Email
Re: ขั้นตอน และ วิธีการ how to recovery openldap
« Reply #3 on: กรกฎาคม 10, 2014, 09:11:17 AM »
ในกรณีที่ใช้งานคำสั่ง ldapsearch แล้วเกิด error "ldap_bind: Invalid credentials (49)"

ต้องลองเชค user ในการ query ด้วยครับว่าถูกหรือเปล่า เรื่องของ attribute "dn:" ตรงกับข้อมูลที่มีใน ldap database หรือ ลองดูเรื่องของ