Some Days, I Just Hate Solaris

Back in 2000, when some of us in engineering were talking about how best to improve our facilities for high-performance and research computing for our graduate students, we came to a few conclusions:

  • Software was more important than hardware.
  • Some software ran only under Windows, some had no Windows version at all.
  • Of the non-Windows software people cared about, there was always a version for Solaris. There was often a version for most other Unixes, but regardless of the company, they always had a Solaris version.
  • Sun’s matching grant program for education was awesome.

And to be fair, for some operations, our Sun Blade 1000 workstations blow the doors off of our Dell Precision Workstations with 3x the clock cycles. We’ve had very little hardware trouble from the Suns, and the aforementioned matching grant program and judicious use of third-party upgrade vendors let us buy two decked out Ultra 80 workstations on a budget that was originally allocated for one decked out workstation and one considerably lower-specced one.

But there’s little to no excuse for the following:

  • patchadd rewrites every byte of /var/sadm/install/contents every time you do a file operation. During jumpstarts, I manage to put that file in a tmpfs for faster access, but before that, I couldn’t do a single Solaris-only Jumpstart install in less than half a day.
  • Solaris 10 includes Samba. Solaris 10’s Samba includes winbind, which is what I use on my Debian systems to convert Active Directory accounts to Unix ones. But the Solaris 10 winbind doesn’t include the idmap_rid backend for consistently converting an Active Directory RID into a Unix UID, which confuses NFS mightily. I thought blastwave’s or sunfreeware’s Samba packages might be better, but they weren’t. I found these instructions for configuring winbind and idmap_rid for Solaris, but they’re squirreled off in a manual for Sun Cluster Data Services. What reason might they have for not compiling in idmap_rid by default? Am I the only person who uses Active Directory to generate UIDs for a central NFS and Samba server?
  • Today, during an attempt to install and test Matlab 7.6, I found that X11 forwarding is broken on recently-patched Solaris systems like mine. A similar bug came up in 2005 and sat unfixed for a few months. The usual fix of telling sshd to only listen on IPv4 interfaces in sshd_config isn’t enough, though. You actually have to add the -4 argument to the sshd service file.

I hate throwing away tens of thousands of dollars of perfectly functional hardware. I could install Debian’s sparc port on them, but why? I’d lose access to Ansys, Matlab, and all the other packages that are the reason I have these systems in the first place. And letting them languish like they did for years before I got into the managed infrastructure business seems a waste. Solaris 10, puppet, and the newer firmware that allows PXE booting is such a vast improvement over earlier versions for what I need to do, but there’s still some distance to go before it’s up to Debian standards.

If we went through the same evaluation process in 2002, I’d probably not have any Solaris sytems at all. Matlab, Maple, Ansys, Abaqus, etc. were all coming out with (or had already come out with) Linux versions. We’d have spent a lot less on hardware, and some jobs just love the extra clock cycles available on an Intel CPU.

One reply on “Some Days, I Just Hate Solaris”

Comments are closed.