Author Topic: Guida all'installazione della Gentoo  (Read 14791 times)

0 Members and 1 Guest are viewing this topic.

Offline MsZ

  • Il Manutentore
  • Militante
  • ******
  • Posts: 913
  • GNUru Meditation
Guida all'installazione della Gentoo
« on: Sun 09 December 2007, 18:43 »
--Gentoo--
Guida all'installazione

---La presente Guida si rivolge a utenti che vogliano provare ad installare e/o provare la Gentoo. Nella seguente breve descrizione tenterò di descrivere nel minor numero di righe possibile le sue caratteristiche principali.---
 --- Il thread rimarrà aperto per ulteriori delucidazioni, suggerimenti, proposte, precisazioni... eccetera :biggrin: ---


Gentoo Linux
Caratteristiche generali
Ve lo dico chiaro e tondo da subito: installare la Gentoo non è affatto semplice. Essa si basa sull'ottimizzazione, e installandola meramente da CD o DVD con binari precompilati si perde la metà della ragione della sua esistenza, limitandola ad un gestore di pacchetti (emerge) ed a una configurazione differente da molte altre distribuzioni. Ciononostante è anche possibile installarla in maniera "networkless", tra le altre cose. Riferitevi alla sezione "Metodi di installazione" per maggiori informazioni.
Dicevo, ottimizzazione. Uno degli aspetti principali della Gentoo è che è ottimizzabile al 100%. Infatti, tramite il suo caratteristico sistema di gestione di pacchetti, Portage, Gentoo può compilare e risolvere dipendenze con una semplice riga di comando.
---Per ulteriori informazioni riferitevi al topic "Che cos'è la compilazione?" nella presente Sezione.---

Portage
Portage è il sistema di gestione di pacchetti della Gentoo. Non è il gestore in sè: il gestore si chiama emerge ed è un tool versatile, veloce e intelligente per installare applicazioni compilabili direttamente da Internet. Generalmente emerge scarica i sorgenti e, se sono presenti e vanno usate, delle patch di codice, che vengono applicate automaticamente subito dopo la decompressione dei sorgenti principali. Poi ha inizio l'opera di configurazione e di compilazione secondo determinati criteri, che poi spiegherò.
Alla fine, come ogni compilazione, i file generati vengono installati, i collegamenti risolti, le librerie registrate e l'ambiente aggiornato.

I flag USE
I flag USE sono piccole parole chiave memorizzate in un file che si chiama make.conf, nella directory /etc. Ognuna di esse influenza configurazione e compilazione di un determinato pacchetto che la abbia come "caratteristica". Ad esempio, se scegliete "X" come flag USE emerge "calibrerà" il sistema affinchè possa essere una base completa e robusta per reggere l'intera infrastruttura per l'interfaccia utente grafica caratteristica di GNU, Xorg.
I flag USE hanno anche un'altro utilizzo: possono essere usati per "evitare" che qualcosa possa essere configurato in un certo modo. Scrivendo "-xvid" tutti i pacchetti influenzabili saranno configurati e compilati senza la capacità di poter leggere e/o codificare stream video con codec XviD.
In breve, essi sono l'"ossatura" del procedimento stesso di configurazione di Gentoo. Portage si regge su di essi. E' attraverso queste "regole" che il sistema ottimizza se stesso.
Una lista completa dei flag USE è presente nel file /usr/portage/profile.d/use.desc.

--- Modalità di installazione ---
In www.gentoo.org c'è un collegamento che si chiama "Get Gentoo". Nella pagina è possibile prelevare e scrivere su supporto ottico diversi tipi di ISO, che dipendono dalla macchina di destinazione e dal tipo di installazione, che può essere LiveCD o network install.
Dalla LiveCD è possibile comunque selezionare il tipo di installazione. La netinst (NETwork INSTall) è un sistema mirato che porta una base minimale operativa, dalla quale collegarsi alla Rete per scaricare i file necessari all'installazione.
Dovete tuttavia notare che, se non fate un'installazione da CD o da DVD, è necessario scaricare due pacchetti principali prima di fare qualsiasi cosa.
Essi sono uno stage di installazione (ftp://mirror.ing.unibo.it/gentoo/releases/x86/2007.0/stages)[/color] e uno snapshot di Portage (ftp://mirror.ing.unibo.it/gentoo/snapshots) [/color].
Altri stage di installazione sono disponibili all'indirizzo ftp://mirror.ing.unibo.it/gentoo/releases/<arch>/2007.0/stages, in cui <arch> è l'architettura della macchina su cui dovrà essere installata. Scegliete tra x86, amd64, ia64, ppc, sparc, alpha, hppa, mips.
Dovrete averli a portata di mano per l'installazione, quindi dovrete organizzarvi. Mettetelo in una partizione "sicura" del disco su cui volete mettere la Gentoo, su un disco esterno, su una chiavetta USB (insieme i due pacchetti non occupano più di 150MB circa. Potete anche metterlo su CD, ma dovrete avere due lettori disponibili: uno per il disco di installazione, che verrà montato in modalità esclusiva e quindi non potrà essere aperto, e uno per i pacchetti di sistema.
Riferitevi sempre e solo a uno stage di livello 3. Gli altri due livelli non sono supportati globalmente.

Andrò ad illustrare due modalità di installazione. Una per principianti e una per "esperti".

--- Modalità per principianti : LiveCD ---
Con il LiveCD potrete fare sia un'installazione networkless che network. Assicuratevi di avere una connessioen Internet funzionale, preferibilmente tramite router e scheda di rete, prima di fare qualsiasi cosa. Questa regola vale per entrambi i procedimenti.
All'avvio il CD caricherà il sistema operativo di base. Se vorrete potrete provare il sistema prima di installarlo, che è una prerogativa di qualsiasi distro live.
Avrete due metodi per installare: uno tramite GTK (graficamente) e uno tramite terminale (ncurses). Il primo è il più semplice; usa mouse e finestre grafiche.
[OMISSIS]

--- Modalità avanzata : netinst minimale ---
La netinst minimale è per utenti relativamente avanzati. Le uniche cose che fa automaticamente è avviare il computer con una Gentoo minimale e fornire i tool di base per la connessione ad Internet. I passi da fare a mano sono tantissimi.
« Last Edit: Mon 10 December 2007, 01:02 by MsZ »

Offline MsZ

  • Il Manutentore
  • Militante
  • ******
  • Posts: 913
  • GNUru Meditation
Re: Guida all'installazione della Gentoo
« Reply #1 on: Sun 09 December 2007, 18:51 »
*** Verifica della connessione ***
Il primo è verificare la connessione tramite scheda di rete. Sarete sempre root, quindi non avrete problemi di permessi. State comunque attenti a ciò che fate, perchè root può montare e modificare qualsiasi filesystem.
digitate ifconfig. Verranno listati i dispositivi di rete attualmente attivi. Se vedete solo "lo" nella lista digitate ifconfig -a per avere la lista completa di tutte le periferiche di rete, attive e non.
Cercate una cosa che si chiama "eth0". E' la vostra scheda di rete PCI primaria. Se avete molte periferiche potreste dover aggiungere un |less alla fine del comando. Potrete così scorrere tutte le periferiche con le frecce direzionali su e giù. Se trovate eth0 (o se avete una wlan0 disponibile) digitate poi dhcpcd eth0 per la scheda PCI. Dopo qualche istante la scheda verrà attivata dal DHCP del router, e verrà assegnato un indirizzo IP al computer.
Se avete una wlan0 potreste dover prima fare la scansione della rete wireless con iwlist wlan0 scanning. Le caratteristiche della rete sondata verranno automaticamente assegnate a wlan0, ma non sarà ancora attiva: per attivarla dovrete fare lo stesso procedimento per eth0: dhcpcd wlan0.
--- !!!IMPORTANTE!!! --- Assicuratevi che la vostra scheda di rete USB possa essere vista correttamente dal kernel di Linux prima di procedere!!! ---
Fatto questo avrete una connessione Internet attiva e pronta all'uso.

*** Installazione stage e Portage ***
Immediatamente dopo è da montare il futuro ambiente Gentoo.
Andate in /mnt e controllate. Dovrebbe esserci una directory chiamata gentoo. Avete già configurato a dovere il vostro disco rigido??
--- Riferitevi al topic "Preparazione di dischi rigidi con GNU/Linux" per ulteriori informazioni e indicazioni. ---
Dovrete montare la vostra futura partizione di root proprio qui.
Usate il comando mount -t <filesystem> /mnt/gentoo/ /dev/<nome_root> per montare la root in /mnt/gentoo.
Avete i due pacchetti a portata di mano, vero? Ora potete scompattarli. Usate il comando tar -xjf stage3-<arch>-<versione>.tar.bz2 -C /mnt/gentoo/.
Il pacchetto è circa 100MB, ci metterà un po' per scompattarlo. Quando tar avrà terminato il lavoro potrete scompattare portage.
tar -xjf portage-<data>.tar.bz2 -C /mnt/gentoo/usr/.
Teoricamente è possibile scaricare stage e snapshot anche semplicemente da netinst, ma così è più semplice e avrete un ambiente stabile in poco tempo, sul quale potrete immediatamente lavorare.

*** Montaggio altri filesystem ***
Potete montare altri filesystem nella directory /mnt/, creando i relativi mount point; se dovete andare a prendere file da altre partizioni, per esempio. Ma essenzialmente servono una root, una swap e una /home. Riferitevi al topic "Partizionamento in GNU/Linux" per dettagli. Se dovete montare la /home, ricordatevi di farlo in /mnt/gentoo. Dovete sforzarvi di pensare in modo "relativo", immaginando che /mnt/gentoo sia la partizione di root. Chiedetevi: che serve? Che devo montare?
Dopo la root (/mnt/gentoo/), la home (/mnt/gentoo/home) e aver creato e attivato la swap dovrete montare altri due filesystem molto importanti: proc e dev.
Per /proc si fa così: mount -t proc proc /mnt/gentoo/proc;
e così per /dev: mount -o bind /dev /mnt/gentoo/dev (o mount --bind /dev /mnt/gentoo/dev).
Nel primo caso /proc viene montato in modo nativo. Nel caso di /dev, invece, viene semplicemente "rimontato" in /mnt/gentoo/dev per un completo utilizzo.
Ora che avete montato tutto quello che vi serve potete fare chroot.

*** chroot ***
chroot è un tool che cambia radice al sistema. Facendo chroot su una directory cambiate tutti i percorsi relativi, e ne fate il riferimento alla directory che avete stabilito come nuova root. Questa caratteristica, però, è valida solo per il terminale correntemente in uso.
In pratica, se cambiate terminale e usate uno non chroot, sarete tornati al sistema originario. Potete sfruttare questa caratteristica per effettuare modifiche in modalità "super user" su un ambiente chroot, o spostare file all'interno di chroot dall'esterno, il che è impossibile dall'interno.
Per entrare in un ambiente chroot basta digitare chroot /mnt/gentoo /bin/bash.
Premete invio e vi troverete all'interno della vostra nuova Gentoo di base. Ricordate sempre che è un ambiente molto minimale.
A prima vista il prompt è uguale, e se vorrete distinguere l'ambiente chroot dall'ambiente originario potete cambiare l'aspetto del prompt:
Quote
export PS1="(chroot) $PS1"

*** Controlli ***
Le uniche cose da verificare ora sono il corretto mount di /dev e /proc e la presenza di dhcpcd. Controllate /proc con cat /proc/cpuinfo. Se scriverà "No such file or directory" dovrete rifare il mount di /proc. Per controllare /dev basta andarci dentro con cd. Se è vuota significa che non è montata. Potete in ogni momento spostarvi di terminale con ALT+Fn, dove n è un numero generalmente da 1 a 6 nelle configurazioni di default.
Ora dovete controllare la scheda di rete. Una cosa immediatamente utile che potete fare è controllare la lista di mirror per i pacchetti della Gentoo.
mirrorlist -i -o >> /etc/make.conf
Se non effettuerà la connessione potreste dover usare di nuovo dhcpcd. Ma se non c'è dovete copiarlo da /sbin. Non dall'ambiente chroot, ma dall'ambiente originale.
cp --archive /sbin/dhcpcd /mnt/gentoo/sbin
Dunque potete anche controllare se eth0 è configurata. Ripetete dhcpcd eth0 e rifate il controllo dei mirror.

*** Configurazione di mirror e rsync ***
mirrorlist -i -o >> /etc/make.conf
Generalmente basta scegliere i mirror più vicini. Ma è sempre bene sceglierne almeno quattro o cinque, nel caso uno o più fossero down. Capita molte volte di dover riperere un emerge da zero dopo 60 pacchetti perchè i mirror sono andati down.
Dopo i mirror è la volta di rsync.
mirrorlist -i -o -r >> /etc/make.conf
Avrete una scelta sola: il mirror di rsync è uno, ma dovrete fare un sync si e no una volta a settimana, se va bene.
Tutta la roba che avete fatto va a comporre il file /etc/make.conf. E' una buona cosa controllarlo prima di procedere.
Un editor semplice e usabile in Gentoo è nano.

Offline MsZ

  • Il Manutentore
  • Militante
  • ******
  • Posts: 913
  • GNUru Meditation
Re: Guida all'installazione della Gentoo
« Reply #2 on: Sun 09 December 2007, 18:59 »
*** Primi accorgimenti per emerge ***
Come ho scritto sopra, emerge è il tool di gestione di codice caratteristico della Gentoo. Prima di poterlo usare però sono necessarie delle modifiche alla configurazione.
Primissima cosa da fare appena in chroot, con i mirror settati e l'ambiente stabile è emerge --sync.
emerge scaricherà un albero di pacchetti e dipendenze da Internet e andrà a modificare file di configurazione, indirizzi e percorsi per adattarli al nuovo ambiente. Una volta finito vi verrà scritto un messaggio in cui si dice di aggiornare Portage.
E' una cosa molto importante, e va fatta. Adesso che emerge ha tutto quello che gli serve potete cominciare a rullare scrivendo emerge portage.
Portage risolverà le dipendenze, scaricherà i codici e compilerà se stesso, riconfigurandosi e preparandosi alla nuova versione.
Bene... ora che Portage è pronto dovete solo modificare i vostri USE flags.

*** Pacchetti di base ***
Le prime cose da installare sono solitamente due: un gestore di messaggi log del kernel (syslog) e un gestore di eventi (cron). Essenzialmente serve soltanto syslog. cron è un demone che, a seconda della configurazione, richiama applicazioni o eventi ad una certa ora del giorno o della notte.
E' ora di prendere un po' di confidenza con emerge, dunque.
Per installare syslog basta fare
emerge syslog-ng
Il sistema scaricherà i sorgenti del programma e di tutte le dipendenze, li compilerà e li installerà.
Se vorrete installare cron potete contare su vixie-cron:
emerge vixie-cron
Non basta, però. Serve un bootloader per far partire il sistema operativo. A dire la verità non è che sia indispensabile, però se avete più di un sistema operativo è imperativo averlo.
Sono molto usati LiLo e GrUB nei sistemi operativi GNU/Linux. Quindi ne dovete scaricare uno con
emerge grub
oppure
emerge lilo
Scaricato e installato, lo dovrete configurare. Mancano /etc/lilo.conf per LiLo e /boot/grub/menu.lst per GrUB. Riferitevi alle pagine di manuale di LiLo e GrUB su come sistemare la configurazione di base.

*** USE flags ***
Come già detto, una lista esaustiva di flag USE è scritta all'interno del file /usr/portage/profiles/use.desc.
--- NON modificatelo per nessun motivo. NON modificate nemmeno /etc/make.globals. Il file make.conf serve a sovrastare i settaggi scritti in make.globals. ---
I flag USE sono usati da Portage per configurare l'ambiente a seconda degli stessi. La riga da mettere in make.conf per abilitare flag custom -oltre a quelli teoricamente già presenti in make.globals è
USE="flag1 flag2 flag3"
dove flag1, flag2 e flag3 sono flag USE possibili tratti da use.desc. Tra ogni flag ci deve essere uno spazio; la riga deve essere chiusa da virgolette.
Un esempio può essere
USE="X alsa bzip2"
dove si abilita tutta l'infrastruttura di X e di Advanced Linux Sound Architecture, e si abilita la possibile manipolazione bzip2 per ogni pacchetto che possa farne uso. Come vedete, la customizzazione è a livelli molto alti. Si agisce direttamente sul codice di ogni software scaricato, modificandolo a seconda delle proprie esigenze o "capricci".
E' possibile inserire qualsiasi tipo di flag. E' anche possibile "togliere" la proprietà ai pacchetti di fare o usare qualcosa. Basta mettere un segno meno subito davanti ad un flag.
USE="X alsa bzip2 -crypt"
fa la stessa cosa della configurazione sopra. In più disabilita la crittazione, dove applicabile, a qualsiasi pacchetto scaricato.
A voi la scelta su quali flag mettere. :)

*** Aggiornamento del sistema ***
Ed ora è il momento del grande salto. Fino adesso sono stati solo bruscolini, qualcosetta qua e là. Ora è il momento di scaricare tutto il resto.
Una piccola preparazione prima:
emerge --regen
preparerà l'ambiente aggiornando gli alberi di dipendenze e sistemando i percorsi ed i collegamenti.
Il comando da fare prima è per vedere che cosa verrà effettivamente installato.
emerge --deep --update --pretend --newuse world
Vedrete un sacco di righe che vi diranno che cosa Portage installerà nel sistema. Potranno essere un bel po' di pacchetti, quindi potete scegliere se installarne uno alla volta per vedere che cosa effettivamente viene fatto, ed anche per vedere se vengono risolte alcune dipendenze di base; oppure togliere l'opzione "--pretend" dalla riga ed installare direttamente tutto senza remore di poter dovere aspettare per delle ore.
Potranno anche succedere delle interruzioni. Saranno probabilmente dovute ad errori di compilazione, perchè errori di dipendenze in Portage sono pressochè inesistenti.
Nel caso dovessero succedere, potete tentare di vedere qual è il problema e provare a ripristinare l'installazione con un
emerge --resume
Portage ricomincerà da dove si era fermato.

Ciononostante il problema potrebbe perdurare. Il metodo migliore è sempre andare a vedere i singoli pacchetti per identificare il problema alla radice, ma potrebbe essere difficile, se non impossibile. Allora esiste un'opzione che potrebbe fare al caso vostro:
emerge --resume --skipfirst
Così facendo Portage salterà il primo pacchetto che dà errore in compilazione, per continuare con il secondo. E' consigliabile ricorrere a questa come ultima risorsa. Se l'errore capita con una libreria o una dipendenza relativamente fondamentale, è bene assicurarsi che l'approccio al problema non vada a crearne altri. Ma in genere una cosa simile succede solo per pacchetti "in cima" alla piramide delle dipendenze, dove fanno meno danni.
Oppure potete sempre modificare il file make.conf per togliere qualche flag che potrebbe stare scomoda a Portage, oppure aggiungerne qualcuno che scongiuri il difetto. Ma questo è altamente soggettivo, e potrebbe funzionare per alcuni computer come potrebbe non funzionare per altri.
In definitiva è una pratica molto "indicativa" che si basa più sull'istinto che sul software vero e proprio. Spero che possiate fare a meno di alcuni programmi che non riuscite ad installare. Nessuna distribuzione è perfetta, e la Gentoo non fa differenza.

*** Considerazioni finali ***
Tutto il procedimento fin qui illustrato vale per un'installazione Internet.
Se fate un'installazione networkless potreste voler vedere solo qualcosa sull'aggiornamento del sistema; se fate un'installazione da Live con stage e snapshot potreste avere problemi in fase di installazione; così ne uscirà danneggiata l'installazione. Se avete problemi dovrete diavviare il sistema e ricominciare dal pacchetto dove si era fermato.
Lo stage fornisce un sistema completo ma scheletrico, con file di configurazione completi, solo da aggiornare. Quindi fin da subito non dovreste avere problemi nè per gli script d'avvio nè per la configurazione generale.

Beh, penso di aver detto tutto, a parte forse un "complimenti" per essere arrivati fino a qui ed essere riusciti ad installare una distribuzione come la Gentoo.
Ora a colpi di emerge dovreste poter installare quello che volete, come volete e con la configurazione che volete.

Offline franz1789

  • Vagrant
  • Administrator
  • Militante
  • *****
  • Posts: 767
    • Been Smoking Too Long
Re: Guida all'installazione della Gentoo
« Reply #3 on: Mon 21 April 2008, 15:48 »
Mah, l'ho masterizzata, ma mi sa che non la installo, temo di dover tornare alla Arch Linux. Sono arrivato ad un punto in cui non mi riesce di fermarmi a ubuntu...

 

Creative Commons License All ValerioCipriani.com contents are published according to Creative Common License, except different instructions. The Staff is not responsible of eventually guide, article and publishing mistakes. All published items are patent free. All trade marks reported are right reserved. Contact us, Info.