== Solaris's sparseness Coming from years of working primarily on Linux, one of the things that keeps getting me about working on Solaris 9 is just how sparse and bare a Solaris install is. I especially feel this with system diagnostic tools, where about 90% of the things I am used to considering as routine are either third-party packages or just not available. (Solaris 10 holds out the promise to be much better, with things like DTrace, but I'm stuck working with Solaris 9 machines at the moment.) Some of this is just different names for the same stuff (for which the [[Rosetta Stone for Unix ../links/UnixRosettaStone]] is very handy), but for a lot of it you really need to start installing third-party software. (Even when semi-substitutes are part of Solaris; _fuser_ is only a pale shadow of _lsof_, for example.) And sometimes there doesn't seem to be anything at all. For example, my current desire is for something to dump system level file locking information, because I am trying to run down a peculiar Samba and NFS locking problem and I would sorely love to be able to see what processes have certain files locked, and how. On Linux I would use _lslk_; on Solaris, well, the core author of _lslk_ dropped it in 2001 or so. (Yes, I can find the source code. Last updated for Solaris 8. My quickly hacked attempt yielded no useful results.) === Sidebar: an inexplicable omission from Sun's Freeware stuff Much to my surprise, Sun's Freeware software collection inexplicably does not include _gdb_, despite having the GNU compilers. Sure, Solaris has _mdb_, so you can at least do some state analysis of errant daemons with _gcore_ and it (if the stars are right), but it's not quite the same. Knowing about _pstack_ would probably have saved me some time a few days ago, though. Moral: I should always check the Rosetta Stone before proceeding to brute force. (Not that it would have helped; all of the Samba daemons confuse _pstack_ as much as they confuse _gdb_ and _mdb_. Oh well.)