Magazine Informatica

Guida all’installazione di Debian GNU/Linux: come orientarsi in Debian.

Creato il 17 novembre 2012 da Hugor @msdiaz61

DebianPer arrestare un sistema Debian GNU/Linux non si deve riavviare la macchina con il pulsante reset sul computer né spengere il computer. Debian GNU/Linux dovrebbe essere spento in modo controllato altrimenti si potrebbero perdere dei file e/o si rischia di danneggiare il disco. In un ambiente desktop solitamente è disponibile nel menu delle applicazioni l'opzione per il «log out» che permette anche di spengere (o riavviare) il sistema.

In alternativa è possibile premere la combinazione di tasti Ctrl+Alt+Canc . Come ultima possibilità, nel caso le combinazioni di tasti non funzionino o si preferisca digitare dei comandi, si può fare il login come root ed eseguire uno dei seguenti comandi poweroff, halt o shutdown -h now; usare reboot per riavviare il sistema.

Se non si conosce Unix.

Se non si ha familiarità con Unix probabilmente si dovrà uscire per comprare e leggere qualche libro. Molte informazioni possono essere trovate anche nella Debian Reference. Questo elenco di FAQ su Unix contiene parecchi documenti UseNet di valore storico.

Linux è una realizzazione di Unix. Il Linux Documentation Project (LDP) raccoglie parecchi HOWTO e libri online tutti riguardanti Linux. La maggior parte di questi documenti può essere installata in locale; è sufficiente installare il pacchetto doc-linux-html (la versione in formato HTML) o il pacchetto doc-linux-text (la versione in formato ASCII) e poi cercare i documenti in /usr/share/doc/HOWTO. Anche le versioni internazionali degli HOWTO del LDP sono disponibili come pacchetti Debian.

Orientarsi in Debian.

debian 010b_select_graphical-installer

Debian è leggermente diversa dalle altre distribuzioni. Anche se si ha familiarità con altre distribuzioni Linux, ci sono degli aspetti di Debian che è necessario conoscere per mantenere il proprio sistema in ordine. Questo capitolo contiene informazioni per orientarsi, non vuole essere un manuale su come usare Debian ma solo una breve panoramica del sistema per i frettolosi.

Sistema di gestione dei pacchetti Debian.

Il concetto più importante da apprendere è il sistema di pacchetti Debian. Essenzialmente le principali parti del proprio sistema si devono considerare sotto il controllo del sistema di pacchetti. Queste includono:

Per esempio, se si sostituisce /usr/bin/perl con un altro funzionante, e poi si aggiorna il pacchetto perl, il file che si è cambiato viene sovrascritto. Gli esperti aggirano questo problema bloccando («hold») i pacchetti tramite aptitude.

Uno dei migliori metodi di installazione è apt. Si può usare la versione a riga di comando apt-get o la versione testuale a tutto schermo aptitude. Si noti che apt permette anche di unire main, contrib e non-free in modo da avere sia la versione con limitazioni a causa dell'esportazione che la versione normale dei pacchetti.

Gestione delle versioni alternative di una applicazione.

Le versioni alternative delle applicazioni sono gestite da update-alternatives. Se si gestiscono più versioni delle applicazioni si consulti la pagina man di update-alternatives.

Gestione dei job di cron.

Qualsiasi job sotto la supervisione dell'amministrazione di sistema dovrebbe essere all'interno di /etc dato che sono dei file di configurazione. Se si ha un job di cron da eseguire quotidianamente, settimanalmente o mensilmente lo si deve inserire in /etc/cron.{daily,weekly,monthly}, poi gli script in queste directory sono richiamati da /etc/crontab ed eseguiti in ordine alfabetico in modo da serializzarli.

Invece se si ha un job di cron che (a) deve essere eseguito da un utente speciale oppure (b) deve essere eseguito a orari o con una frequenza particolari si può usare /etc/crontab oppure (consigliato) /etc/cron.d/whatever. Questi particolari file hanno anche una un campo aggiuntivo che permette di stabilire l'account utente con cui viene eseguito il job di cron.

In entrambi i casi si deve semplicemente modificare i file e cron si accorgerà automaticamente dei cambiamenti, non c'è bisogno di eseguire un comando speciale. Per maggiori informazioni si consulti cron(8), crontab(5) e /usr/share/doc/cron/README.Debian.

Ulteriori letture e informazioni.

Se sono necessarie delle informazioni su un particolare programma si dovrebbe prima provare con man programma oppure con info programma.

Molta documentazione è disponibile in /usr/share/doc. In particolare /usr/share/doc/HOWTO e /usr/share/doc/FAQ contengono molte informazioni interessanti. Per segnalare dei bug si consulti /usr/share/doc/debian/bug*. Per conoscere le peculiarità di un programma specifiche per Debian si consulti /usr/share/doc/(nome pacchetto)/README.Debian.

Il sito web Debian contiene una gran quantità di documentazione su Debian. In particolare si consultino le FAQ di Debian GNU/Linux e la Debian Reference. Un elenco della documentazione disponibile per Debian è disponibile nella pagina del progetto di documentazione Debian. È la comunità Debian a supportare se stessa, per iscriversi a una o più delle mailing list Debian si consulti la pagina d'iscrizione alle mailing list. Infine gli archivi delle mailing list Debian contengono una quantità enorme di informazioni su Debian.

Una fonte di informazioni su GNU/Linux è il Linux Documentation Project. Vi si possono trovare gli HOWTO e i riferimenti ad altre informazioni molto preziose sulle parti di un sistema GNU/Linux.

debian3

Configurazione del sistema per la posta elettronica.

Oggi l'email è una parte molto importante nella vita di molte persone. Ci sono molte opzioni da impostare; è molto importante che la posta sia configurata correttamente per alcuni programmi di utilità Debian; in questa sezione sono spiegati i concetti di base.

Un sistema di posta elettronica è composto da tre funzioni principali. La prima è il Mail User Agent (MUA), cioè il programma usato dagli utenti per scrivere e leggere la posta. Poi c'è un Mail Transfer Agent (MTA) che si occupa del trasferimento dei messaggi da un computer a un altro. Infine c'è un Mail Delivery Agent (MDA) che si occupa della consegna della posta in arrivo nelle caselle degli utenti.

Queste tre funzioni possono essere svolte da programmi diversi ma possono essere anche concentrate in uno o due programmi. È anche possibile che ognuna di queste funzioni sia svolta da programmi diversi a seconda della tipologia di posta.

Storicamente sui sistemi Linux e Unix un MUA molto popolare è mutt che, come la maggioranza dei programmi Linux tradizionali, è testuale. Spesso viene usato in combinazione con exim o sendmail come MTA e con procmail come MDA.

Con la crescente popolarità dei sistemi desktop grafici, l'uso di programmi di posta elettronica grafici come Evolution per GNOME, Kmail per KDE o Thunderbird di Mozilla (in Debian è disponibile con nome icedove) sta diventando molto comune. Questi programmi combinano le funzioni di MUA, MTA e MDA, ma possono essere, e spesso sono, usati in combinazione con i tradizionali strumenti Linux.

Configurazione predefinita della posta elettronica.

Anche se si vuole usare un programma di posta grafico è importante che sul proprio sistema Debian GNU/Linux sia installato e configurato correttamente anche un MTA/MDA tradizionale. Il motivo è che molte utilità in esecuzione sul sistema usano la posta elettronica per inviare degli avvisi all'amministratore di sistema su (potenziali) problemi o modifiche.

Per questa ragione i pacchetti exim4 e mutt fanno parte dell'installazione predefinita (sono disponibili a meno che durante l'installazione non sia stato deselezionato il task «standard»). exim4 combina MTA e MDA, inoltre è relativamente piccolo e molto flessibile. Con la configurazione predefinita gestisce soltanto la posta locale al sistema e le email indirizzate all'amministratore (l'account root) sono consegnate all'utente normale creato durante l'installazione[25].

Alla consegna, le email di sistema vengono aggiunte a un file in /var/mail/nome_account e possono essere lette con mutt.

Invio di email all'esterno del sistema.

Come detto in precedenza, dopo l'installazione, il sistema Debian è configurato solo per gestire la posta locale, non per l'invio e la ricezione della posta verso e da altri sistemi.

Se si vuole che exim4 gestisca la posta esterna, si consulti la prossima sezione nella quale sono illustrate le opzioni di configurazione disponibili. Si consiglia di fare delle prove per essere sicuri che la posta sia inviata e ricevuta correttamente.

Se si vuole usare un programma di posta grafico e un server di posta fornito dal proprio ISP (Internet Service Provider) o dalla propria azienda, non è necessario configurare exim4 per la gestione della posta esterna. È sufficiente configurare il proprio programma grafico di posta preferito in modo che usi i server corretti per inviare e ricevere le email (questa configurazione non rientra nello scopo di questa guida).

Purtroppo, in questo caso, potrebbe essere necessario configurare i singoli programmi di utilità per l'invio delle email. Una di queste utilità è reportbug, un programma che semplifica l'invio di una segnalazione di bug nei pacchetti Debian, infatti la sua configurazione predefinita si aspetta di poter usare exim4 per la spedizione della segnalazione.

Per configurare reportbug in modo che usi un server di posta esterno usare il comando reportbug --configure e rispondere «no» alla domanda se è disponibile un MTA. Così facendo viene chiesto di specificare il server SMTP da usare per inviare le segnalazioni di bug.

Configurazione del MTA (Mail Transport Agent) Exim4.

debian posta

Se si vuole che il proprio sistema gestisca anche posta elettronica esterna, è necessario configurare il pacchetto exim4:

# dpkg-reconfigure exim4-config

Con questo comando (da root), viene chiesto se si vuole spezzare la configurazione in più file. In caso di dubbi usare la risposta predefinita.

Poi vengono mostrati diversi scenari di posta molto comuni. Selezionare il tipo di configurazione che meglio rispecchia le proprie esigenze.


sito internet

Il sistema è connesso a una rete e la posta viene spedita e ricevuta direttamente con SMTP. Nelle schermate successive verranno poste altre domande per la configurazione, quali il nome di posta della macchina o un elenco di domini per i quali possa essere accettata o inoltrata la posta.

posta inviata tramite uno smarthost

In questo scenario la posta in uscita viene inoltrata ad un'altra macchina chiamata «smarthost», che si occupa della reale consegna del messaggio ai destinatari. Uno smarthost di solito conserva la posta in arrivo indirizzata al computer destinatario, pertanto questo non dovrà essere permanentemente connesso alla rete. Ciò significa che bisognerà scaricare la posta dallo smarthost tramite programmi come fetchmail.

In parecchi casi lo smarthost è il server di posta del proprio ISP, questa opzione è particolarmente adatta agli utenti dial-up. Lo smarthost può anche essere il server di posta aziendale oppure un altro sistema connesso alla propria rete.

posta inviata tramite uno smarthost; niente posta locale

Questo scenario è simile al precedente ma con una eccezione: il sistema non è configurato per gestire posta per il dominio locale. La posta di sistema (cioè quella per l'amministratore) viene comunque gestita.

solo consegna locale

Questa è la configurazione predefinita del proprio sistema.

nessuna configurazione per il momento

Questa opzione può essere selezionata soltanto se si è assolutamente sicuri di ciò che si sta facendo. Fino a quando non viene configurato, il sistema di posta non funziona e non può spedire né ricevere messaggi inoltre potrebbero andare perse delle importanti segnalazioni da parte delle utilità di sistema.


Se nessuno di questi scenari rispecchiasse le proprie necessità, oppure se servisse una configurazione più accurata, è necessario modificare, al termine dell'installazione, i file di configurazione posti nella directory /etc/exim4. Ulteriori informazioni su exim4 sono reperibili in /usr/share/doc/exim4; nel file README.Debian.gz sono contenuti dei dettagli riguardo la configurazione di exim4 e indica dove trovare altra documentazione.

Si noti che se non si dispone di un dominio ufficiale e si invia la propria posta direttamente su Internet, può accadere che la propria posta sia rifiutata dal server destinatario come misura anti-spam; si deve preferire l'uso del server di posta del proprio ISP. Invece, se si invia direttamente la posta, potrebbe interessare come usare un indirizzo email diverso da quello generato automaticamente. Se si usa exim4 come MTA, è possibile aggiungere una voce in /etc/email-addresses.

Compilazione di un nuovo kernel.

debian kernel

Perché qualcuno dovrebbe compilarsi un nuovo kernel? Spesso non è necessario dato che il kernel inserito in Debian gestisce la maggior parte delle configurazioni. Inoltre Debian offre parecchi kernel alternativi, quindi si dovrebbe come prima cosa controllare se fra i pacchetti con kernel alternativi ce n'è uno che si adatta meglio al proprio hardware. Comunque può essere utile compilare un nuovo kernel per poter:

  • gestire hardware particolare o gestire conflitti hardware con kernel preconfezionati


  • usare opzioni del kernel che non sono supportate dai kernel preconfezionati (per esempio il supporto per la memoria alta)


  • ottimizzare il kernel rimuovendo i driver inutili in modo da velocizzare l'avvio del sistema


  • creare un kernel monolitico al posto di uno modulare


  • usare un kernel aggiornato o di sviluppo


  • imparare cose nuove sui kernel linux


Gestione dell'immagine del kernel.

Non ci si deve impaurire nel provare a compilare il kernel. È divertente e utile.

Per compilare il kernel con il metodo seguito da Debian sono necessari alcuni pacchetti: fakeroot, kernel-package, linux-source-2.6 e pochi altri che probabilmente sono già installati (si consulti /usr/share/doc/kernel-package/README.gz per l'elenco completo).

Questo metodo crea un .deb dai sorgenti del kernel e, se si hanno dei moduli non-standard, crea anche un .deb di questi moduli sincronizzato con il precedente. Questo è il miglior modo di gestire le immagini del kernel; in /boot vengono inseriti il kernel, il file System.map e un log con le configurazioni attive durante la compilazione.

Notare che non è obbligatorio compilare il kernel «alla Debian»; ma l'uso del sistema di pacchetti per gestire il kernel è realmente più sicuro e più semplice. In pratica si possono anche reperire i sorgenti del kernel direttamente da Linus anziché da linux-source-2.6 e comunque usare il metodo di compilazione con kernel-package.

Notare che è possibile trovare la documentazione completa sull'uso di kernel-package in /usr/share/doc/kernel-package. Questa sezione contiene solo un breve manuale introduttivo.

D'ora in avanti si suppone che si abbia il controllo completo della macchina e che i sorgenti del kernel siano da qualche parte all'interno della propria home directory. Si suppone anche che la versione del kernel sia 2.6.32. Assicurarsi di trovarsi nella directory in cui si vuole scompattare i sorgenti del kernel, estrarli usando tar xjf /usr/src/linux-source-2.6.32.tar.bz2 e cambiare la directory corrente in linux-source-2.6.32 che è stata appena creata.

Adesso si può configurare il kernel. Eseguire make xconfig se X11 è installato, configurato e in esecuzione; altrimenti eseguire make menuconfig (è necessario che sia installato il pacchetto libncurses5-dev). Prendersi tutto il tempo necessario per leggere l'aiuto in linea e scegliere con attenzione; in caso di dubbi di solito è consigliabile includere i driver dei dispositivi (il software che gestisce le periferiche hardware come le schede Ethernet, i controller SCSI e così via) se non si è sicuri. Attenzione: se non si capisce il significato delle altre opzioni non legate a un hardware specifico si dovrebbero lasciare al valore predefinito. Non ci si deve dimenticare di selezionare «Kernel module loader» in «Loadable module support» (normalmente non è selezionato), altrimenti il proprio sistema Debian rischia di avere dei seri problemi.

Ripulire i sorgenti e ripristinare i parametri di kernel-package usando make-kpkg clean.

Adesso compilare il kernel con: fakeroot make-kpkg --initrd --revision=custom.1.0 kernel_image. Il numero di versione «1.0» può essere cambiato secondo le necessità; questo è semplicemente il numero di versione che si può usare per tener traccia delle compilazioni del kernel. Allo stesso modo si può inserire qualsiasi parola al posto di «custom» (p.e. il nome dell'host). La compilazione del kernel richiede un po' di tempo, in base alla potenza della macchina.

Finita la compilazione è possibile installare il proprio kernel personalizzato come qualsiasi altro pacchetto. Da root eseguire dpkg -i ../linux-image-2.6.32-sottoarchitettura_custom.1.0_i386.deb. La parte opzionale sottoarchitettura indica la sottoarchitettura, per esempio «686», e dipende dalle impostazioni del kernel. dpkg -i installa il kernel più alcuni file di supporto. Per esempio sono installati i file System.map (utile per il debug del kernel) e /boot/config-2.6.32 che contiene la configurazione. Il nuovo pacchetto con il kernel è anche in grado di aggiornare automaticamente il bootloader in modo da poter usare il nuovo kernel. Se si è creato anche un pacchetto con i moduli allora è necessario installare anche questo pacchetto.

Adesso si deve riavviare il sistema: leggere attentamente tutti gli avvertimenti che potrebbero apparire durante il passo precedente e poi eseguire shutdown -r now.

Per ulteriori informazioni sui kernel Debian e sulla compilazione del kernel si consulti il Debian Linux Kernel Handbook. Per ulteriori informazioni su kernel-package si consulti l'eccellente documentazione in /usr/share/doc/kernel-package.

Recupero di un sistema danneggiato.

Purtroppo può capitare che qualcosa vada storto e il sistema che è stato accuratamente installato non sia più avviabile. È possibile che si sia danneggiata la configurazione del boot loader durante un aggiornamento oppure che un nuovo kernel non si avvii oppure che dei raggi cosmici abbiano colpito il disco fisso e alcuni bit in /sbin/init siano impazziti. A prescindere dalla causa è necessario avere un sistema funzionante per riparare il sistema originale, in questo caso può essere utile la modalità di ripristino.

Per attivare la modalità di ripristino inserire rescue al prompt boot: oppure avviare usando il parametro rescue/enable=true. Verranno mostrate le prime schermate dell'installatore con una nota in un angolo che indica si sta usando la modalità di ripristino e non quella d'installazione. Il sistema non verrà sovrascritto! La modalità di ripristino si avvale delle funzionalità per il riconoscimento dell'hardware presenti nell'installatore in modo da garantire che i dischi, i dispositivi di rete, ecc. siano disponibili mentre si cerca di riparare il sistema.

Al posto del programma di partizionamento viene mostrato un elenco delle partizioni sul sistema e viene chiesto di sceglierne una. Normalmente si sceglie la partizione che contiene il filesystem di root che si vuole riparare. Si possono scegliere le partizioni su device RAID e LVM ma anche quelle create direttamente sui dischi.

Se possibile l'installatore fornisce una shell sul filesystem che si è scelto, questa shell può essere usata per effettuare qualsiasi operazione necessaria al ripristino. Per esempio, se si vuole reinstallare il boot loader GRUB nel Master Boot Record del primo disco si deve inserire il comando grub-install '(hd0)'.

Se l'installatore non è in grado di fornire una shell usabile nel file system che si è scelto come root forse il file system è corrotto e dopo aver dato un avviso viene invece fornita una shell nell'ambiente dell'installatore. In questo ambiente non sono disponibili molti strumenti ma dovrebbero essere comunque sufficienti per ripristinare il sistema. Il file system che era stato scelto come quello di root viene invece montato sulla directory /target.

In entrambi i casi una volta chiusa la shell il sistema si riavvia automaticamente.

Si noti che riparare dei sistemi danneggiati può essere molto complicato e questo manuale non analizza tutti i particolari che si possono danneggiare e come ripristinarli. Se non si sa cosa fare si consulti un esperto.

debian_kernel_free


Potrebbero interessarti anche :

Ritornare alla prima pagina di Logo Paperblog

Possono interessarti anche questi articoli :