Command explanations The first thing to understand in installing any package written by Daniel J. Bernstein, and this includes Qmail, djbdns and ucspi-tcp in addition to daemontools, is that he is willing to completely disregard standards if his idea of the correct thing to do differs from an particular standard. Professor Bernstein is a standards body unto himself when it comes to his own software. It is therefore necessary to make quite a few changes to the installation commands for his packages to get them to install in a manner that is compliant with the Filesystem Hierarchy Standard (FHS). Most of the following commands are due to this difficulty. cd admin/daemontools-0.76: First off, the package is unpacked in an "admin" directory. You will find the actual packages two directory levels below this. package/compile: This command actually compiles the source and puts the binaries in a command directory. sed 's|command|usr/sbin|' boot.inittab > boot.inittab~ mv boot.inittab~ boot.inittab These two commands are necessary to get the binaries installed in /usr/sbin rather than creating a non-standard /command directory and installing them there. sed 's|/command:/usr/local/bin:/usr/local/sbin:||' svscanboot > svscanboot~ sed 's|/service|/etc/service|g' svscanboot~ > svscanboot rm svscanboot~ This changes the svscanboot script so that it checks the /etc/service directory for daemons to run instead of the default /service directory. cp * /usr/sbin: We must manually copy the binaries to the /usr/sbin directory. cat /etc/inittab boot.inittab > /etc/inittab~ mv -f /etc/inittab~ /etc/inittab These commands append a line to /etc/inittab so that init will launch the svscan program. telinit Q: This command tells the init process to re-read its configuration file (inittab) and act upon any changes that have been made. mkdir /etc/service: This command creates the daemontools control directory, which needs to exist, even if empty for daemontools to run properly.