Need Help, LDAP + BDB issue
My Linux computer was working great, then it flipped out and I could do nothing but reset. When it rebooted, LDAP refused to start. The error in the log says, "unable to join the environment" and "bdb_db_open: dbenv_open failed: Resource temporarily unavailable (11)".
Can anyone tell me what is wrong and how I can fix it and get my LDAP server back up? |
Most likely, your BDB needs to be recovered. This is like "fsck" for filesystems.
Stop LDAP if it's up, and run "db_recover -h <wherever-your-bdb-is>". It will probably take a long time. After it's done: If it doesn't complain, run "db_archive -d -h <wherever-your-bdb-is>". This will make recovery quicker for the next time, and should be run periodically as part of general maintanence. If it DOES complain, try "db_recover -c -h <wherever-your-bdb-is>". This will take a REALLY long time but it might save your bacon. Your db_* tools might be called something like db4.4_* instead - look around for them. |
Thanks for the reply. I did db_recover -c -h /var/lib/ldap but I am still getting the same error. Actually after I do db_recover, it screws up the permissions and when I try to start ldap the log says permission denied to __db.001, I fix the permissions and try starting ldap again, then I am back to the unable to join environment error.
|
Does db_recover produce any output at all?
|
Yeah. db_recover -c -h /var/lib/ldap -v
db_recover: unable to join the environment db_recover: Finding last valid log LSN: file: 1 offset 681621 db_recover: Recovery starting from [1][28] db_recover: Recovery complete at Sat Apr 22 21:14:46 2006 db_recover: Maximum transaction ID 8000019b Recovery checkpoint [1][681621] |
That "unable to join the environment" is your problem. db_recover can't open the DB either. All I could dig up on that error was dead ends, especially on Red Hat 9.
|
Alright. Can you tell me how I can start over :-(? What do I need to delete to get LDAP start again with an empty directory?
|
Ok, so I did not feel like rebuilding my directory and was quite unmotivated about it, as starting from scratch can do to you. Then tonight I got motivated enough that I decided to backup the db files, uninstall the openldap-server RPM, reinstall it, and start the server. Everything worked fine at that point, but obviously bare directory. So I copied my configs back in and restarted the server, still working, ok, what would happen if I copied the db files back to the directory. I restarted it, uh ok it is running, so if I do an LDAP search will it find the entries, in fact it did. I was so excited to find I was back in business with no data loss :-). But I think from now on, I will keep a backup ;-).
|
All times are GMT -5. The time now is 09:03 PM. |