Ubuntu minimal install -1- Introduzione

Considerazioni generali

Tutte le distribuzioni Gnu/Linux hanno, tra le altre, una caratteristica che le rende particolarmente gradite alle orde di smanettoni amanti della personalizzazione e della configurazione del proprio sistema: la modularità. Ogni sistema è costituito da gruppi di programmi, distribuiti generalmente in “pacchetti”, che possono essere singolarmente aggiunti o rimossi secondo le necessità e le preferenze di ciascuno. Le “dipendenze” tra pacchetti permettono di aggiungere un programma “tirandosi dietro” tutto ciò che gli è indispensabile per funzionare; analogamente la rimozione di un programma libera il sistema da ciò che non è più utilizzato da nessun altro software.

Bedlam cube

Un pezzo per volta…

Per “programmi” non si intendono solo le applicazioni come i browser o i lettori di file multimediali, ma anche l’interfaccia grafica ed il kernel, quest’ultimo con il compito di fare da “tramite” tra i software e le componenti hardware (ad esempio per un programma di videochat che richieda accesso alla webcam).

Se non si vuole utilizzare una delle tante distribuzioni già “pronte all’uso”, è possibile fare un’installazione personalizzata al termine della quale si può avere un ambiente esclusivamente a riga di comando (CLI: Command Line Interface) dotato solo dell’indispensabile per un sistema funzionante ed in grado di compiere le operazioni fondamentali (gestione utenti, operazioni sui file, aggiornamenti, etc…). Utilizzando Ubuntu come base di partenza, questo processo è detto minimal install.

L’operazione avviene completamente da rete: è quindi consigliabile avere una connessione stabile e veloce (meglio via cavo). Successivamente si sceglie se installare un ambiente grafico (desktop environment completi come Gnome o KDE, oppure semplici window manager come Fluxbox o Window Maker) e le applicazioni desiderate (programmi da ufficio, player multimediali, ambienti di sviluppo, strumenti di gestione del sistema, etc…).

Informazioni aggiuntive sono alla pagina wiki di ubuntu-it (Installazione/CdMinimale), che contiene anche tutti i link per scaricare le “mini ISO”; quella di Oneiric 32 bit (circa 20 MB), che ho utilizzato per le mie prove, è qui. [EDIT 14/10/2012] La procedura descritta è valida anche per la successiva release 12.04 “Precise”.

Altre distribuzioni adottano generalmente la denominazione “netinstall” ad indicare la stessa modalità. Riporto di seguito i link dove scaricare le ISO per alcune di esse:

La difficoltà di un tale approccio sono certamente il tempo necessario a completare l’installazione e la necessità di sapere (o scoprire!) quali pacchetti installare, inizialmente da linea di comando con apt-get o aptitude, ed infine l’eventualità di dover configurare manualmente alcuni servizi e periferiche, incluse le schede di rete. Potrebbero inoltre risultare difficilmente ripristinabili (non sapendo quali librerie o pacchetti installare) alcune funzionalità.

Notizie gentilmente fornite da Streetcross (sicuramente più esperto di me – qui il suo blog e qui l’ottimo forum di supporto Linuxqualityhelp, di cui è co-fondatore [LQH è defunto, purtroppo]) mi informano che, quando si ha a che fare con i DE “mainstream“, il “vantaggio” rispetto alle installazioni standard è praticamente nullo. Questi DE, infatti, si portano sempre dietro un bel numero di pacchetti dipendenti, per fornire agli utenti tutto quello di cui possono aver bisogno (anche con un lieve eccesso di prudenza ;-) ). È necessario quindi scegliere accuratamente anche delle alternative “leggere” ai programmi che ci servono e, necessariamente, rinunciare a qualche “comodità”. A proposito di installazioni personalizzate, lo stesso Streetcross aveva creato la sua derivata “leggera” di Ubuntu, giustamente chiamata “Plume“.

Dunque ci sono solo brutte notizie per le minimal install? Fortunatamente no…

Google su w3m

Volendo sostituire o rimuovere gran parte dei software inclusi in un’installazione standard, converrebbe partire proprio da qui: piuttosto che agire su decine di programmi, lasciando pacchetti “orfani” e magari qualche file di configurazione inutile qui e là, includeremmo poco alla volta solo ciò che ci serve. Il principio vale a maggior ragione se si vogliono provare DE o WM alternativi (ed è esattamente questo che intendo fare!), non disponibili come derivate ufficiali di Ubuntu, per avere davvero un sistema leggero ma al tempo stesso aggiornato, pronto per le tecnologie più recenti. Avete mai provato a spiegare a Windows95 che cos’è il “wireless”? :-D

Potremmo quindi ridare vita ad un vecchio PC che prende polvere in un angolo solo perché incapace di “reggere” un sistema operativo decentemente moderno. In tempi di sensibilità ecologica (e di crisi!) recuperare un PC “trashware” che basti a navigare in Internet o a far giocare i bambini con Edubuntu non è cosa da trascurare. Bisognerà riesumare davvero dei cimeli d’anteguerra per essere costretti a buttarli via. I requisiti minimi per la sola installazione CLI sono paragonabili a quelli dell’installazione “server” (CPU 300MHz e 128MB di RAM).

Un sistema CLI offre in sé tante possibilità di utilizzo, anche se con un approccio “vecchia scuola”: browser internet testuali come w3m (Wikipedia – w3m, homepage), chat (centerim, finch – praticamente Pidgin in versione testuale), lettori musicali (herrie, moc, mplayer), software P2P (ctorrent, rtorrent), un semplice file server con Samba. A proposito, come vi sembra Google visto da w3m? Praticamente uguale ;-) ! Potremmo dunque disporre di uno spartano “muletto”, magari controllato da remoto via ssh (quindi sarà “headless”, senza bisogno di un monitor) da affiancare ad uno sbrilluccicoso e poderoso con tutti gli “eye candy” che vogliamo.

Non ultima tra le possibilità, il PC recuperato può essere “prestato” ad uno dei progetti di calcolo distribuito coordinati da BOINC (Berkeley Open Infrastructure for Network Computing). Biologia, matematica, cosmologia, scacchi: ce n’è per tutti i gusti. Dare un contributo, anche modesto, alla ricerca degli extraterrestri (SETI@Home) o alla ricerca medica (Folding@home, Docking@Home) è un bel modo di consumare elettricità. Per Ubuntu il client BOINC (anche quello solo testuale) è disponibile nei repository ufficiali, come spiega la relativa pagina della wiki del progetto.

Di seguito alcuni link a pagine (qualcuna un po’ datata, ma la procedura non è cambiata molto) sulle quali ho “scoperto” la minimal install:

Procedura di installazione

Se dopo tutte le chiacchiere introduttive non vi siete accasciati esausti, è finalmente tempo di vedere i principali passi del processo di installazione! Per questa prova ho utilizzato Virtualbox, creando una macchina virtuale (VM) dedicata con modeste risorse a disposizione (RAM 512MB, 1 core della CPU a 2GHz, 12MB di memoria video, HD 10GB). Ho anche fatto alcuni tentativi di ridurre progressivamente la RAM disponibile per capire quale sia un valore minimo accettabile (solo per il sistema appena installato): mi sono spinto in basso fino a 128MB + 8MB (video) senza notare problemi.

0) Avviamo la VM (o il PC “vittima”) con la mini ISO scaricata (da CD o USB secondo le possibilità del BIOS), selezionando “Install” dal menu. Le altre voci permettono di procedere all’installazione in modalità diverse, richiedendo scelte su molti più aspetti del sistema. Personalmente ho provato anche la “Expert install” (nel sotto-menu “Advanced Options”) ma il risultato finale non differisce di molto da quello della normale procedura: “Don’t try this at home“, non ne vale la pena! ;-)

0 – Schermata di avvio

1) Le schermate sono pseudo-grafiche come per l’installazione da CD “alternate” e le informazioni richieste sono le solite: nome completo, nome utente, password, fuso orario, tastiera, nome del computer. Ci si muove con le frecce, con TAB (per saltare da una casella all’altra) e si conferma con ENTER o SPAZIO. Una nota di incoraggiamento: il più delle volte i valori di default vanno bene, quindi vi ritroverete solo a fare “Invio – Invio – Invio”…

1 – Scelta lingua di sistema

2) Successivamente si imposta l’indirizzo del server proxy, se c’è. Le reti domestiche normalmente non hanno questa impostazione, a differenza di quelle in ambito aziendale. In caso di errore in questa fase non sarà possibile scaricare i componenti del sistema dalla rete, e dunque completare l’installazione. In tutti i casi di errore compare un menu che consente di tornare ai passi precedenti per ritentarne l’esecuzione. P.S.: chi non sa cos’è un proxy probabilmente non ha bisogno di impostarlo ;-).

Dopo questa schermata il programma di installazione scarica alcuni file. Alcuni passi di installazione sono intervallati da scaricamenti più o meno “corposi”: qui tutto sta nella bontà della connessione a nostra disposizione.

2 – Indirizzo proxy

2b) (Update 08/05/2012 – in risposta al commento di Scugnizzo) È possibile ora (in modalità “expert”) caricare alcuni componenti aggiuntivi per scopi specifici: creare un installazione OEM, caricare componenti di installazione da un CD/ISO, etc. Tra questi non figurano moduli che consentano di attivare una connessione wireless. Non ho trovato altri modi di farlo durante l’installazione. Bisognerà quindi “rassegnarsi” ad usare solo una connessione cablata.

2b – Moduli aggiuntivi

3) Si passa ora al partizionamento dei dischi. Io ho scelto per questa macchina di prova la configurazione più semplice (unica partizione, volume non cifrato). La dimensione della partizione di swap è calcolata in base alla RAM disponibile. Per una installazione “reale” conviene sicuramente scegliere il partizionamento manuale per riservare una porzione di disco alla /home (ed eventualmente agire sulla dimensione della swap).

3 – Partizionamento dischi

4) Comincia lo scaricamento dei componenti del sistema: questa è l’installazione vera e propria ed ora c’è solo da attendere. È tempo per un caffettino…

4 – Scaricamento dei componenti

5) Finita l’installazione base, scegliamo come gestire gli aggiornamenti. Il box è piuttosto esaustivo: Landscape è principalmente per ambiti aziendali (aggiornamenti centralizzati) e non è quindi utile per il nostro macinino domestico da rimettere in sesto. Possiamo quindi affidarci al gestore degli aggiornamenti oppure fare un nodo al fazzoletto per ricordarci di aggiornare “a mano” di tanto in tanto. In quest’ultimo caso, potrebbe aiutarci un cron job che esegua periodicamente l’operazione (vedi cron(8) e crontab(5) – Ubuntu man pages).

5 – Gestione aggiornamenti

6) Prima della conclusione del processo, in questa schermata possiamo richiedere l’installazione di alcuni “metapacchetti” (collezioni di pacchetti) che includono i principali ambienti desktop, gruppi di programmi, utilità per server ed altro ancora. In questa fase preferisco, per avere maggior controllo su quello che si aggiunge al sistema, terminare qui l’installazione non selezionando alcuna voce della lista (basta saltare su <Continua> con TAB e dare Invio). Questi metapacchetti infatti si portano dietro i pacchetti “raccomandati” oltre a quelli strettamente dipendenti. Ciò potrebbe costituire uno spreco di spazio nella nostra installazione essenziale e può essere evitato tramite l’opzione “–no-install-recommends” di apt-get. Aggiungere pacchetti da qui significherebbe praticamente ottenere un’installazione “standard” a meno di qualche dettaglio (come il tema grafico o qualche programma accessorio).

Inoltre questa lista non comprende voci relative alle interfacce grafiche “alternative”. Sono proprio questi i componenti che mi interessano per la loro leggerezza e che saranno installati in seguito.

6 – Selezione del software

7) Fase finale prima del reboot: installazione di GRUB nel MBR (o altrove, se scegliete <No>, ma dovete sapere bene quello che state facendo).

7 – Installazione di GRUB

Se tutto è andato liscio dopo il riavvio siamo al primo login (rigorosamente testuale, perchè non abbiamo installato nient’altro) sul sistema. In Virtualbox potreste visualizzare una schermata nera all’avvio: è sufficiente passare sulla tty1 con ALT + F1. Il boot è ovviamente rapidissimo anche sulla VM meno dotata: in 4-5 secondi il prompt di login già ci aspetta. Il sistema al termine dell’installazione è già completamente aggiornato.

Login – df

Come si vede dal risultato del comando “sudo df -h” lo spazio occupato su disco (/dev/sda1) è all’incirca di 1GB.

Infine da “free” vediamo circa 71* 20 MB di memoria occupata (il “netto”, qui “arrotondato” al MB, è [used] – [buffers] – [cached] e si legge nella riga sottostante, qui la fonte, da cui l’ho appena imparato!) mentre “uname” (immagine successiva) ci fornisce informazioni sul kernel in uso. [* Edit 20/03/2012: Sostituito screenshot "free" - RAM in uso errata]

Memoria in uso – free

Non essendoci molto altro da fare su questo mini-pinguino (anzi, mini-ocelot!) per il momento ovviamente posso anche spegnere con “sudo halt“! :-D

Kernel – Arresto del sistema

Essendo in Virtualbox, procedo ora a clonare la VM con l’installazione “pulita” appena completata (in poco più di un’ora) in modo da averla disponibile in queste condizioni per tutti gli esperimenti che vorrò fare (dal menu di Virtualbox MacchinaClona oppure con CTRL + O). Questo nel caso (non improbabile) che uno dei suddetti esperimenti vada irrimediabilmente a “donnine allegre”… In ciascuno di questi esperimenti potrò poi usare la funzione di “snapshot” della macchina per gestire i progressi nella costruzione del mio sistema “su misura” (sempre per recuperare situazioni “donnine allegre” di cui sopra).

Clonazione VM

Et voilà! Dolly…ehm…il clone della macchina originale è pronto per essere utilizzato. Nei prossimi articoli mi dedicherò proprio ad “assemblare” un sistema a “basse risorse”: ho nel mirino Razor + Openbox innanzitutto, ma non escludo FVWM o qualche altra scoperta fatta nel frattempo! O magari rimango con la pura e semplice linea di comando e mi ci metto un po’ a giocare!

Lista VM

 

About these ads

Informazioni su Man from Mars

http://extendedreality.wordpress.com/

  1. icittadiniprimaditutto

    Reblogged this on i cittadini prima di tutto.

  2. Uao, complimenti per questa guida, sicuramente mi sarà utile…. prima o poi!!!

    • Intuisco un filino di ironia… ;-)

      • Nonono! Ho visto ubuntu con compiz (tecnicamente cos’è, una gui???) e me ne sono innamorata, per cui mi sono ripromessa che un giorno lo avrei installato da qualche parte… A dire il vero all’epoca volevo provare Darwin (tanto per non abbandonare troppo i macintosh) ma mi sono fatta spaventare dal codice da compilare e altri dettagli tecnici. Quindi ho pensato che il più navigato Ubuntu sarebbe stata la scelta migliore.
        Il problema è che ora manca il meglio: il computer zucca da trasformare in carrozza! Il desktop che avevo designato infatti … non si avvia proprio! Girano solo le ventole, ma non parte il bios… posso formattarlo in queste condizioni?! ^.^
        Dovrei toccare il MacBook e la cosa non mi spiacerebbe, visto le oscenità di os che Cupertino sta rilasciando ultimamente…. -_-”

        • Compiz è un window manager che si sostituisce a quello di Gnome o Unity (l’attuale DE di Ubuntu). Però funziona abbastanza male proprio con Unity, quindi ti sconsiglierei comunque di installarlo. E poi secondo me Unity è una fetecchia inusabile.
          Personalmente mi sono affezionato a KDE (il DE di Kubuntu) il cui window manager già permette qualche effetto carino (trasparenze, animazioni, finestre tremolanti ed altro).
          Comunque se hai una “cavia” su cui testare una distribuzione è meglio partire con un’installazione normale: è più facile e non rischi che ti manchi qualcosa.
          Poi c’è sempre il dual boot…

  3. Ralph Magpie

    Hi, Mr Pinguino :-)

  4. Pingback: Debian testing net install « Extended Reality

  5. Pingback: Debian Wheezy e Ubuntu Oneiric con Fluxbox « Extended Reality

  6. Pingback: Ubuntu minimal install -1- Introduction « Extended Reality

  7. Scugnizzo

    Oooookey!!
    Visto che non mi sono accasciato esausto durante la lettura ma che nel frattempo ho quasi completato l’installazione su una Vbox in ufficio (lentezza biblica) ho da sparare seduta stante una domanda che la cui risposta è “fondamentale” per il proseguimento degli esperimenti anche a casa (su partizione reale dova al momento risiede Arch).
    E’ installabile sfruttando una wifi?

    • Ho addirittura aggiornato il post per risponderti. Purtroppo mi sa che nun se pò ffà… :-(
      Non hai la possibilità di caricare driver/firmware/moduli del kernel che ti potrebbero servire. Dovrei (e forse lo farò, sempre tempo permettendo) provare con la command line install. Il punto però è che nel momento in cui dovresti configurare la connessione ancora non c’è letteralmente niente del sistema, quindi dovresti avere su un’altra unità i pacchetti necessari al wireless e trovare il modo di installarli e caricarli. Nella mini iso c’è proprio lo stretto indispensabile…

  8. Pingback: Window managers -1- Introduzione « Extended Reality

Dimmi che ne pensi o fai "Ciao ciao!" con la manina // Share your thoughts or just say "Hello!"

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

Iscriviti

Ricevi al tuo indirizzo email tutti i nuovi post del sito.

Unisciti agli altri 92 follower

%d blogger cliccano Mi Piace per questo: