MacOS – OS X Server: Open Directory PasswordService crashes

launchdmacosopendirectorydosx-server

I'm running an OS X 10.9 Server (it's a Mac Mini) that is providing a few services (iCal, VPN, file sharing, etc.) to a small group of Local Network Users.

After we installed a security update today, the machine did not reboot properly. When it came back up, the LDAP server seemed a bit confused; the users were nowhere to be found.

After a lot of trial and error, we ended up cleaning it up using db_recover, and openldap appears to be running fine again.

However, not all is well yet. While the users do show up, they cannot actually use any of the services. Adding new users is also a grayed-out button at the moment.

Based on the Console output, it appears that PasswordService is not starting properly. The following error appears in the Console every few seconds, and it does not seem to be very helpful so far.

com.apple.launchd[1]: (com.apple.PasswordService[2141]) Job appears to have crashed: Segmentation fault: 11
com.apple.launchd[1]: (com.apple.PasswordService) Throttling respawn: Will start in 10 seconds
ReportCrash[2137]: Saved crash report for PasswordService[2141] version 400.1 to /Library/Logs/DiagnosticReports/PasswordService_2016-04-12-000455_miniserver.crash

I'm at a loss here. A segfault in Passwordservices.. what can I do to debug this?

Naturaly, when I disable OpenDirectory, the error goes away. But that's precisely the point.

Edit: turns out, even when I start PasswordService directly from the shell, I get the segfault straight away:

sh-3.2# /usr/sbin/PasswordService -n
Segmentation fault: 11

Best Answer

I come bearing an unfulfilling answer (but it worked): upgrade to OS X El Capitan and Server 5. The reason for the segfault remains unclear, but it was fixed when the configuration was automatically migrated during the upgrade process. Or Apple changed the PasswordService binary - I'm not sure.