<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <HTML> <HEAD> <TITLE>Battery Powered Linux Mini-HOWTO</TITLE> </HEAD> <BODY> <H1>Battery Powered Linux Mini-HOWTO</H1> <H2>Hanno Mueller, <CODE> <A HREF="mailto:hanno@lava.de">hanno@lava.de</A></CODE> <CODE> <A HREF="http://www.lava.de/~hanno/">http://www.lava.de/~hanno/</A></CODE></H2>Dec 21, 1997 <P><HR> <EM>Questo documento spiega come ridurre il consumo di energia di un sistema Linux modificando alcuni parametri della sua configurazione, il che sarà utile a chiunque usi Linux su un computer portatile. Ci sono anche alcune informazioni generiche sulla manutenzione delle batterie del vostro portatile. Se state usando Linux su un computer da tavolo, probabilmente non avete nessun bisogno di leggere questo HOWTO.</EM> <HR> <H2><A NAME="s1">1. Introduzione</A></H2> <P> <P>``Per bambini di 6 anni o più. Batterie incluse.'' <P> <P> <H2>1.1 Prima che lo chiediate</H2> <P> <P>Questo documento non descrive l'installazione di Linux sui laptop, ma solo come ottimizzare per un laptop un sistema Linux già ivi installato. Per informazioni sull'installazione di Linux leggete l'<EM>Installation-HOWTO</EM> o il manuale del vostro distributore di Linux. <P> <P>Questo documento non descrive nemmeno l'uso di un gruppo di continuità né del demone <CODE>powerd</CODE> , sebbene un UPS non sia altro che una grossa batteria. Tale argomento è trattato nell'<EM>UPS-HOWTO</EM> . <P> <P> <H2>1.2 Di cosa parla questo documento</H2> <P> <P>Sempre più persone ormai possiedono computer portatili e, di conseguenza, sempre più persone installano Linux su tali computer. <P> <P>L'installazione e l'uso di Linux su di un laptop non è di solito un problema, perciò potete benissimo provare. Diversamente da altri sistemi operativi, Linux gira bene anche su hardware molto vecchio, permettendovi di dare nuova vita ad un anziano portatile semplicemente installandovi Linux. <P> <P>Se vi serve aiuto con l'installazione di Linux su un computer portatile, o se avete domande sull'hardware dei portatili in genere, potete consultare l'ottima <EM>Linux Laptop webpage</EM> su <CODE> <A HREF="http://www.cs.utexas.edu/users/kharker/linux-laptop/">http://www.cs.utexas.edu/users/kharker/linux-laptop/</A></CODE> dove troverete molte informazioni utili e un aiuto dettagliato. La Linux Laptop Page descrive la configurazione dell'hardware per specifici modelli di portatili e di chipset. <P> <P>Questo HOWTO comunque si concentrerà sul problema comune di tutti i portatili: <EM>Il Consumo di Energia</EM>. <P> <P>Non ho ancora trovato una distribuzione di Linux che comprenda una configurazione <EM>ottimizzata</EM> per i portatili. Così, visto che non ho trovato questo tipo di informazioni da nessun'altra parte, ho iniziato a raccogliere qualche semplice ed efficace trucco che potrà aiutarvi a risparmiare le batterie e quindi ad allungare l'autonomia del vostro sistema mentre è lontano da una presa di corrente. <P> <P>(Nota. Ho ricevuto la lamentela di un lettore, il quale diceva che questi trucchi non erano molto utili con il suo portatile. Ma allora funzionano o no? Sì, ma non aspettatevi miracoli. Io sono stato in grado di portare l'autonomia del mio portatile da 90 a più di 120 minuti.) <P> <P> <H2>1.3 Indicazioni utili</H2> <P> <P>Se siete esperti di portatili potete probabilmente saltare la sezione <A HREF="#GeneralInformation">Informazioni generiche</A>. Se siete esperti di Linux, potrete trovare ciò che vi interessa davvero nella sezione <A HREF="#Changingsomegeneralsystemsettings">Variazione di alcuni parametri generali del sistema</A>. Se siete un distributore di Linux, leggete <A HREF="#AmessagetoLinuxdistributors">Messaggio ai curatori di distribuzioni Linux</A>. <P> <P> <H2>1.4 Suggerimenti</H2> <P> <P>Qualsiasi suggerimento è bene accetto. Mandate per favore i vostri commenti a <CODE> <A HREF="mailto:hanno@lava.de">hanno@lava.de</A></CODE>. I miei trucchi hanno funzionato sul vostro sistema? Avete nuovi consigli? Ci sono link obsoleti in questo testo? <P> <P>Mi dispiace, ma non sarò capace di rispondere a domande su specifici modelli di portatili. Non pretendo di essere un mago dei laptop, semplicemente ne ho uno e voglio condividere con voi le informazioni che ho raccolto. Prima di contattarmi visitate la Linux Laptop webpage, probabilmente qualcun altro ha già scritto una pagina dedicata al vostro modello, oppure interrogate il supporto tecnico del produttore del portatile. Oppure chiedete a qualcuno nel newsgroup <CODE> <A HREF="news:comp.sys.laptops">comp.sys.laptops</A></CODE> . <P> <P> <H2>1.5 Disclaimer</H2> <P> <P>Tutti i metodi descritti qui sono stati testati da me ed hanno funzionato bene sul mio portatile, salvo avviso contrario. Comunque io non posso garantire che nessuno di essi bloccherà o danneggerà il vostro sistema. La vita è pericolosa, quindi fate copie di backup dei vostri file importanti prima di intervenire sulla configurazione di Linux. Se qualcosa va storto, io non mi assumo nessuna responsabilità per la vostra eventuale perdita di dati. In altre parole: non fatemi causa. Grazie. <P> <P> <H2>1.6 Copyright</H2> <P> <P>Questo documento sarà distribuito con l'avvertenza standard di copyright degli HOWTO, reperibile nella cartella HOWTO su <CODE> <A HREF="http://sunsite.unc.edu/mdw/linux.html">http://sunsite.unc.edu/mdw/linux.html</A></CODE>. <P> <P> <H2><A NAME="GeneralInformation"></A> <A NAME="s2">2. Informazioni generiche</A></H2> <P> <P>Questa sezione descrive alcuni dettagli tecnici sulle batterie dei portatili e alcuni generici consigli per il risparmio energetico. Tali informazioni non sono specifiche per Linux, e se siete pratici di computer portatili probabilmente le conoscete già. <P> <P> <H2>2.1 Siate gentili con le vostre batterie</H2> <P> <P>(Pregasi notare i <A HREF="#credits">ringraziamenti</A> per questa sezione.) <P> <P>Attualmente ci sono tre tipi di batterie normalmente usate per i computer portatili: <P> <P> <UL> <LI>Le batterie <EM>NiCd</EM> sono state l'unica scelta per anni, ma oramai sono obsolete, e i nuovi modelli di portatili non le usano più, perchè pesanti e soggette all'``effetto memoria'': cioè durante la ricarica, se una batteria NiCd era solo parzialmente scarica, essa ``ricorda'' il precedente livello di carica e si rifiuta di oltrepassarlo, anche se la capacità nominale della batteria è molto superiore.<P> <P>L'effetto memoria è provocato dalla cristallizzazione degli elettroliti della batteria e può ridurne la durata in modo permanente, fino a renderla inutilizzabile. Per evitare che ciò accada, è necessario scaricarla del tutto e poi ricaricarla completamente una volta ogni poche settimane. <P> <P>(Nota: James Youngman ha trovato un metodo piuttosto drastico per ``riparare'' le batterie esaurite: ``Se la vostra batteria NiCd soffre di effetto memoria, estraetela dal computer, tenetela a circa 30 cm di altezza dal pavimento o dal piano di una scrivania, e lasciatela cadere (ma assicuratevi che atterri di piatto).'' Secondo lui, questo romperà i cristalli che si erano formati nella batteria e che sono la causa dell'effetto memoria. Aggiunge: ``Non so se funziona anche con altri tipi di batterie.'') <P>Il cadmio è un veleno molto pericoloso, ma se la batteria esaurita viene riportata al venditore, può essere riciclato quasi completamente. <P> <P>Nel caso vi interessi, ecco alcune specifiche per celle NiCd: <P> <BLOCKQUOTE><CODE> <PRE> Tensione di cella: 1,2 V Rapporto energia / massa: 40 Wh/kg Rapporto energia / volume: 100 Wh/l Energia massima: 20 Wh Temperatura di carica: da 10 a 35 C (da 50 a 95 F) Temperatura di scarica: da -20 a 50 C (da -5 a 120 F) Temperatura di stoccaggio: da 0 a 45 C (da 30 a 115 F) </PRE> </CODE></BLOCKQUOTE> <P> <P> </LI> <LI>Le batterie <EM>NiMh</EM> sono lo standard in uso attualmente in molti portatili di basso costo: possono essere pù piccole e sono meno soggette all'effetto memoria.<P> <P>Però danno dei problemi a temperature ambiente molto alte o molto basse, e anche se usano sostanze meno inquinanti e non tossiche, non possono ancora essere completamente riciclate (ma in futuro probabilmente sì). <P> <P>Specifiche per celle NiMh: <P> <BLOCKQUOTE><CODE> <PRE> Tensione di cella: 1,2 V Rapporto energia / massa: 55 Wh/kg Rapporto energia / volume: 160 Wh/l Energia massima: 35 Wh Temperatura di carica: da 10 a 35 C (da 50 a 95 F) Temperatura di scarica: da 0 a 45 C (da 30 a 115 F) Temperatura di stoccaggio: da 0 a 30 C (da 30 a 85 F) </PRE> </CODE></BLOCKQUOTE> <P> <P> </LI> <LI>Le nuove batterie ad alte prestazioni usano la tecnologia <EM>LiIon</EM>. In teoria tali batterie non dovrebbero avere nessun effetto memoria, ma in certe circostanze sembrano mostrare un comportamento simile. Le sostanze contenute in esse non sono inquinanti, ma dovrebbero ugualmente essere riconsegnate per essere riciclate.<P> <P>Specifiche per celle LiIon: <P> <BLOCKQUOTE><CODE> <PRE> Tensione di cella: 3,6 V Rapporto energia / massa: 100 Wh/kg Rapporto energia / volume: 230 Wh/l Energia massima: 60 Wh Temperatura di carica: da 0 a 45 C (da 30 a 115 F) Temperatura di scarica: da -20 a 60 C (da -5 a 140 F) Temperatura di stoccaggio: da -20 a 60 C (da -5 a 140 F) </PRE> </CODE></BLOCKQUOTE> <P> <P> </LI> </UL> <P>Anche se la forma delle batterie è la stessa, non è possibile sostituire semplicemente il vecchio tipo di batterie con le nuove: il processo di carica è diverso per ogni tipo di batteria. <P> <P>Certi costruttori integrano il circuito di ricarica nell'alimentatore esterno del portatile, rendendo possibile il passaggio ad un nuovo tipo di batterie semplicemente cambiando l'alimentatore. Se l'alimentatore del vostro portatile usa un connettore proprietario con molte linee di alimentazione, probabilmente è il vostro caso. <P> <P>Altri costruttori invece mettono l'unità di ricarica all'interno dello chassis, dove non è possibile sostituirlo in modo semplice con una unità più avanzata. Se il cavo del vostro alimentatore ha solo due linee per connettersi al computer (come il mio), l'unità di ricarica è probabilmente all'interno del portatile. <P> <P>In caso di dubbio, chiedete al produttore se il vostro modello può montare una batteria di tipo più moderno. <P> <P>Una batteria che non viene usata per molto tempo si scaricherà lentamente. E anche se le usate ogni riguardo, la vostra batteria dovrà essere sostituita dopo 500 - 1000 ricariche. Tuttavia non è consigliabile tenere acceso un portatile senza batteria collegato all'alimentazione di rete, perché la batteria - anche se vecchia o scarica - serve sempre come condensatore a elevata capacità, che protegge la macchina da sovratensioni o impulsi spuri provenienti dalla rete elettrica. <P> <P>Dal momento che i costruttori cambiano la forma delle loro batterie ogni pochi mesi, potreste avere problemi per trovare una nuova batteria per il vostro laptop da qui a pochi anni. Comperate una batteria di riserva ora, prima che sparisca dagli scaffali dei negozi. <P> <P> <H2>2.2 Risparmio energetico - Le cose ovvie</H2> <P> <P>Ci sono alcune ovvie misure da prendere per ridurre il consumo energetico del vostro computer. Beh, forse non sono tanto ovvie, visto che non molte persone le adottano... <P> <P> <UL> <LI>Diminuite o spegnete la retroilluminazione dello schermo quando non ne avete bisogno. A proposito, gli schermi tft consumano più energia di quelli dstn (così ora avete una buona scusa per aver comprato il modello più economico...).<P> <P>(David Bateman mi dice che usare un monitor esterno e spegnere lo schermo del laptop allunga la durata delle batterie del 30%: ``Non che sia molto utile, se avete un monitor esterno collegato all'alimentazione di rete, tanto vale collegarvi anche il portatile.'') <P> </LI> <LI>Di quanta potenza di calcolo avete veramente bisogno? Non credo che farete molto più di un po' di videoscrittura durante un viaggio (beh, io almeno non compilo i kernel di Linux). Durante il funzionamento a batteria, il ridurre la velocità di clock della CPU diminuirà anche il consumo di corrente. Qualche portatile ha un selettore di clock con cui scegliere fra la velocità normale e quella ridotta.<P> <P> </LI> <LI>Spegnete la ventolina della CPU (se c'è). Molti portatili recenti hanno una opzione nel BIOS chiamata ``cooling control'' (controllo del raffreddamento). Se la CPU si riscalda troppo, questa opzione permette di scegliere se raffreddarla con la ventolina (settaggio ``performance'') o se abbassare la velocità di clock (settaggio ``silence''). Per allungare l'autonomia delle batterie, scegliete ``silence''.<P> <P> </LI> <LI>Evitate di usare periferiche esterne (stampanti, monitor, dischi zip, videocamere ecc.) durante il funzionamento a batteria. Se collegato ad una normale stampante a getto d'inchiostro, l'autonomia del mio portatile crolla da due ore a circa 20 minuti.<P> <P> </LI> <LI>Non usate alcun dispositivo interno che non sia indispensabile: drive floppy, hard disk, cd-rom. Soprattutto l'uso del cd-rom accorcerà drasticamente l'autonomia.<P> <P> </LI> <LI>Anche le schede PCMCIA possono consumare molta energia, perciò non lasciate inseriti il vostro modem o l'adattatore di rete se non li state usando. Ma questo dipende molto dal costruttore della scheda PCMCIA, quindi controllate le caratteristiche del prodotto prima dell'acquisto (p. es. alcune schede PCMCIA non si spengono mai, anche se nessuno le sta usando).<P> <P>(A proposito, ho letto di recente che le schede PCMCIA sono il problema più grosso per i palmtop con Windows CE: consumano così tanto da esaurire le piccole batterie dei palmtop nel giro di pochi minuti...). <P> <P> </LI> <LI>Usate programmi semplici. Una applicazione multimediale caricherà molto di più il sistema e creerà molto più traffico fra hard disk e cd-rom di un semplice piccolo word processor.<P> <P> </LI> <LI>Grant Taylor ha un consiglio per quelli di voi che vogliono aggiornare il loro sistema: ``Le versioni più recenti di alcuni componenti aggiornabili consumano meno energia. Per esempio, l'hard disk IDE IBM Travelstar 2.5 pollici da 1.6 Gbyte consuma il 20% in meno dell'hard disk Toshiba da 500 Mbyte montato di serie sul mio portatile.''<P> <P> </LI> <LI>Se dovete ancora comperare un portatile, non comperate un portatile con una cache di secondo livello se tenete all'autonomia. Un computer con cache di secondo livello è circa il 10% - 20% più veloce in media, e si comporta molto meglio con applicazioni multimediali e macina-numeri (rendering, cad, giochi alla DOOM), ma consuma molta energia. Bjoern Kriews mi dice di avere due portatili quasi identici, e quello senza cache ha una autonomia di 4h30, contro le 2h30 di quello con cache.<P> <P>Se avete già installata una cache di secondo livello, probabilmente disabilitarla non sarà molto utile. Provateci e fatemi sapere com'è andata. <P> <P> </LI> <LI>Un altro consiglio per chi deve ancora comperare un portatile: non comperate il modello con l'ultimissima velocissima CPU. Di solito dopo qualche tempo i costruttori migliorano i modelli meno recenti senza darne alcuna comunicazione. Le nuove versioni delle vecchie CPU riscaldano meno e consumano meno energia delle prime versioni.<P> <P>Ci sono anche portatili ``Frankenstein'' che usano CPU non ottimizzate per l'uso su sistemi portatili. Nel momento in cui stesi questo documento (maggio '97), l'ultima generazione di portatili Pentium-200 aveva un'autonomia a batterie di 20 minuti, e scaldava tanto da cuocervi le ginocchia. Mentre scrivo questa seconda revisione (ottobre '97), i portatili Pentium-233 funzionano per oltre due ore senza vedere una presa di corrente. <P> <P> </LI> </UL> <P>Bene, avete afferrato il concetto. Molte di queste restrizioni probabilmente vi porteranno a pensarci due volte prima di mettersi a lavorare sul serio con il vostro sistema Linux. (Il modo migliore di risparmiare energia durante l'uso a batterie è... di non fare assolutamente nulla. Questo allunga l'autonomia del mio portatile quasi del 100%). <P> <P>Ora passiamo a qualche altra e più utile misura che risparmi energia senza disturbare il nostro lavoro. <P> <P> <H2><A NAME="s3">3. L'Advanced Power Management</A></H2> <P> <P>Tutti i computer portatili, ma anche molti desktop sono equipaggiati per l'APM, la circuiteria per ``advanced power management'' (``gestione avanzata della potenza''). Questo capitolo illustra come attivare il supporto APM nel vostro kernel di Linux. Chi già conosce bene Linux potrebbe trovarlo piuttosto noioso, quindi può saltare direttamente al prossimo. <P> <P> <H2>3.1 Cosa può fare APM per voi</H2> <P> <P>Non lo descriverò qui in dettaglio, per maggiori informazioni potete consultare la <EM>Linux APM drivers page</EM> su <CODE> <A HREF="http://www.cs.utexas.edu/users/kharker/linux-laptop/apm.html">http://www.cs.utexas.edu/users/kharker/linux-laptop/apm.html</A></CODE>. Tutto ciò che vi serve sapere è che con l'aiuto di APM la CPU può segnalare al BIOS i periodi di inattività, permettendogli di fare un po' di economia - p. es. riducendo il clock della CPU, spegnendo l'hard disk, la retroilluminazione dello schermo ecc, <P> <P>L'APM è anche responsabile del modo ``system suspend'' (o ``sleep'') e del modo ``suspend to disk'' (o ``hibernation''). Un'altra buona caratteristica - ma non molto importante - è che con l'aiuto di APM, <CODE>shutdown -h</CODE> non fermerà semplicemente il sistema, ma lo spegnerà anche. <P> <P>(A proposito, la maggior parte dei sistemi Linux mettono un comando <CODE>shutdown -r</CODE> nel loro <CODE>/etc/inittab</CODE> e lo eseguono come risposta ad un control-alt-delete. Io preferisco uno <CODE>shutdown -h</CODE>, in modo che alla pressione dei tre famosi tasti il mio portatile semplicemente si spegne). <P> <P>Non tutti i costruttori implementano correttamente le funzioni APM nel BIOS, perciò alcuni portatili hanno dei problemi con i driver APM di Linux (se la vostra macchina ha dei problemi con l'APM, probabilmente si bloccherà durante il boot di Linux o al ritorno dallo stato di sospensione). Se non sapete qual'è il vostro caso, consultate la Linux laptop page per il vostro particolare modello. <P> <P> <H2>3.2 Come abilitare il supporto APM in Linux</H2> <P> <P>È facile, basta ricompilare il kernel di Linux. Consultate il Kernel-HOWTO se non sapete come fare. <P> <P>Quando lo script di configurazione raggiunge la sezione ``character devices'', il valore di default per il pieno supporto dei BIOS APM nei kernel versione 2.0.30 o superiore è: <P> <P> <BLOCKQUOTE><CODE> <PRE> Advanced Power Management BIOS support: Yes Ignore USER SUSPEND: No Enable PM at boot time: Yes Make CPU Idle calls when idle: Yes Enable console blanking using APM: Yes Power off on shutdown: Yes </PRE> </CODE></BLOCKQUOTE> <P> <P>Leggete bene i testi di aiuto forniti dallo script di configurazione: spiegano dettagliatamente il significato di ciascuna opzione, quindi non starò a ripeterli qui. <P> <P>Se il BIOS del vostro sistema non supporta l'APM standard, alcune di quelle opzioni potrebbero bloccare il vostro sistema. Controllate tutte le capacità PM con il nuovo kernel per accertarvi che tutto funzioni come dovrebbe. <P> <P>(Una <A NAME="sidenoteaboutconsoleblanking"></A> nota sullo spegnimento della console: David Bateman mi dice che non dovrebbe essere abilitata perché può dare problemi con l'attuale versione di Xfree, la 3.2: ``I sintomi sono lo schermo spento all'avvio di X, che si accende non appena viene premuto un tasto. È un problema piccolo ma seccante. La prossima versione di Xfree avrà un ottimo supporto DPMS per molti dei chipset usati nei laptop, e dovrebbe includere il codice per lo spegnimento dell'LCD. Consultate la pagina di manuale di <CODE>xset</CODE> in XFree 3.2A'. David fa anche notare che la vita della retroilluminazione del vostro schermo è data dal numero di volte che questo viene spento e riacceso: ``Perciò è necessario un compromesso tra la vita delle batterie e quella del retroilluminatore.'') <P> <P>(<EM>Aggiornamento:</EM> Con XFree 3.3, il mio laptop ha ancora questo problema. Mi è stato detto che sarà sistemato in una delle prossime versioni del kernel.) <P> <P> <H2>3.3 Il supporto APM e i driver PCMCIA</H2> <P> <P>Dopo aver ricompilato il kernel, non dimenticate di ricompilare anche i driver PCMCIA per Linux. <P> <P>I driver PCMCIA precompilati forniti con la maggior parte delle distribuzioni Linux hanno il supporto per l'APM disabilitato, e il BIOS non può dire alla vostra scheda di spegnersi. <P> <P>Dovreste inoltre ricompilare i driver ogni volta che passate ad una nuova versione del kernel e il vostro vecchio kernel aveva abilitata l'informazione sulle versioni dei moduli (questa opzione si trova nella sezione ``loadable module support'' della configurazione del kernel). <P> <P>Per istruzioni dettagliate su come compilare i driver, leggete il PCMCIA-HOWTO o la <EM>Linux PCMCIA drivers homepage</EM> su <CODE> <A HREF="http://hyper.stanford.edu/HyperNews/get/PCMCIA/home.html">http://hyper.stanford.edu/HyperNews/get/PCMCIA/home.html</A></CODE>. <P> <P> <H2>3.4 Il pacchetto apmd</H2> <P> <P>Ora che avete installato il supporto APM, dovete procurarvi il pacchetto <CODE>apmd</CODE> dalla <EM>Linux APM drivers page</EM>. Non che sia assolutamente necessario, ma è una collezione di vari programmini molto utili. Il demone <CODE>apmd</CODE> controlla il comportamento della vostra batteria e vi avvertirà se siete a corto di energia. Il comando <CODE>apm</CODE> vi permetterà di fermare il vostro sistema con un comando da shell, e <CODE>xapm</CODE> vi mostrerà lo stato di carica della batteria. <P> <P>(A proposito, se avete problemi con le schede PCMCIA dopo il ritorno dallo stato di sospensione, potete provare un altro pacchetto <CODE>apmd</CODE> su <CODE> <A HREF="http://www.cut.de/bkr/linux/apmd/apmd.html">http://www.cut.de/bkr/linux/apmd/apmd.html</A></CODE>. Questo scarica dalla memoria i moduli driver PCMCIA prima di andare in suspend e li ricarica quando il sistema riprende l'attività.) <P> <P>Grant Taylor ha giocherellato un po' con il pacchetto <CODE>apmd</CODE> e ha scoperto diverse cosette utili. <P> <P>Ha scoperto per esempio che l'hard disk del suo laptop dimentica il periodo di standby <CODE>hdparm -S</CODE> al ritorno da un suspend: ``Ho modificato <CODE>apmd</CODE> perché reimposti il valore ad ogni ritorno. Questo può essere una particolarità del mio sistema; ma è una cosa importante da fare...'' <P> <P>(Nota: Sul mio laptop è il BIOS che si preoccupa di stabilire il periodo di standby dell'hard disk e di reimpostare il suo valore al ritorno, perciò non ho potuto stabilire se questo piccolo problema sia generale o meno. Se anche a voi succede una cosa del genere, speditemi una email.) <P> <P>Grant ha anche trovato un buon trucco per spegnere lo schermo con <A HREF="#TheXFree86package">XFree86</A> e l'aiuto del pacchetto <CODE>apmd</CODE>: lo troverete là. <P> <P> <H2>3.5 E se il mio portatile non supporta APM?</H2> <P> <P>Se il BIOS del vostro computer non supporta APM (ma anche i più vecchi dovrebbero avere almeno dei timeout per lo spegnimento dell'hard disk e dello schermo), potete usare <CODE>hdparm -S</CODE> per definire il periodo massimo di inattività dell'hard disk. Questo sarà già molto, perchè l'hard disk consuma molta energia. Il vostro sistema dovrebbe avere installato <CODE>hdparm</CODE>, perciò leggetevi la pagina di manuale di <CODE>hdparm</CODE> per conoscere la sintassi dei comandi. <P> <P> <H2><A NAME="Changingsomegeneralsystemsettings"></A> <A NAME="s4">4. Variazione di alcuni parametri generali del sistema</A></H2> <P> <P>Dopo aver installato e configurato Linux sul mio portatile, ho visto che accedeva all'hard disk ogni pochi secondi, anche se non c'erano utenti connessi al sistema, e l'hard disk non poteva mai entrare in standby. La diminuzione dell'attività sull'hard disk può aumentare molto la durata delle batterie, perciò ho messo insieme i seguenti argomenti. <P> <P>Li ho testati tutti sotto RedHat 4.1, ma la collocazione di alcuni file di configurazione può essere diversa nella vostra distribuzione. (Se è così, fatemelo sapere.) <P> <P> <H2>4.1 I demoni crond e atrun</H2> <P> <P>Controllate se il vostro file <CODE>/etc/crontab</CODE> per caso lancia un processo ogni minuto. Spesso ci troverete <CODE>atrun</CODE>. <P> <P>Con il comando <CODE>at</CODE>, potete impartire comandi da eseguire ad un certo istante nel futuro. Alcuni sistemi Linux usano un demone <CODE>atd</CODE> dedicato perchè se ne occupi, altri (p. es. RedHat) fanno eseguire <CODE>atrun</CODE> dal demone <CODE>crond</CODE> ogni minuto. <P> <P>Sulla maggior parte dei sistemi questo non è veramente necessario perché è raro che i comandi <CODE>at</CODE> debbano essere eseguiti esattamente al momento stabilito. Così se trovate una riga come questa nel vostro <CODE>/etc/crontab</CODE>: <P> <BLOCKQUOTE><CODE> <PRE> # Run any at jobs every minute * * * * * root [ -x /usr/sbin/atrun ] && /usr/sbin/atrun </PRE> </CODE></BLOCKQUOTE> <P> <P>potete tranquillamente sostituirla con: <P> <BLOCKQUOTE><CODE> <PRE> # Run any at jobs every hour 00 * * * * root [ -x /usr/sbin/atrun ] && /usr/sbin/atrun </PRE> </CODE></BLOCKQUOTE> <P> <P>Per maggiori dettagli leggete <CODE>man 5 crontab</CODE>. Alcune persone possono anche lavorare bene senza il demone <CODE>crond</CODE>, perciò se sapete cosa state facendo potreste anche decidere di disabilitarlo del tutto. <P> <P> <H2>4.2 Il demone update / bdflush</H2> <P> <P>In ogni momento Linux ha molti buffer di file aperti, così il sistema deve assicurarsi che i cambiamenti ai file vengano salvati sull'hard disk il più presto possibile. Altrimenti, quei dati potrebbero andare persi in caso di crash del sistema. <P> <P> <P>Di questo si occupa il demone <CODE>update</CODE> / <CODE>bdflush</CODE>. (Questi due nomi si riferiscono allo stesso programma, perciò potete usarli entrambi per lanciare il demone). Per default questo demone chiamerà <CODE>flush</CODE> ogni 5 secondi e <CODE>sync</CODE> ogni 30. <P> <P>Con il mio hard disk Fujitsu questo causa un accesso ininterrotto. (Sembra che questo hard disk scriva su disco la sua cache RAM interna anche quando questa non è stata modificata. Ma questo dipende dal firmware del vostro hard disk: altri mi hanno detto che il loro hard disk va in standby anche senza le modifiche che seguono.) <P> <P>Dal momento che Linux non va quasi mai in crash, ho aumentato entrambi gli intervalli di tempo a 3600 secondi (un'ora). Questo ha risolto tutto e ha fermato i continui accessi al disco. (Ma se il mio sistema andasse in crash ora ci sarebbero molti più file rovinati, naturalmente.) <P> <P>Per la RedHat 4.1: In <CODE>/etc/inittab</CODE>, modificate la chiamata per l'aggiornamento in questo modo: <P> <BLOCKQUOTE><CODE> <PRE> ud::once:/sbin/update -s 3600 -f 3600 </PRE> </CODE></BLOCKQUOTE> <P> <P>Per la Suse 4.4.1: <CODE>update</CODE> è chiamato in <CODE>/sbin/init.d/boot</CODE>. <P> <P>Per la Slackware: <CODE>update</CODE> è chiamato in <CODE>/etc/rc.d/rc.S</CODE>. <P> <P>Leggete la pagina di manuale di <CODE>update</CODE> per ulteriori dettagli. <P> <P> <H2>4.3 Il demone syslogd</H2> <P> <P>Il demone <CODE>syslogd</CODE> si occupa dei vari log file del sistema Linux, situati nella directory <CODE>/var/log</CODE>. Per default <CODE>syslogd</CODE> scriverà sui file di log ogni volta che riceve un messaggio di sistema. <P> <P>È possibile evitare questo facendo precedere, nel file <CODE>/etc/syslog.conf</CODE>, il nome del file di log da un trattino. Ecco un esempio dal <CODE>syslog.conf</CODE> del mio sistema: <P> <BLOCKQUOTE><CODE> <PRE> # Log anything (except mail) of level info or higher. # Don't log private authentication messages! *.info;mail.none;authpriv.none -/var/log/messages </PRE> </CODE></BLOCKQUOTE> <P> <P>Ancora una volta questo significa che in caso di crash del sistema, il messaggio che spiegava l'errore incontrato <EM>non</EM> verrà salvato su disco. <P> <P> <H2>4.4 Il comando init</H2> <P> <P>Durante la partenza del sistema i processi e i demoni iniziali verranno lanciati usando il comando <CODE>init</CODE>. Questo comando (sì, anche questo) chiama <CODE>sync</CODE> prima di creare ciascun processo. <P> <P>Per evitare ciò bisogna rimuovere la chiamata a <CODE>sync()</CODE> nel codice sorgente e ricompilare il comando. <P> <P>Per evitare problemi con buffer di file persi, dovreste aggiungere una chiamata a <CODE>sync</CODE> nello script <CODE>/etc/rc.d/init.d/halt</CODE> del vostro sistema, proprio prima che lo script esegua l'umount dei file system. <P> <P> <H2>4.5 La partizione di swap</H2> <P> <P>La partizione di swap di Linux è usata come memoria virtuale per aumentare lo spazio fisico di memoria: questa può essere un'altra ragione per accedere al disco. Se il vostro laptop ha già molta RAM o se le applicazioni che usate sono molto semplici (come <CODE>vi</CODE>), potrebbe essere una buona idea disabilitarla. <P> <P>Questo naturalmente dipende da cosa avete in mente di fare. Con 4 o 8 Mb non è possibile fare a meno della partizione di swap, con 8 o 16 Mb potete usare senza problemi i programmi che girano in modo testo, e se usate poco il multitasking potete tranquillamente disabilitare lo spazio di swap. L'ambiente X-Windows richiede molta RAM e non dovreste usarlo senza la partizione di swap, a meno che non abbiate installati molto più di 16 Mb di RAM fisica. <P> <P>(Nota: il mio portatile con 16 Mb e senza partizione di swap riesce a far girare una sessione <CODE>emacs</CODE>, quattro shell <CODE>bash</CODE> e contemporaneamente compilare un kernel senza esaurire la memoria. Per me è sufficiente.) <P> <P>Se avete già installato una partizione di swap, potete disabilitarla facendo precedere al comando <CODE>swapon</CODE> nel file <CODE>/etc/rc.d/rc.sysinit</CODE> il carattere '#'. Se volete potete anche fare in modo che il sistema vi chieda durante la partenza se volete usare la partizione di swap. Per farlo, mettete le seguenti righe nel file <CODE>/etc/rc.d/rc.sysinit</CODE> (per la RedHat 4.1) o <CODE>/sbin/init.d/boot</CODE> (per la Suse 4.4.1): <P> <BLOCKQUOTE><CODE> <PRE> echo "Devo usare la partizione di swap?" echo " 0: No." echo " 1: Sì." /bin/echo "Scelta: \c" read SWAPCHOICE case "$SWAPCHOICE" in 0) # Do nothing. echo "(Partizioni di swap disabilitate)" ;; *) # Start up swapping. echo "Attivazione delle partizioni di swap" swapon -a esac </PRE> </CODE></BLOCKQUOTE> <P> <P>Così potete usare la partizione di swap quando siete collegati ad una presa di corrente, e disabilitarla se state usando le batterie. <P> <P> <H2>4.6 Il demone webserver apache httpd</H2> <P> <P>Sto usando il mio portatile per sviluppare e testare degli script cgi per siti web, perciò ci sto facendo girare un webserver locale. La configurazione standard è un po' troppo pesante, se tutto l'uso che ne fate è testare uno script o una pagina web ogni tanto. <P> <P>Nel file <CODE>httpd.conf</CODE>, cambiate i valori di <CODE>MinSpareServers</CODE> e <CODE>StartServers</CODE> a <CODE>1</CODE>. Questo sarà sufficiente per un piccolo sito locale di prova. <P> <P>Se volete disabilitare il logging del webserver, dovrete ricompilare il demone <CODE>httpd</CODE>. Leggete la documentazione relativa per i dettagli. <P> <P>Grant Taylor ha ricompilato il logging di apache e ha scoperto che questo ``non diminuiva affatto gli accessi al disco. Così ho usato un'altra soluzione, secondo me migliore: ho configurato apache in modo tale da farlo girare da inetd anziché da solo''. Leggete <CODE>man inetd</CODE> per ulteriori dettagli. <P> <P> <H2><A NAME="TheXFree86package"></A> 4.7 Il pacchetto XFree86</H2> <P> <P>La configurazione di XFree86 per i portatili è una storia a sé. E ancora una volta devo raccomandarvi la Linux Laptop page, dove troverete molti consigli e aiuti. <P> <P>L'oscuramento dello schermo di X rende solo nero lo schermo, ma non lo spegne. Come già detto nella <A HREF="#sidenoteaboutconsoleblanking">nota sullo spegnimento della console</A>, potete usare l'opzione DPMS di <CODE>xset</CODE> per questo. Comunque, questa caratteristica dipende dal bios e dal chip grafico del vostro portatile. <P> <P>Grant Taylor usa questo setup per mettere a nanna il suo portatile con l'aiuto di <CODE>apmd</CODE> e lo screensaver: <P> <P> <BLOCKQUOTE><CODE> <PRE> # Run xscreensaver with APM program xscreensaver -timeout 5 \ -xrm xscreensaver.programs:apm_standby \ -xrm xscreensaver.colorPrograms:apm_standby & </PRE> </CODE></BLOCKQUOTE> <P> <P>Nota: ``<CODE>apm_standby</CODE> è uno script suid in perl che permette solo a certe persone di dare il comando <CODE>apm -S</CODE>.'' <P> <P> <H2>4.8 L'editor emacs</H2> <P> <P>Ok, <CODE>emacs</CODE> non è un editor, ma un modo di vivere. Ecco un consiglio da Florent Chabaud: ``Se usate <CODE>emacs</CODE>, forse avrete notato che l'editor esegue alcuni salvataggi automatici. Questo naturalmente è utile e <EM>non</EM> dovrebbe essere disabilitato, ma i parametri di default possono essere ottimizzati per l'uso su di un portatile. <P> <P>Ho messo nel file <CODE>/usr/share/emacs/site-lisp/site-start.el</CODE> le due righe che seguono: <P> <P> <BLOCKQUOTE><CODE> <PRE> (setq auto-save-interval 2500) (setq auto-save-timeout nil) </PRE> </CODE></BLOCKQUOTE> <P> <P>Queste disabilitano il salvataggio automatico a tempo, e dicono a emacs di salvare automaticamente ogni 2500 azioni sulla tastiera. Naturalmente se state scrivendo un testo questo valore dovrebbe essere ridotto, ma per un programmatore è sufficiente. Siccome viene contato ogni tasto premuto (compresi i tasti cursore e i tasti funzione), il limite di 2500 azioni viene raggiunto molto rapidamente. <P> <P> <P> <H2>4.9 Come trovare altre ottimizzazioni</H2> <P> <P>Se il vostro sistema Linux accede ancora troppo spesso all'hard disk potete scoprire cosa sta succedendo con il comando <CODE>ps ax</CODE>. Questo vi mostrerà tutti i processi attivi e il loro nome completo: a volte riporta anche le opzioni con cui sono stati lanciati. <P> <P>Ora leggete la pagina <CODE>man</CODE> di ciascun processo per scoprire cosa fa e come cambiare il suo comportamento: con questo metodo troverete quasi certamente il processo responsabile. Potrebbe tornarvi utile anche il comando <CODE>strace</CODE>. <P> <P>Per favore, se trovate qualcosa di nuovo, mandatemi una email. <P> <P> <H2><A NAME="s5">5. Appendice</A></H2> <P> <P> <H2><A NAME="AmessagetoLinuxdistributors"></A> 5.1 Messaggio ai curatori di distribuzioni Linux</H2> <P> <P>Se per caso curate una distribuzione di Linux, grazie per aver letto tutto questo. I portatili stanno divenendo sempre più popolari, ma la maggior parte delle distribuzioni Linux non sono ancora ben preparate per l'uso su tali macchine: vi prego di adattare questo documento alla vostra distribuzione. <P> <P> <UL> <LI>La routine di installazione dovrebbe comprendere una configurazione ottimizzata per i portatili: la ``installazione minima'' spesso non lo è abbastanza, ci sono molte cose di cui l'utente di un portatile non ha bisogno in viaggio. Qualche esempio: non servono tre versioni diverse di <CODE>vi</CODE> (come nella distribuzione Suse); la maggior parte dei sistemi portatili non ha bisogno del supporto per le stampanti, perché di solito i documenti vengono stampati sul desktop di casa; molti portatili non hanno bisogno del supporto di rete.<P> <P> </LI> <LI>Non dimenticate di descrivere i problemi di installazione riscontrati su alcuni portatili, p. es. come installare la vostra distribuzione senza un cd-rom o come configurare il driver di rete PLIP.<P> <P> </LI> <LI>Aggiungete un miglior supporto per la gestione delle batterie e integrate il supporto per le schede PCMCIA direttamente nella vostra distribuzione, con un kernel precompilato ed un insieme alternativo di driver PCMCIA con supporto apm installabili opzionalmente. Includete anche un pacchetto <CODE>apmd</CODE> precompilato nella vostra distribuzione.<P> <P> </LI> <LI>Aggiungete il supporto per la commutazione dinamica fra più configurazioni di rete diverse: la maggior parte dei portatili Linux viaggiano fra luoghi con reti diverse (p. es. la rete a casa, la rete in ufficio e la rete all'università) e devono cambiare il loro ID di rete molto spesso, il che è complicato con la maggior parte delle distribuzioni.<P> <P> </LI> </UL> <P>Vi prego di farmi sapere se avete ottimizzato la vostra distribuzione per computer portatili e quali funzioni e pacchetto avete aggiunto a questo scopo: le future versioni di questo HOWTO comprenderanno una sezione in cui potrete reclamizzare le caratteristiche portatili della vostra distribuzione. <P> <P> <H2><A NAME="credits"></A> 5.2 Ringraziamenti</H2> <P> <P> <UL> <LI>Le informazioni sulla tecnologia delle batterie è in gran parte basata sull'articolo ``Stromkonserve'' di Michael Reiter, pubblicato su ``c't Magazin fuer Computertechnik'' (Heise Verlag Hannover, Germany), edizione 10/96, pagina 204. Usato dietro consenso dell'autore. Visitate il loro sito web su <CODE> <A HREF="http://www.heise.de/">http://www.heise.de/</A></CODE>.<P> <P> </LI> <LI>Hanno contribuito a questo documento le seguenti persone:<P> <P> <BLOCKQUOTE><CODE> <PRE> Frithjof Anders <anders@goethe.ucdavis.edu> David Bateman <dbateman@ee.uts.edu.au> Florent Chabaud <chabaud@celar.fr> Markus Gutschke <gutschk@uni-muenster.de> Kenneth E. Harker <kharker@cs.utexas.edu> Bjoern Kriews <bkr@rrz.uni-hamburg.de> R. Manmatha <manmatha@bendigo.cs.umass.edu> Juergen Rink <jr@ct.heise.de> Grant Taylor <gtaylor@picante.com> James Youngman <JYoungman@vggas.com> </PRE> </CODE></BLOCKQUOTE> <P> </LI> </UL> <P> <H2>5.3 Su questo documento</H2> <P> <P>Questo testo nomina le batterie 53 volte. <P> <P>La corrente versione di questo e di molti altri HOWTO, la maggior parte molto più utili di questo, può essere reperita nel sito principale di documentazione per Linux <CODE> <A HREF="http://sunsite.unc.edu/mdw/linux.html">http://sunsite.unc.edu/mdw/linux.html</A></CODE> o in uno dei suoi molti mirror. <P> <P>La maggior parte di questo testo è stato scritto durante i miei viaggi fra Amburgo e Hannover sulle ferrovie tedesche. (le nuove carrozze ice-2 hanno prese di corrente per i portatili... evviva!). <P> <P>E ora ripetete il mantra con me: ``...on the road again...'' <P> <P>Traduzione a cura di: Massimo Soricetti <A HREF="mailto:maxsoricetti@geocities.com"><maxsoricetti@geocities.com></A>. </BODY> </HTML>