Avanti Indietro Indice

4. Capitolo III: Avvio e Arresto del proprio Sistema Linux

4.1 Avvio (/etc/rc /etc/rc.local /etc/inittab)

All'avvio del sistema, vengono letti due file. Il primo è (il file) /etc/rc e il secondo è (il file) /etc/inittab.

Il file /etc/rc contiene i comandi necessari per rendere il sistema effettivamente usabile. Un esempio di file /etc/rc è il seguente:

  
        # rc from 0.96 root disk
        # usa mount -a e rimuove alcuni file pesky 

        /etc/update &

        # rimuovi /etc/mtab* così mount crea il file /etc/mtab 
        /bin/rm -f /etc/mtab* /etc/nologin

        /bin/rdev > /etc/mtab
        /bin/mount -av

        /bin/rm -f /usr/spool/uucp/LCK*

        /bin/sh /etc/rc.local
In questo file, come nei due sucessivi, ogni linea che inizia con un # è trattata come un commento e quindi non viene eseguita.

Il primo comando, /etc/update, avvia un processo che eseguirà regolarmente il commando sync, in modo da rendere minima la perdita di dati nel caso di un crash di sistema.

Successivamente i file /etc/mtab e /etc/nologin vengono rimossi. Il file /etc/mtab contiene le informazioni riguardo i drive presenti nel file /etc/fstab. Il file /etc/nologin, se esiste, impedisce agli utenti, tranne che al root, di fare il log in dentro il sistema. Questo file è usualmente creato dal comando shutdown.

Il commando rdev elenca i filesystem nel file /etc/fstab e converte le informazioni in esso contenute in un formato adatto per il file /etc/mtab.

Il commando mount con l'opzione -a monterà i filesystem elencati in /etc/fstab.

Il file successivo che viene rimosso riguarda i file di lock ed il modem. I programmi come UUCP e Kermit usano i file di lock per comunicare agli altri programmi quali linee sono correntemente in uso. Se il sistema viene spento mentre uno di questi programmi è in esecuzione, il file di lock deve essere rimosso manualmente prima che la linea del modem possa essere usata da un altro programma.

La linea finale esegue il file /etc/rc.local. Questo file contiene i comandi che sono necessari per l'uso locale della propria macchina.

Ecco un esempio di file /etc/rc.local:

        /bin/hostname enry

        /usr/bin/setterm -blank 10
        if [ -x /usr/etc/inet/rc.net ]; then 
                /usr/etc/inet/rc.net 
        fi 
Il primo commando, hostname, imposta il nome della macchina (host) quale viene mostrato nella schermata di login. Per esempio, in questo caso, il nome della macchina è enry. Il commando successivo imposta lo screen saver a 10 minuti. Il comando finale esegue il file /usr/etc/inet/rc.net se esiste. Questo file contiene i commandi per avviare i daemon TCP/IP che sono discussi dettagliatamente nel manuale di NET.

Un altro file che è usato al momento dell'avvio è /etc/inittab. Questo file comunica al kernel a quali porte inviare la schermata di login. Un esempio del file /etc/inittab è il seguente:

        # inittab for linux, poeigl 1.3
        # Format:
        # ttyline:termcap-entry:getty-command
        tty1:console:/etc/getty 9600 tty1
        tty2:console:/etc/getty 9600 tty2
        tty3:console:/etc/getty 9600 tty3
        tty4:console:/etc/getty 9600 tty4
        #tty5:console:/etc/getty 9600 tty5
        #tty6:console:/etc/getty 9600 tty6
        # ttys1:dumb:/etc/getty 9600 ttys1
        # ttys2:dumb:/etc/getty -m -t60 2400 ttys2
Il formato di una riga in /etc/inittab è:
  1. Linea del device
  2. Tipo di terminale
  3. Comando di getty
La linea di device indica la periferica (all'interno della directory /dev) alla quale si vuole inviare a una schermata di login. Per esempio, per inviare una schermata di login al primo schermo virtuale (ALT-F1), la device da utilizzare è tty1. Per inviare una schermata di login a un terminale "muto" connesso alla prima porta seriale, la device è ttys0.

Il tipo di terminale definisce quale tipo di emulazione di terminale di default assumere per la schermata di login. Se si usano solamente le console virtuali, questo può essere lasciato come 'console'. Se si usano altri terminali connessi alla propria macchina, verificare la documentazione. Usualmente le migliori emulazioni sono la vt100 o la vt220. Per una lista completa di emulazioni utilizzabili, si veda il file /etc/termcap.

Getty è il programma che effettivamente invia i comandi allo schermo per permettere all'utente il log in. Il formato utilizzato dal comando getty è:

        /etc/getty <velocità> <linea del device>
Dove la velocità che si vuole usare è espressa in baud e la linea dei device è la linea che è elencata nel primo campo dell'entrata in inittab. Così se si ha un terminale vt100 connesso a ttys0 e la velocità è di 2400 baud, la riga corrispondente di inittab sarà:
        ttys0:vt100:/etc/getty 2400 ttys0

4.2 Arresto del Sistema (Shutdown, Halt)

Ci sono almeno tre modi differenti di spegnere il sistema. Il primo è di usare il commando shutdown, il secondo è usare il comando halt.

Copyright 1992 by Mark Komarinski


Avanti Indietro Indice