> Recently i patched a Solaris box. All of a sudden /bin/sh users
> complained their shells acted weird. After some investigation I
> learned:
>> 1. root's shell is /sbin/sh on Solaris.
> 2. unlike /bin/sh, /sbin/sh is statically linked.
> 3. someone had copied over /bin/sh with /usr/local/bin/bash
This is a fscking stupid thing to do. Some generous LARTing is called for.
> 4. one (or more) patches had put the standard Bourne shell
> back in /bin/sh.
This is why one should keep a record of changes and have a
post-patch install script. I need this here, too, to copy some
postfix files back in after applying OS patches.
> A while back people had discussed /usr/local and it's place in Linux.
> This is why /usr/local exists on UNIX boxes. For the vendor controlled
> files, but in Linux there are more vendor controlled files.
Huh? My understanding is that everything vendor controlled (the base
OS, patches) goes into / and /usr, while local additions and stuff you
wrote yourself goes into /usr/local (BSD style) or /opt (SysV style).
> Why did the person replace /bin/sh? Because there's no way for a
> regular user to change their shell on a Solaris box with a "files"
> passwd target. You have to su to root and edit /etc/passwd. Of
> course you have to so to root to copy bash over sh...
chsh or something equivalent would be one more command requiring suid root.
(now, let's start a discussion about the inadequacies of Unix' user/
group/permissions system ...).
I don't think there's normally a need to change the login shell. If you
want to try a different shell (permanently), you can always exec one in
~/.login or equivalent. This is documented.
The sensible thing to do for an admin is of course, to put bash/tcsh/zsh
into /usr/bin, add them to /etc/shells, and ask users at account creation
time which shell they prefer.
> In general I think Sun's maintainence of Solaris over the past five
> years to be deplorable. In that time the free software community has
> pretty much built Linux from a school project to a system with at
> least two competing GUI's, brought over the rich GNU tool set, brought
> at least three versions of vi into the 90's (syntax hilighting,
> scripting with perl, GUI?! versions, etc), came up with two CORBA
> orbs for the GUI systems, numerous window managers, etc.
>> In terms of usability Linux slaps Solaris into groaning submission.
> I don't really dislike Sun, but I don't think they've done any real
> R&D on the UNIX usability side over the past five years.
I partly agree, but I think that Sun have done a great Job with Solaris.
In the past five or so years, they have migrated the bulk of their user
base from SunOS 4 to SunOS 5, i.e. from BSDish to SysVish. Can't think
of a bigger gap in the Unix world. They moved from OpenWound to CDE. From
ancient sendmail 8.6 to 8.9.x. bind 8. Moved most shell scripts over to ksh.
And so on.
Some tools are clearly lacking and have obviously not seen any work
recently. The sorry excuse for patch comes to mind. The bugs in
/usr/bin/fgrep which have been carried over since at least Solaris 2.5.
Not bundling a compiler (but I hear Solaris 8 comes with gcc).
Sun are a relatively small company. They ave a different focus and
different target than Linux. Linux, OTOH, has profited very much from
existing tools, thanks to the FSF.
Maintained by the ILUG website team. The aim of Linux.ie is to
support and help commercial and private users of Linux in Ireland. You can
display ILUG news in your own webpages, read backend
information to find out how. Networking services kindly provided by HEAnet, server kindly donated by
Dell. Linux is a trademark of Linus Torvalds,
used with permission. No penguins were harmed in the production or maintenance
of this highly praised website. Looking for the
Indian Linux Users' Group? Try here. If you've read all this and aren't a lawyer: you should be!