Avanti Indietro Indice

4. Installare il vostro nuovo BIND

Devo dire che se avete già un'installazione di BIND (per esempio da un RPM) dovete rimuoverla prima di installare quella nuova. Sui sistemi Red Hat di solito significa rimuovere i pacchetti bind e bind-utils, e possibilmente bind-devel e caching-nameserver, se li avete.

Potrebbe essere una buona idea salvare una copia dello script di init (per esempio /etc/rc.d/init.d/named) prima di disinstallare; tornerà utile in seguito.

Se state aggiornando BIND da una versione più vecchia, come BIND 8, vi conviene leggere la documentazione di migrazione nel file doc/misc/migration nel pacchetto sorgente di BIND. Non mi occupo di nessun argomento che riguardi la migrazione in questo documento; assumerò soltanto che stiate rimpiazzando una preesistente versione funzionante di BIND 9.

4.1 Installare i binari

Questa è la parte facile :-). Semplicemente eseguite make install e lasciate fare tutto a lui. Davvero, è tutto qui!

4.2 Configurare lo script di inizializzazione

Se avete già uno script di inizializzazione dalla vostra distribuzione, sarebbe bene modificare quello per eseguire i nuovi binari con le opzioni appropriate. Gli switch sono... (rullo di tamburi prego...)

Quello che segue è lo script di inizializzazione che uso nel mio sistema Red Hat 6.0. Come potete vedere è quasi esattamente lo stesso file fornito da Red Hat. Non ho ancora provato i comandi rndc ma non vedo motivo per cui non debbano funzionare.


#!/bin/sh
#
# named           This shell script takes care of starting and stopping
#                 named (BIND DNS server).
#
# chkconfig: 345 55 45
# description: named (BIND) is a Domain Name Server (DNS) \
# that is used to resolve host names to IP addresses.
# probe: true

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0

[ -f /usr/local/sbin/named ] || exit 0

[ -f /chroot/named/etc/named.conf ] || exit 0

# See how we were called.
case "$1" in
  start)
        # Start daemons.
        echo -n "Starting named: "
        daemon /usr/local/sbin/named -u named -t /chroot/named -c /etc/named.conf
        echo
        touch /var/lock/subsys/named
        ;;
  stop)
        # Stop daemons.
        echo -n "Shutting down named: "
        killproc named
        rm -f /var/lock/subsys/named
        echo
        ;;
  status)
        status named
        exit $?
        ;;
  restart)
        $0 stop
        $0 start
        exit $?
        ;;
  reload)
        /usr/local/sbin/rndc reload
        exit $?
        ;;
  probe)
        # named knows how to reload intelligently; we don't want linuxconf
        # to offer to restart every time
        /usr/local/sbin/rndc reload >/dev/null 2>&1 || echo start
        exit 0
        ;;

  *)
        echo "Usage: named {start|stop|status|restart|reload}"
        exit 1
esac

exit 0

Come con syslogd, dalla Red Hat 7.2 anche questo lavoro è più facile. C'è un file chiamato /etc/sysconfig/named in cui specificare parametri supplementari per syslogd. Lo script predefinito /etc/rc.d/init.d/named su Red Hat 7.2 però controllerà l'esistenza di /etc/named.conf prima di partire. Dovrete correggere questo percorso.

Su sistemi Caldera OpenLinux dovrete soltanto modificare le variabili definite in cima e a quanto sembra lo script si occuperà del resto al vostro posto:

NAME=named
DAEMON=/usr/local/sbin/$NAME
OPTIONS="-t /chroot/named -u named -c /etc/named.conf"

E per FreeBSD 4.3 potete modificare rc.conf ed inserirci queste righe:

named_enable="YES"
named_program="chroot/named/bin/named"
named_flags="-u named -t /chroot/named -c /etc/namedb/named.conf"

4.3 Modifiche alla configurazione

Dovrete anche aggiungere o cambiare alcune opzioni nel vostro named.conf per sistemare le varie directory. In particolare dovrete aggiungere (o cambiare, se le avete già) le seguenti direttive nella sezione options:

directory "/etc/namedb";
pid-file "/var/run/named.pid";
statistics-file "/var/run/named.stats";
Dato che questo file è letto dal demone named tutti i percorsi sono naturalmente relativi alla gabbia chroot. Al momento della stesura di questo documento, BIND 9 non supporta molti dei file di statistiche e di dump che aveva prima. Probabilmente tale supporto verrà ripristinato nelle prossime versioni. Se state utilizzando una di queste nuove versioni potreste dover aggiungere voci aggiuntive per far scrivere anche questi nella directory /var/run.


Avanti Indietro Indice