Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > media > main-release > by-pkgid > e05c4514608e650af9b28d9be1d35a18 > files > 1601

howto-html-it-10.1-4mdv2008.1.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
 <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
 <TITLE>Saving Space mini-HOWTO </TITLE>


</HEAD>
<BODY>
<H1>Saving Space mini-HOWTO </H1>

<H2>di Guido Gonzato, 
<A HREF="mailto:guido@ibogeo.df.unibo.it">mailto:guido@ibogeo.df.unibo.it</A></H2>v1.0.1, 7 aprile 1999
<P><HR>
<EM>Questo mini-HOWTO vuole dare dei consigli per far stare la tua installazione
di Linux in uno spazio il pi&ugrave; piccolo possibile. &Egrave; rivolto specialmente agli
utilizzatori di notebook. Traduzione di Mariani Dario, 
<A HREF="darkpand@uni.net">darkpand@uni.net</A></EM>
<HR>
<H2><A NAME="s1">1. Introduzione</A></H2>

<P>
<P>Ho un notebook su cui ho installato Linux, insieme a Windows 95 che era
pre-installato. Ho ristretto la partizione di Windows a 500 Mb, facendo cos&igrave;
spazio a una di tipo Linux da 240 Mb. Per quanto possa sembrare piccola, sono
riuscito a installare un sistema Linux pressoch&eacute; completo, basato sulla Red
Hat 4.1 e su qualche trucco per liberare pi&ugrave; spazio possibile.
<P>Se hai bisogno di spazio, le indicazioni che troverai nella sezione seguente
possono liberare una considerevole fetta del tuo hard disk. L'unico
avvertimento che ti voglio dare &egrave; questo: non dare la colpa a me se qualcosa
va storto! Utilizzeremo un paio di programmi che per me hanno funzionato bene,
ma che sono pericolosi. Sei stato avvertito.
<P>
<H2><A NAME="s2">2. Requisiti di sistema</A></H2>

<P>
<P>Hai bisogno di:
<P>
<UL>
<LI> Un sistema Linux completamente funzionante (qualunque versione
dovrebbe andare bene);
</LI>
<LI> la comune utility di compressione <CODE>gzip</CODE>, o
alternativamente <CODE>bzip2</CODE> che puoi trovare all'indirizzo 
<A HREF="ftp://sunsite.unc.edu:/pub/Linux/utils/compress">ftp://sunsite.unc.edu:/pub/Linux/utils/compress</A>;  questo strumento
comprime meglio dello <CODE>gzip</CODE>, ma &egrave; anche un poco pi&ugrave; lento e consuma
pi&ugrave; memoria;
</LI>
<LI> il compressore di eseguibili <CODE>upx</CODE>, le cui home
page sono all'indirizzo 
<A HREF="http://cdata.tvnet.hu/~ml/upx.html">http://cdata.tvnet.hu/~ml/upx.html</A> e 
<A HREF="http://wildsau.idv.uni-linz.ac.at/mfx/upx.html">http://wildsau.idv.uni-linz.ac.at/mfx/upx.html</A>;
</LI>
<LI> il pacchetto <CODE>zlibc</CODE>, disponibile all'indirizzo 
<A HREF="ftp://sunsite.unc.edu:/pub/Linux/libs/compression">ftp://sunsite.unc.edu:/pub/Linux/libs/compression</A>. Si chiama
<CODE>zlibc-X.X.tar.gz</CODE>, dove <CODE>X.X</CODE> &egrave; l'ultima versione.
</LI>
</UL>
<P>Ci sono altri compressori di eseguibili. Uno &egrave; <CODE>gzexe</CODE> (dimenticalo),
mentre <CODE>tcx</CODE> era probabilmente il migliore prima che <CODE>upx</CODE> fosse
disponibile; ancora un altro &egrave; <CODE>tzx</CODE>, in teoria migliore di <CODE>tcx</CODE>. Il
fatto &egrave; che ha rovinato tutto su un PC "di scorta", bench&eacute; io non sia sicuro di aver fatto qualcosa di sbagliato.
Ti conviene utilizzare <CODE>upx</CODE>: &egrave; sicuro, efficiente, e molto utile. Vai sul
sicuro.
<P>
<H2><A NAME="s3">3. La procedura</A></H2>

<P>
<P>
<P>
<H2>3.1 Rimuovere i sorgenti del kernel</H2>

<P>
<P>I sorgenti del kernel occupano pi&ugrave; di 20 Mb, e potresti volerli rimuovere.
Se &egrave; cos&igrave;, ti suggerisco di compilare un nuovo kernel adattato alla tua
macchina una volta per tutte, e poi cancellare i sorgenti. Comunque, fai attenzione.
<P>
<P><EM>Non</EM> ti raccomando di rimuovere i sorgenti del kernel finch&eacute; non sei sicuro
che la tua macchina sia correttamente configurata. Inoltre, ti servono i
#include del kernel per compilare i programmi in C. Pensaci due volte!
<P>Se decidi di farlo, <EM>non</EM> rimuovere l'albero include/linux
a meno che non sia sicuro che non compilerai mai applicazioni sulla tua macchina.
<P>
<H2>3.2 Togliere applicazioni</H2>

<P>
<P>Ora, decidi di quali applicazioni hai <EM>veramente</EM> bisogno. Qualcuna pu&ograve;
dimostrarsi ridondante: per esempio, sei sicuro di non poter vivere senza
<CODE>emacs</CODE>? Puoi utilizzare <CODE>jed</CODE> al suo posto.
<P>Sta a te decidere cosa vuoi tenere. Qualche consiglio generale:
<UL>
<LI> <CODE>gcc</CODE> &egrave; un pacchetto molto grande. &Egrave; richiesto per ricompilare
il kernel e tutte le applicazioni per cui non ci sono binari Linux
pre-compilati.
&Egrave; necessario, ovviamente, se scrivi tuoi programmi in C o in Fortran
(con <CODE>f2c</CODE> o <CODE>g77</CODE>); considera i tuoi bisogni prima di rimuoverlo.
Altri compilatori come <CODE>lcc</CODE> sono buoni, ma non al livello di <CODE>gcc</CODE>.
Ti suggerisco di tenerlo;
</LI>
<LI> X11 &egrave; terribilmente grande, ma &egrave; una bella cosa da avere. Se decidi
di non potervi rinunciare, almeno cerca di farlo con il minimo indispensabile:
solo l'X server giusto, un semplice window manager, solo un <CODE>xterm</CODE>,
nessun font a 100 dpi, e cos&igrave; via;
</LI>
<LI> TeX e i pacchetti che lo accompagnano sono veramente molto grandi.
Lasciar stare il LaTeX e utilizzare il TeX semplice fa risparmiare
molto spazio; togliere i visualizzatori per X11 come <CODE>xdvi</CODE> e <CODE>ghostview</CODE>
&egrave; possibile utilizzando <CODE>dvitty</CODE>, <CODE>dvivga</CODE> e simili. L'eliminazione del software dvi per X11 pu&ograve; rendere anche X11 ridondante;
</LI>
<LI> i giochi non sono mai ``necessari''.
</LI>
</UL>
<P>
<P>
<H2>3.3 Ridurre i binari</H2>

<P>
<P>Cominciamo riducendo l'ampiezza dei binari. Spostati in /usr/bin
e digita il comando
<P>
<BLOCKQUOTE><CODE>
<PRE>
machine:/usr/bin# strip *
</PRE>
</CODE></BLOCKQUOTE>
<P>che toglier&agrave; i simboli contenuti nei binari. ripeti questo passo in
/usr/X11R6/bin/ e altre directory che potresti avere che contenegono 
eseguibili (non dimenticare di trovare i binari di TeX e <CODE>gcc</CODE>),
ma <EM>non</EM> eseguirlo in /sbin, /bin, o
/usr/sbin/ se ti sta a cuore la tua installazione!
<P>
<P>
<H2>3.4 Comprimere con <CODE>upx</CODE></H2>

<P>
<P>Prima di tutto, installa <CODE>upx</CODE> e leggi la sua documentazione. Poi spostati
in /usr/bin e avvialo con il comando <CODE>upx *</CODE>; comprimer&agrave;
tutti gli eseguibili, includendo i suid (<CODE>tcx</CODE> non lo avrebbe fatto).
Ripeti questo passo nelle altre directory come visto sopra.
<P>Ricordati di comprimere gli eseguibili ogni volta che installi un nuovo pacchetto!
<P>
<P>
<H2>3.5 Gzippare</H2>

<P>
<P>Ci sono molti altri file che possono essere compressi una volta e per sempre.
Cominciamo con /usr/doc/; spostati in questa directory e digita il
comando
<P>
<BLOCKQUOTE><CODE>
<PRE>
machine:/usr/doc# find . -type f -exec gzip -9 {} \; 2> /dev/null
</PRE>
</CODE></BLOCKQUOTE>
<P>Ricorda di comprimere i documenti ogni volta che installi un nuovo pacchetto!
<P>Ripeti questo passo nella directory contenente la documentazione per il TeX
(sul mio sistema, /usr/lib/texmf/texmf/doc/). Se sei
<EM>veramente sicuro</EM>, cancella del tutto queste directory.
<P>Ora, installa <CODE>zlibc</CODE> e compilalo. Se il tuo sistema &egrave; come il mio, la
compilazione fallir&agrave; lamentando la mancanza di una libc statica.
Non ti preoccupare; troverai un file chiamato <CODE>uncompress.o</CODE> che &egrave; quello
che ci serve. Spostalo in /usr/local/lib/ e aggiungi questa linea
al tuo /etc/profile:
<P>
<BLOCKQUOTE><CODE>
<PRE>
export LD_ELF_PRELOAD=/usr/local/lib/uncompress.o
</PRE>
</CODE></BLOCKQUOTE>
<P>Ora, puoi comprimere con <CODE>gzip</CODE> non solo la documentazione, ma anche i
file di dati: le applicazioni che li usano potranno utilizzarli ugualmente.
In teoria, il trucco dovrebbe funzionare con la maggior parte delle
applicazioni, ma in pratica il tuo grado di successo pu&ograve; variare. Il mio &egrave;
stato piuttosto basso.
<P>
<P>
<H2><A NAME="s4">4. Un esempio dalla vita reale</A></H2>

<P>
<P>Questo &egrave; il risultato ottenuto applicando i procedimenti di cui sopra ad una
delle mie macchine.
Prima del trattamento, <CODE>df</CODE> riportava 398.798 blocchi da 1024 byte
utilizzati:
<P>
<UL>
<LI> non ho rimosso i sorgenti e gli header del kernel;
</LI>
<LI> ho disinstallato molte applicazioni e tutti i giochi, ma ho lasciato
X11, sviluppo X11, sviluppo C e Fortran, Tcl/Tk, strumenti di rete, e poche
altre applicazioni standard. <CODE>df</CODE> ha riportato 244.668 blocchi usati;
</LI>
<LI> ho eseguito <CODE>upx</CODE> in /usr/bin, 
/usr/X11R6/bin, /usr/lib/texmf/bin/i586-linux, 
e /usr/lib/gcc-lib/i386-linux/2.7.2.1: 226.270 blocchi usati;
</LI>
<LI> ho compresso la documentazione in /usr/doc e
/usr/lib/texmf/texmf/doc: 198.745 blocchi usati.
</LI>
</UL>
<P>Per riassumere, ho cominciato con 398.798 blocchi e ho finito con 198.745.
Pensa alle cose che puoi mettere in questi 200.000 blocchi risparmiati!
Avrei potuto risparmiarne ancora di pi&ugrave; se avessi usato <CODE>bzip2</CODE> invece
di <CODE>gzip</CODE>.
<P>In media, se fai attenzione fin dall'inizio e installi solo le applicazioni
necessarie, comprimere gli eseguibili e i documenti pu&ograve; farti liberare
alcune decine di Mb. Su un notebook, ci&ograve; pu&ograve; essere veramente utile..
<P>
<P>
<H2><A NAME="s5">5. La fine</A></H2>

<P>
<P>
<H2>5.1 Copyright (in inglese)</H2>

<P>Unless otherwise stated, Linux HOWTO documents are copyrighted by
their respective authors. Linux HOWTO documents may be reproduced and
distributed in whole or in part, in any medium physical or electronic,
as long as this copyright notice is retained on all copies. Commercial
redistribution is allowed and encouraged; however, the author would
like to be notified of any such distributions.
<P>All translations, derivative works, or aggregate works incorporating
any Linux HOWTO documents must be covered under this copyright
notice. That is, you may not produce a derivative work from a HOWTO
and impose additional restrictions on its distribution. Exceptions to
these rules may be granted under certain conditions; please contact
the Linux HOWTO coordinator at the address given below.
<P>In short, we wish to promote dissemination of this information through
as many channels as possible. However, we do wish to retain copyright
on the HOWTO documents, and would like to be notified of any plans to
redistribute the HOWTOs.
<P>If you have questions, please contact Tim Bynum, the Linux HOWTO
coordinator, at tjbinum@sunsite.unc.edu via email.
<P>
<H2>5.2 Liberatoria</H2>

<P>
<P>``Saving Space mini-HOWTO'' &egrave; stato scritto da Guido Gonzato,
<A HREF="REMOVE_MEguido@ibogeo.df.unibo.it">REMOVE_MEguido@ibogeo.df.unibo.it</A>.
<P>Questo documento &egrave; fornito ``cos&igrave; com'&egrave;''. Ho posto grandi sforzi nello
scriverlo il pi&ugrave; accuratamente che mi fosse possibile, ma utilizzi le
informazioni contenute in esso a tuo rischio. In nessun caso posso essere
responsabile per qualsiasi danno dovuto all'uso di questa opera.
<P>I commenti sono i benvenuti. Per ogni richiesta, suggerimento, insulto, ecc.,
ritieniti libero di contattarmi.
<P>Goditi Linux e la vita,
<P>Guido   <CODE>=8-)</CODE>
<P>
</BODY>
</HTML>