Sophie

Sophie

distrib > Mandriva > 9.1 > i586 > by-pkgid > f1098342ec4a2b28475e34123ce17201 > files > 1415

howto-html-it-9.1-0.5mdk.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<TITLE>mini-HOWTO su come fare l'upgrade di una distribuzione Linux </TITLE>


</HEAD>
<BODY>
<H1>mini-HOWTO su come fare l'upgrade di una distribuzione Linux </H1>

<H2>Greg Louis, <CODE>glouis@dynamicro.on.ca</CODE></H2>v1.11, 6 Giugno 1996
<P><HR>
<EM>Suggerimenti sull'upgrade da una distribuzione Linux ad un'altra.</EM>
<HR>
<H2><A NAME="s1">1. IMPORTANTE!!! Disclaimer e Copyright</A></H2>

<P>The procedure to which this document attempts to be a guide is
inherently dangerous to the programs and data stored in your computer.
You carry out any such procedure entirely at your own risk.  The steps
described in this document worked for the author; there is no
guarantee that they will work for you, nor that you can attempt to
follow them without serious damage to your computer's programs and/or
data.  You are entirely on your own in any use you may make of the
information presented herein, and the author shall not be liable in
any way whatsoever for any damage or inconvenience of any kind that
you may suffer in so doing.
<P>This document is copyright 1996, Dynamicro Consulting Limited, and is
released under the terms of the GNU General Public License.  This
basically means that you may copy and modify it at will, but may not
prevent others from doing likewise.
<P>Comments and questions may be directed to the author.  Especially
welcome, for use in future revisions, are accounts of successful
upgrades of complex systems.
<P>
<BLOCKQUOTE>
<EM>L'unica licenza valida &egrave; quella originale in lingua
inglese. Di seguito ne trovate una traduzione abbastanza fedele che
per&ograve; non ha alcun valore.</EM>
</BLOCKQUOTE>
<P>La procedura su cui questo documento cerca di essere una guida &egrave;
pericolosa per i programmi ed i dati immagazzinati nel computer. Portate
avanti detta procedura a vostro rischio. I passi descritti in questo
documento hanno funzionato per l'autore; non c'&egrave; nessuna garanzia che
funzionino per voi, n&eacute; che possiate cercare di seguirle senza seri danni
ai programmi ed ai dati contenuti nel vostro computer. Qualsiasi uso delle
informazioni qui date &egrave; a vostro rischio e pericolo, e l'autore non pu&ograve;
essere considerato responsabile per qualsiasi danno o inconveniente di
qualsiasi tipo che vi possa accadere nel farlo.
<P>La suddetta clausola &egrave; valida anche per quanto riguarda la traduzione
italiana: il traduttore non potr&agrave; essere considerato responsabile per
qualsiasi errore o inesattezza della traduzione. Usate le informazioni
contenute in questo documento completamente a vostro rischio e pericolo.
<P>Questo documento &egrave; copyright 1996 Dynamicro Consulting Limited, ed &egrave;
distribuito sotto la licenza General Public License GNU; ci&ograve; significa che
potete copiarlo e modificarlo a vostro piacimento, ma non potete evitare
che altri facciano lo stesso.
<P>La traduzione italiana &egrave; copyright 1997 Eugenia Franzoni
(eugenia@pluto.linux.it).
<P>Potete rivolgere commenti e domande direttamente all'autore. Sono ben
accette, per uso in versioni successive, relazioni su upgrade riusciti di
sistemi complessi.
<P>
<H2><A NAME="s2">2. Cambiamenti dalla versione 1.1</A></H2>

<P>
<UL>
<LI>Aggiunta questa sezione </LI>
<LI>Aggiunto il suggerimento di Zolt&aacute;n Hidv&eacute;gi su mtime e ctime.
Grazie, Zolt&aacute;n!</LI>
<LI>Aggiunta la sezione Ringraziamenti</LI>
</UL>
<P>
<H2><A NAME="s3">3. Introduzione</A></H2>

<P>
<H2>3.1 Come uccidere e resuscitare Linux</H2>

<P>Lo scopo di questo documento &egrave; di dare dei suggerimenti per aiutarvi nella
distruzione e riinstallazione di un sistema Linux. Non &egrave; affatto un libro
di "ricette" sicuro, ma spero che servir&agrave; come indicazione su quello a cui
si deve pensare, e sull'ordine in cui fare le cose. Mi sarebbe stato molto
di aiuto se qualcun altro avesse scritto una cosa del genere prima del mio
primo upgrade; quindi spero che sia di aiuto a voi, se dovete ricostruire
una macchina Linux.
<P>Non prendetelo come vangelo! Alcune cose cambieranno quasi sicuramente.
Anche i nomi delle directory presenti nel documento possono essere diverse
da quelle che dovete usare; alcuni hanno /usr/home invece di /home, ad
esempio; altri la chiamano /u, ed altri (brivido :) mettono addirittura
tutti gli utenti direttamente sotto /usr stessa! Non posso essere
specifico per il vostro sistema, quindi ho semplicemente usato i nomi come
sono nel mio.
<P>Noterete anche che uso la distribuzione Slackware, e che assumo abbiate
abbastanza RAM e spazio disco per installare i sorgenti del kernel Linux e
compilare il kernel. Se il vostro sistema &egrave; diverso, alcune delle mie
raccomandazioni non saranno applicabili, ma spero che potrete comunque
trovare lo schema generale che vi possa essere di aiuto nel progetto di
ricostruzione. 
<P>
<H2>3.2 Perch&eacute; farlo?</H2>

<P> Buona domanda! Se si pu&ograve; evitare, non fatelo! (E questa &egrave; la
raccomandazione pi&ugrave; importante di tutta questa guida!!!) ...ma ci sono
occasioni in cui non se ne pu&ograve; fare a meno.
<P>Ad esempio, ho installato un hard disk da 4Gb e poi ho scoperto che
Linux della Slackware 2.0 non sapeva che gli hard disk potessero essere
pi&ugrave;
grandi di 2Gb, e si confondeva orribilmente; quindi ho dovuto fare un
upgrade all'allora ultima Slackware 2.3. Quell'upgrade &egrave; stata
un'esperienza estenuante, ed &egrave; parte della ragione per cui sto scrivendo
queste note. Ho sbagliato praticamente tutto, e solo la fortuna ed il
fatto che avessi un'altro Linux funzionante mi ha salvato dal disastro.
<P>Un altro esempio: ho scoperto che non potevo compilare un kernel linux
a.out funzionante con la serie 1.3, usando un'installazione esterna della
Slackware 2.3 (un'altra macchina, non quella con cui ho impasticciato). Ho
preso la palla al balzo, ho comprato la Slackware 3.0 su CDROM e ho
convertito tutto a ELF. Stavolta la reinstallazione &egrave; andata meglio,
grazie in parte all'esperienza precedente, ed &egrave; servita come spunto per la
maggior parte delle idee che vi sto offrendo qui. 
<P>
<H2>3.3 Devo per forza ``distruggere e reinstallare''?</H2>

<P>Stranamente &egrave; pi&ugrave; sicuro. Se installate sopra un sistema Linux esistente,
&egrave; probabile che abbiate una miscela di binari vecchi e nuovi, e in genere
un vero problema per l'amministrazione. Ripulire il sistema del tutto, e
poi rimettere solo quello di cui sapete avere bisogno &egrave; un modo drastico
ma efficace di avere un risultato pulito. (Naturalmente stiamo parlando di
installare una distribuzione per intero, non di aggiornare uno o due
pacchetti! Il modo migliore per evitare una reinstallazione completa &egrave;,
precisamente, di tenere aggiornati i singoli componenti -- specialmente
gcc e le sue librerie, e le binutils. Se quello che usate &egrave;
ragionevolmente aggiornato, e potete tenercelo prendendo, e se necessario
compilando, del nuovo codice di tanto in tanto, non c'&egrave; bisogno di un
aggiornamento di massa).
<P>Come nota Patrick Volkerding (anche lui raccomanda di togliere tutto per
fare gli upgrade), installare ELF sopra un sistema funzionante a.out &egrave; il
modo sicuro per provocare un disastro: almeno, se ne sapete abbastanza per
provarci, non avete bisogno di questa guida!
<P>Anche senza questa complicazione, per&ograve;, sarebbe meglio ricostruire tutto
da zero.
<P>
<H2>3.4 Quanto tempo ci vuole?</H2>

<P>Naturalmente dipende dalla complessit&agrave; del sistema, ma posso dire che, per
l'aggiornamento andato bene (l'altro? -- non chiedetemelo! :) ci ho messo
circa dieci ore per i backup, sei ore per ricostruire il sistema per poter
riabilitare i login, e un'altra mezza giornata pi&ugrave; o meno per rimettere a
posto le cose meno cruciali. Col passar del tempo mi accorgo che ci sono
delle piccole cose che non sono come le vorrei -- le aggiusto mano a mano
che le trovo -- ma in tutto dovrebbero bastare venti ore di lavoro per un
progetto ragionevolmente complesso. Forse meno se state reinstallando da
hard disk (io ho usato il CDROM) o pi&ugrave; se dovete installare da floppy.
Forse meno se avete un Pentium veloce, pi&ugrave; se avete un 386. Avete capito
il concetto.
<P>E questo per quanto riguarda l'installazione. Ecco come impostarla, una
volta deciso che deve essere fatta. Armatevi di forza d'animo, di caffeina
o cose del genere, e:
<P>
<H2><A NAME="s4">4. Scrivete tutto quello che fate.</A></H2>

<P>E' estremamente prezioso avere un registro di quello che avete fatto nel
processo di preparazione e di applicazione delle modifiche.
E' specialmente importante una lista dei backup che farete in preparazione
della distruzione del sistema esistente.
<P>
<H2><A NAME="s5">5. Fate un backup completo del sistema esistente.</A></H2>

<P>Generalmente parlando, i backup tendono a venir scritti su mezzi ad
accesso sequenziale. Posto questo, non vorrete usare il backup completo
per reinstallare un numero significativo di file: ne ha troppi che non
volete. E' meglio creare dei piccoli backup di segmenti individuali che
sapete che dovrete reistallare del tutto. Far&ograve; degli esempi pi&ugrave; avanti.
<P>Perch&eacute; cominciare con un backup completo? Ci sono due ragioni principali:
per prima cosa, nell'eventualit&agrave; di una catastrofe nell'installazione del
nuovo sistema, avrete modo di tornare indietro al punto di inizio con un
minimo sforzo. Secondo, non importa quanto prepariate bene la nuova
installazione, c'&egrave; una probabilit&agrave; molto alta che uno o due file
importanti vengano dimenticati; in questo caso la scomodit&agrave; di dover
estrarre questi file dal backup completo sar&agrave; preferibile a farne a meno.
<P>Per risparmiare tempo e spazio, se avete ancora il mezzo di distribuzione
per la vecchia versione Linux, potete salvare solo i file che hanno
l'mtime o il ctime pi&ugrave; recente della data dell'installazione originale.
<P>
<H2><A NAME="s6">6. Fare il backup di /etc e delle sue sottodirectory su uno o pi&ugrave;</A>floppy.</H2>

<P>Questo &egrave; l'estremo opposto: non reinstallerete questi file (per la maggior
parte, almeno), ma li paragonerete con quelli nuovi che vengono creati
durante l'installazione. Perch&eacute;? Perch&eacute; i file nuovi potrebbero contenere
informazioni che i vecchi non hanno, o potrebbero esprimere le stesse cose
in modo diverso. I cambiamenti nei protocolli, l'aggiunta di nuovi
strumenti o l'implementazione di nuove caratteristiche in strumenti
esistenti sono tutte cose che possono apportare dei cambiamenti nel
formato dei file di configurazione e negli script di avvio contenuti
nell'albero /etc, e molto probabilmente dovrete immettere i vostri vecchi 
dati nei nuovi file per mantenere i formati nuovi e sfruttare i
miglioramenti.
<P>
<H2><A NAME="s7">7. Fate backup separati di ogni gruppo di file che volete conservare.</A></H2>

<P>Questa &egrave; la parte pi&ugrave; variabile del lavoro, e tutto quello che posso fare
&egrave; descrivere quello che ho fatto io nel mio sistema, nella speranza che
servir&agrave; come guida. Sostanzialmente, dovete dare un'occhiata a tutte le
directory che contengono:
<P>
<UL>
<LI> file che non fanno parte della vostra installazione linux standard,
o</LI>
<LI> file pi&ugrave; recenti di quelli che installerete  con la nuova
installazione</LI>
</UL>
<P>e separate solo quei file che volete mantenere.
<P>(Un'altra strategia possibile &egrave; di fare il backup di tutti i file con
mtime o ctime pi&ugrave; recenti del giorno della precedente installazione di
Linux, come detto sopra, e recuperarli da l&igrave;. Se fate cos&igrave;, dovrete tener
conto che la nuova distribuzione di Linux potrebbe contenere dei file
ancora pi&ugrave; recenti di quelli che avete salvato.)
<P>Nel mio caso, ho finito per fare un file .tgz sul mezzo di backup per
ciascuna di queste directory:
<P>
<UL>
<LI> /usr/lib/rn</LI>
<LI> /usr/lib/smail</LI>
<LI> /usr/lib/trn (il resto di /usr/lib era da reinstallare)</LI>
<LI> /usr/local/src</LI>
<LI> /usr/local/bin</LI>
<LI> /usr/local/lib</LI>
<LI> /usr/local/lpfont</LI>
<LI> /usr/local/man</LI>
<LI> /usr/local/sbin</LI>
<LI> /usr/local/thot (c'erano altri file in /usr/local che non mi
servivano)</LI>
<LI> /usr/openwin</LI>
<LI> /usr/src/lilo-17 (perch&eacute; la mia Slackware nuova aveva ancora la
versione
16)</LI>
<LI> /usr/src/linux-1.2.13 (perch&eacute; l'avevo configurato)</LI>
<LI> /usr/X11R6/lib/X11/app-defaults</LI>
<LI> /usr/X11R6/lib/X11/initrc (il resto di Xfree86 era da reinstallare)</LI>
<LI> /var/named</LI>
<LI> /var/openwin</LI>
<LI> /var/texfonts</LI>
</UL>
<P>La mia macchina era relativamente semplice, dato che non c'erano file di
spool di cui preoccuparsi. Non ho uno spool di news in quel sistema, e
dato che ci sono solo due utenti &egrave; pi&ugrave; semplice leggere tutta la posta
prima di fare lo shutdown. Negli altri casi bisogna fare il backup delle
directory /var/spool all'ultimo momento, come naturalmente le directory
delle librerie e dei siti delle news!
<P>
<H2><A NAME="s8">8. Preparate i dischi di root e boot per la nuova installazione.</A></H2>

<P>I dettagli di come farlo si possono trovare nella guida di installazione
della distribuzione che usate.
<P>
<H2><A NAME="s9">9. Formattate i dischetti per il kernel temporaneo e per la</A>compilazione finale.</H2>

<P>Ve ne serviranno due, un dischetto per ciascuno.
<P>Fatto tutto questo, siete pronti per l'Ora X. Il passo successivo rende il
sistema non disponibile.
<P>
<H2><A NAME="s10">10. Inibite i login e fate il backup delle directory /root e /home.</A></H2>

<P>E' l'ultima cosa da fare sui vecchi sistemi prima di distruggerli, in
modo da poter avere i dati di root e degli utenti il pi&ugrave; aggiornati
possibile.
<P>
<H2><A NAME="s11">11. Avviate il sistema dai dischetti di boot e root.</A></H2>

<P>
<H2><A NAME="s12">12. Cancellate le partizioni Linux con fdisk e ricreatele.</A></H2>

<P>La guida di installazione vi spiegher&agrave; come farlo; cos&igrave; distruggerete il
sistema. Da ora in poi dipendete dalla qualit&agrave; dei backup che avete fatto
nei passi precedenti! Siete stati avvisati!
<P>
<H2><A NAME="s13">13. Installate la nuova versione di Linux.</A></H2>

<P>Ci sono gi&agrave; diversi buoni documenti che descrivono come portare avanti
questo passo, quindi non scender&ograve; nel dettaglio. Continuate da qui quando
il nuovo sistema pu&ograve; essere avviato dal'hard disk.
<P>Nel frattempo, assicuratevi di creare un dischetto da cui possiate avviare
il sistema, dato che il kernel installato di default da Linux deve essere
sostituito, e nel farlo possono accadere degli incidenti. Assicuratevi di
installare i pacchetti di sviluppo e i sorgenti del kernel.
<P>
<H2><A NAME="s14">14. Con il nuovo sistema linux avviato dall'hard disk, modificate</A>/etc/fstab</H2>

<P>ed aggiungete la partizione di swap. Poi date il comando "swapon -a".
Non so perch&eacute;, ma il programma di installazione della Slackware non si
offre di farlo se la partizione di swap gi&agrave; esiste. Poi, quando avviate il
sistema nuovo e lo script rc.S prova ad abilitare lo swap, non trova la
partizione nel file fstab e lo swap non funziona. Questo procedimento
risolve il problema.
<P>
<H2><A NAME="s15">15. Recuperate le configurazioni nella directory /etc e nelle sue</A>sottodirectory.</H2>

<P>Coem descritto sopra, non potete semplicemente copiare i vecchi file in
/etc ed aspettarvi che funzioni tutto; con alcuni file si pu&ograve; fare, ad
esempio /etc/XF86Config (sempre che stiate usando la stessa versione di
Xfre86 -- e lo stesso hardware video -- dell'installazione precedente).
Per la maggior parte, per&ograve;, &egrave; meglio usare diff per paragonare i file
vecchi ai nuovi prima di copiarli. Controllate specialmente dei
cambiamenti significativi nei file in /etc/rc.d, dove potreste dover
modificare tutto a mano, invece di copiare i vecchi script dal backup. Una
volta finito, riavviate il sistema.
<P>
<H2><A NAME="s16">16. Configurate e ricompilate il kernel di Linux.</A></H2>

<P>Anche se questo passo non &egrave; necessario per avere un kernel che supporta il
vostro hardware, vale la pena farlo per evitare di avere nel kernel i
driver di tutta quella roba che sulla macchina non c'&egrave;. Per dettagli su
questo, leggete il Kernel HOWTO. Installate prima il kernel ricompilato su
un dischetto: quando vedete che da l&igrave; l'avvio &egrave; a posto, installatelo
sull'hard disk, avviate lilo se lo state usando, e riavviate il computer.
<P>
<H2><A NAME="s17">17. Recuperate quello che avevate salvato.</A></H2>

<P>Potrebbe essere necessario reinstallare alcuni dei binari dai sorgenti: io
ho dovuto farlo con lilo, ad esempio, dato che la mia versione era pi&ugrave;
recente di quella nell'installazione Slackware, e non avevo fatto il
backup del file binario da /sbin. Dovreste controllare tutti i programmi
che recuperate dai backup, e confermare l'esistenza e la correttezza dei
file di configurazione, delle librerie e cos&igrave; via. In alcuni casi potreste
dover recuperare i programmi in un ordine specifico: avete annotato delle
cose durante il backup, vero? ;-)
<P>
<H2><A NAME="s18">18. Controllate la sicurezza.</A></H2>

<P>Controllate i permessi dei file e delle directory in modo da essere sicuri
che l'accesso non &egrave; n&eacute; troppo ristretto n&eacute; troppo facile. Io trovo che la
Slackware tende ad essere un ambiente un po' aperto per i miei gusti,
quindi vado in giro a cambiare i 755 in 711 per i binary nelle directory
../bin e cose del genere. O addirittura i 700 in quelli ../sbin.
Ci vuole un'attenzione particolare se state facendo girare un server ftp,
ma probabilmente ci avete gi&agrave; pensato ;-).
<P>
<H2><A NAME="s19">19. Abilitate i login.</A></H2>

<P>E' tutto a posto. Nel prossimo periodo, ci saranno probabilmente dei
dettagli da chiarire, ma il grosso del lavoro &egrave; fatto. Buon divertimento!
<P>
<H2><A NAME="s20">20. Mi dispiace, ma ancora una volta:</A></H2>

<P><B>USATE QUESTE INFORMAZIONI A VOSTRO RISCHIO E PERICOLO!</B>
<P>(Vedere il disclaimer all'inizio di questo documento.)
<P>
<H2><A NAME="s21">21. Ringraziamenti</A></H2>

<P>Grazie a Zolt&aacute;n Hidv&eacute;gi per aver contribuito al contenuto di questo
mini-HOWTO.
<P>
</BODY>
</HTML>