I am *so* screwed… I ran the [portupgrade][] utility on one of our [FreeBSD][] servers at work. This was a production system that we used for printing certificates for our students, preparing address labels for [USPS][] shipments, and several other small (but crucial!) database applications. When I realized that the upgrade had roached all these business-critical apps, I tried to restore the system and found that my backups weren’t usable. ARRRRGH! From now on, I’m going to verify my backups by generating a [“table of contents”](http://books.google.com/books?id=uRW8V9QOL7YC&pg=PA743&lpg=PA743&dq=unix+dump+toc+table+of+contents&source=web&ots=TB8oB5ktlk&sig=0SlDKSsRNUtmIPeyG0DJ7Bv64FY) from the backup media *after* the backup is complete.
[portupgrade]: http://wiki.freebsd.org/portupgrade
[FreeBSD]: http://www.freebsd.org/about.html
[USPS]: http://www.usps.com/
for ($i=1; $i<=100; $i++) { print "$i. I will *never* run portupgrade(1) again without making sure I have a *known good* backup!\n"; }
Well, after six straight days of working on this, I finally tracked down the issue. The LDAP extension got whacked by portupgrade. All I had to do was load the net/php5-ldap port and restart Apache:
# portmaster net/php5-ldap
(lots of output snipped)
===> Registering installation for php5-ldap-5.2.5_1
****************************************************************************
The following line has been added to your /usr/local/etc/php/extensions.ini
configuration file to automatically load the installed extension:
extension=ldap.so
****************************************************************************
===> Cleaning for php5-ldap-5.2.5_1
===>>> Installation of net/php5-ldap (php5-ldap-5.2.5_1) complete
# apachectl restart
I’m almost positive that I tried rebuilding the net/php5-ldap module, but forgot to restart Apache when I tested it.
Doh! Gilligan!!!!
Just kidding, I know how easy it can be to overlook stuff (from my own personal experience). Just glad you got it up and going again! \o/ Yay! \o/