Not too long ago a couple of the Ubuntu Dapper Drake (6.06 LTS) VPSs we use abruptly became inaccessible. These VPSs were NIS clients that suddenly could no longer connect to the NIS master. Great. And as far as I could tell I didn't do anything to those servers. I even managed to replicate the problem on another similar VPS (that was still accessble) simply by restarting the NIS daemon.

Thanks to Rimuhosting's fantabulous support, I managed to regain access to the VPSs. Oh yeah, big lesson learnt here: when configuring NIS clients, be sure to leave at least one user account with sudo privileges or set the root account's password (Ubuntu doesn't come with a root account enabled by default - run sudo passwd to set it and enable the root account as a side effect). Big big lesson learnt. Don't let this bite you in the ass if you're a sysadmin-ish person.

Anyway, /var/log/syslog was complaining this:

ypbind[1026]: Unable to register (YPBINDPROG, YPBINDVERS, udp)

Which turned out to be a portmap problem. So yeah portmap wasn't running! For a moment there I thought we had an easy solution. Sadly, /etc/init.d/portmap start was throwing this inexplicable error (i.e. Google wasn't of much help):

[email protected]:/sbin# /etc/init.d/portmap  restart
 * Stopping portmap daemon...
 * Starting portmap daemon...
dhclient.4.x 2.*.5, December 30th, 2000
Compiled on Dec 12 2003 09:55:54
Features: DBG, SEE, ALS, SEF
init: Couldn't open the file ./ ->!

It sure isn't caturday. After hours spent scrambling to find out why portmap can't find, reinstalling the NIS .deb, comparing configuration files between working NIS clients and these busted ones, it finally dawned on me that I have yet to re-install portmap (not that it was logically sound that I'd have to reinstall it, but at this point I was willing to try anything). Annoyingly enough, it worked!

apt-get remove portmap nis
apt-get install nis

I still don't know WTF happened there. If anyone has any clue please please point me to it.