[successivo] [precedente] [inizio] [fine] [indice generale] [violazione GPL] [translators] [docinfo] [indice analitico] [volume] [parte]
La distribuzione Slackware è quella che utilizza il sistema di configurazione più semplice. Spesso si ha la necessità di modificare direttamente gli script.
Si tratta di una serie di script di shell eseguiti direttamente o indirettamente attraverso le indicazioni contenute nel file /etc/inittab
. La prima cosa da notare sono i livelli di esecuzione:
0 arresto del sistema;
1 singolo utente;
3 multiutente;
4 multiutente con login grafico;
6 riavvio.
Segue l'elenco dei file e delle directory che compongono la procedura di inizializzazione del sistema.
/etc/rc.d/
È la directory che raccoglie gli script utilizzati nella fase di avvio del sistema e in quella di arresto.
/etc/rc.d/rc.S
È lo script di inizializzazione del sistema. In particolare:
attiva lo scambio della memoria (solo sulle partizioni), in base al contenuto del file /etc/fstab
;
avvia update per automatizzare lo scarico periodico della memoria cache dei dischi;
avvia kerneld per automatizzare il caricamento dei moduli del kernel;
verifica che il file system principale sia inizialmente in sola lettura;
se il file system principale è in sola lettura, ne esegue il controllo;
se vengono incontrati errori, attiva una shell su di una sola console (se si esce dalla shell, si riprende l'esecuzione dello script;
se è il caso, rimonta il file system principale in lettura-scrittura;
esegue il montaggio degli altri file system in base al contenuto di /etc/fstab
, esclusi eventuali file system di rete, o NFS, perché la rete viene attivata più avanti;
configura l'orologio del sistema;
crea i file /etc/issue
(vedere agetty) e /etc/motd
in modo che rispecchino la versione in funzione del kernel Linux;
eventualmente esegue /etc/rc.d/rc.modules
per l'attivazione di moduli del kernel;
eventualmente esegue /etc/rc.d/rc.pcmcia
per l'attivazione di periferiche connesse attraverso porte PCMCIA;
eventualmente esegue /etc/rc.d/rc.serial
per l'attivazione della porta seriale.
Lo script /etc/rc.d/rc.S
utilizza a sua volta altri file; quelli elencati di seguito.
/etc/rc.d/rc.modules
Script utilizzato da /etc/rc.d/rc.S
per caricare automaticamente i moduli del kernel necessari al proprio sistema.
/etc/rc.d/rc.pcmcia
Script utilizzato da /etc/rc.d/rc.S
per l'attivazione delle periferiche connesse attraverso porte PCMCIA.
/etc/rc.d/rc.serial
Script utilizzato da /etc/rc.d/rc.S
per l'attivazione delle porte seriali, in caso di utilizzo di terminali connessi con queste.
/etc/rc.d/rc.0
--> /etc/rc.d/rc.6
È lo script che viene eseguito quando si passa a un livello di esecuzione pari a 0 (system halt) o 6 (reboot). Elimina tutti i processi in esecuzione, esegue lo smontaggio di tutti i dischi e quindi ferma il sistema o lo riavvia a seconda che si tratti del livello di esecuzione 0 o 6.
/etc/rc.d/rc.K
È lo script che viene eseguito quando si passa a un livello di esecuzione pari a 1: singolo utente, ovvero, livello amministrativo. Elimina tutti i processi dei demoni (la lettera K sta per Kill) e mette il sistema in modalità monoutente. Di conseguenza, non viene eseguito alcun distacco di dischi.
/etc/rc.d/rc.M
È lo script che viene eseguito quando si passa a un livello di esecuzione da 2 a 5: multi utente. Fondamentalmente si occupa di eseguire altri script per il montaggio di dischi aggiuntivi, per l'attivazione della rete,... In particolare:
avvia setterm in modo da definire l'oscuramento dello schermo dopo alcuni minuti di inattività;
se manca il file /etc/HOSTNAME
, lo crea, inserendovi un nome di dominio corrispondente a quello predefinito per la distribuzione;
assegna il nome all'elaboratore in base al contenuto di /etc/HOSTNAME
;
esegue /etc/rc.d/rc.inet1
e /etc/rc.d/rc.inet2
per l'attivazione della rete;
avvia /usr/sbin/crond
;
risistema i permessi delle directory più importanti;
esegue ldconfig in modo da aggiornare il file /etc/ld.so.cache
con i collegamenti corretti alle librerie installate;
esegue eventualmente /etc/rc.d/rc.font
per la gestione dei caratteri del video;
esegue eventualmente /etc/rc.d/rc.ibcs2
per l'emulazione iBCS (Intel binary compatibility Specification);
esegue /etc/rc.d/rc.keymap
per cambiare la configurazione della tastiera in base alla nazionalità;
esegue eventualmente /etc/rc.d/rc.httpd
per l'avvio del servente HTTP;
esegue /etc/rc.d/rc.local
che è in pratica lo script finale lasciato alla configurazione personale; di solito contiene già l'attivazione del programma gpm in background, per la gestione del mouse.
Lo script /etc/rc.d/rc.M
utilizza a sua volta altri file, elencati di seguito.
/etc/rc.d/rc.cdrom
Script utilizzato da /etc/rc.d/rc.M
per eseguire automaticamente il montaggio del CD-ROM. Può creare più problemi che benefici. Al massimo è necessario quando si utilizza un file system /usr
da CD-ROM.
/etc/rc.d/rc.inet1
Permette di definire le caratteristiche della connessione in rete, oltre ad attivare le interfacce e definire gli instradamenti. Occorre modificare questo script per cambiare la configurazione di rete.
/etc/rc.d/rc.inet2
Attiva tutti i servizi di rete. Può essere modificato per eliminare o aggiungere servizi.
/etc/rc.d/rc.local
È lo script che viene eseguito per ultimo e può essere modificato per qualunque scopo, legato alla personalizzazione del proprio sistema.
/etc/rc.d/rc.4
È lo script che viene eseguito quando si passa a un livello di esecuzione pari a 4: avvia xdm in modo da ottenere una procedura di accesso grafica all'interno di X.
/etc/rc.d/rc.n
Volendo definire delle modalità di funzionamento differenti da quelle predefiniti, si può creare un file rc a partire da rc.M
o rc.4
e abbinandolo a un livello di esecuzione non utilizzato (due o cinque) all'interno del file /etc/inittab
.
La distribuzione Slackware non utilizza file di configurazione per definire l'impostazione della rete. Questo obbliga praticamente alla modifica diretta degli script che si occupano di definire gli indirizzi, gli instradamenti e l'attivazione dei servizi. Si tratta di /etc/rc.d/rc.inet1
e /etc/rc.d/rc.inet2
.
Per la configurazione della rete viene fornito lo script netconfig che crea ogni volta un nuovo file /etc/rc.d/rc.inet1
. Questo però può andare bene solo per le situazioni normali, quando si ha una sola interfaccia di rete e un solo router. Se si decide di modificare direttamente il file /etc/rc.d/rc.inet1
, è meglio fare sparire netconfig.
Il file /etc/HOSTNAME
serve a contenere il nome dell'elaboratore (nome di dominio completo) in modo da poter definire questo nome per mezzo di hostname durante la fase di inizializzazione del sistema. Naturalmente, un elaboratore può avere più nomi, tanti quante sono le interfacce di rete: se ne deve scegliere uno solo.
Questa distribuzione fornisce solo i file di configurazione principali per le shell che permette di installare; non sono previste impostazioni predefinite per gli utenti.
Per quanto riguarda la shell Bourne e quelle derivate, è disponibile il file /etc/profile
un po' complicato a causa della necessità, in certi casi, di determinare il tipo di shell utilizzato effettivamente per stabilire l'azione corretta.
Utenti e gruppi vengono gestiti nel modo tradizionale, per cui la maschera dei permessi utilizzata normalmente è 0228.
Per quanto riguarda l'utente e il gruppo nobody, è il caso di osservare che 65 534 e -2 sono la stessa cosa.
Lo script adduser inserisce gli utenti a partire dal numero 500 in poi.
halt:x:7:0:halt:/sbin:/sbin/halt operator:x:11:0:operator:/root:/bin/bash root:x:0:0::/root:/bin/bash shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown sync:x:5:0:sync:/sbin:/bin/sync bin:x:1:1:bin:/bin: ftp:x:404:1::/home/ftp:/bin/bash daemon:x:2:2:daemon:/sbin: adm:x:3:4:adm:/var/adm: lp:x:4:7:lp:/var/spool/lpd: mail:x:8:12:mail:/var/mail: postmaster:x:14:12:postmaster:/var/mail:/bin/bash news:x:9:13:news:/usr/lib/news: uucp:x:10:14:uucp:/var/spool/uucppublic: man:x:13:15:man:/usr/man: games:x:12:100:games:/usr/games: guest:x:405:100:guest:/dev/null:/dev/null nobody:x:65534:100:nobody:/dev/null:
root::0:root bin::1:root,bin,daemon daemon::2:root,bin,daemon sys::3:root,bin,adm adm::4:root,adm,daemon tty::5: disk::6:root,adm lp::7:lp mem::8: kmem::9: wheel::10:root floppy::11:root mail::12:mail news::13:news uucp::14:uucp man::15:man users::100:games nogroup::-2:Appunti di informatica libera 2003.01.01 --- Copyright © 2000-2003 Daniele Giacomini --
daniele @ swlibero.org
Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome configurazione_di_una_distribuzione_slackware.html
[successivo] [precedente] [inizio] [fine] [indice generale] [violazione GPL] [translators] [docinfo] [indice analitico]