On Mon, 8 Jan 2001, MaD dUCK wrote:
the /etc/rc.d hierarchy is system V as far as i know (or BSD? - i always mix them up). suse, however, doesn't use it and decides to employ /sbin/init.d. is this FHS? why was this choice made? what are the advantages? sure, they are "programs" to be executed at boot, and as such, /sbin is right and /etc was never the right place, but why not have /etc/rc.d/rc?.d with symlinks to /sbin/init.d - because the rc stuff in /sbin/init.d as well as boot, boot.local, halt, halt.local are really /etc candidates whereas the scripts for various programs like qmail/postfix, bind, dhcpd, ntpd etc. are /sbin candidates.
I don't know the SysV spec in detail, so I can't say whether /sbin/init.d "violates" SysV or not. But the same layout (with /sbin/init.d, /etc/rc.config and /etc/rc.config.d) is being used by HP (in HP-UX) and Compaq (in Tru64UNIX), so SuSE is not alone here. This layout _is_ FHS compliant, though. It's just a matter of interpretation. The standard says something like "/etc should not contain any runnable programs". (Please correct me here) What SuSE has done, is to say that scripts are also "runnable programs". So they moved these scripts to /sbin/init.d. The point is also that you should never have to touch the scripts in /sbin/init.d or the links in /sbin/rc*.d after you made them. The runlevel script should souce /etc/rc.config or a script in /etc/rc.config.d and all options that you would want to tune/change, and also options telling whether the applications should be started or not, should be located there. So the runnable scripts are located under /sbin while the config scripts are located under /etc. I think SuSE's layout improves readability a lot, at least compared to the "mess" in Red Hat/Debian and Solaris where you have to rename links and edit rc files. ---J.T.U.