daemontools-0.76

Introducción a Daemontools

Localización de descarga (HTTP):		http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
Localización de descarga (FTP):			
Versión usada:					0.76
Tamaño del paquete:				162 KB
Estimación del espacio necesario en disco:	1.8 MB
Descargas adicionales:
Parche errno para daemontools

El paquete daemontools es un sustituto para inetd o xinetd. La razón principal para utilizarlo aquí es porque se recomienda usarlo junto con qmail y djbdns.

Instalación de daemontools

Instala daemontools ejecutando los siguientes comandos:

cd admin/daemontools-0.76 &&
patch -Np1 -i ../../daemontools-0.76.errno.patch &&
package/compile &&
cd package &&
sed 's|command|usr/sbin|' boot.inittab > boot.inittab~ &&
mv boot.inittab~ boot.inittab &&
cd ../command &&
sed -e 's|/command:/usr/local/bin:/usr/local/sbin:||' \
    -e 's|command|usr/sbin|' \
    -e 's|/service|/etc/service|g' svscanboot > svscanboot~ &&
mv svscanboot~ svscanboot &&
chmod 555 svscanboot &&
cp * /usr/sbin &&
cd ../package &&
cat /etc/inittab boot.inittab > /etc/inittab~ &&
mv -f /etc/inittab~ /etc/inittab &&
mkdir /etc/service &&
telinit Q

Explicación de los comandos

Lo primero que hay que entender al instalar cualquier paquete escrito por Daniel J. Bernstein, y esto incluye qmail, djbdns y ucspi-tcp aparte de daemontools, es que incumple los estándares si su idea de hacer bien las cosas difiere de un estándar en particular. El profesor Bernstein es un estándar por sí mismo en lo que a su software se refiere.

Esto implica que es necesario hacer algunos cambios en los comandos de instalación de sus paquetes para poder instalarlos de forma que cumplan el Estándar de la Jerarquía del Sistema de Ficheros (FHS). Muchos de los siguientes comandos se deben a este hecho.

cd admin/daemontools-0.76 : Primero, el paquete se desempaqueta en un directorio admin. Encontrarás el paquete en sí dos directorios por debajo de este.

package/compile : Este comando compila las fuentes y coloca los binarios en el directorio command.

Como vamos a instalar los binarios en /usr/sbin en lugar de crear un directorio /command que no es estándar, debemos cambiar varias rutas:

sed 's|command|usr/sbin|' boot.inittab > boot.inittab~
mv boot.inittab~ boot.inittab

En boot.inittab, cambiamos /command/svscanboot por /usr/sbin/svscanboot.

sed -e 's|/command:/usr/local/bin:/usr/local/sbin:||' \
    -e 's|command|usr/sbin|' \
    -e 's|/service|/etc/service|g' svscanboot > svscanboot~ &&

Esto cambia varias rutas en el guión svscanboot para que svscan compruebe en el directorio /etc/service los demonios a lanzar, en lugar de usar el directorio por defecto /service.

cp * /usr/sbin : Debemos copiar manualmente los binarios al directorio /usr/sbin.

cat /etc/inittab boot.inittab > /etc/inittab~
mv -f /etc/inittab~ /etc/inittab

Estos comandos añaden una línea en /etc/inittab para que init lance el guión svscanboot.

mkdir /etc/service : Este comando crea el directorio de control de daemontools, que es necesario que exista aunque esté vacío, para que daemontools funcione correctamente.

telinit Q : Este comando le dice al proceso init que lea de nuevo su fichero de configuración (inittab) y actúe en consecuencia según los cambios que se hayan producido. Se ejecuta el guión svscanboot.

Contenido

El paquete daemontools contiene svscanboot, svscan, supervise, svc, svok, svstat, fghack, pgrphack, readproctitle, multilog, tai64n, tai64nlocal, setuidgid, envuidgid, envdir, softlimit and setlock . Una descripción más detallada de estos comandos puede encontrarse en http://cr.yp.to/daemontools.html.

Descripciones