Alternative di installazione

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Installation alternatives and the translation is 51% complete.
Outdated translations are marked like this.
This article has some todo items:
  • Verify & validate these methods
  • A few more details and references would be helpful
  • Better wording


Questa guida è pensata per essere un ricettacolo dei metodi di installazione alternativi di Gentoo, per coloro che hanno speciali necessità di installazione come l'assenza del CD-ROM o un computer che non può avviarsi tramite CD.

Se il metodo di installazione standard tramite avvio dal CD di installazione non funziona (o è impossibile da utilizzare, o semplicemente non piace), si può trovare aiuto qui. Questa guida serve per fornire un ricettacolo delle tecniche di installazione alternative di Gentoo Linux per coloro che ne hanno bisogno. O, se si preferisce, funge da luogo in cui inserire metodi stravaganti di installazione. Se c'è un metodo di installazione ritenuto utile, o che il lettore ritiene divertente per installare Gentoo, non si esiti a scrivere qualcosa qui, in questo articolo.

Installazione da LiveCD non Gentoo

Importante
Gli sviluppatori di Gentoo non possono fornire supporto se qualcosa va storto con un LiveCD non Gentoo, in quanto non c'è modo di correggere, risolvere i problemi, o documentare ogni stranezza di ciascun LiveCD esistente. Solo i LiveCD di Gentoo sono ufficialmente supportati. Si prega di visitare i Forum di Gentoo per ricevere aiuto dalla comunità quando ci si imbatte in problemi con mezzi di installazione alternativi.

Gli utenti possono avviare altri LiveCD oltre ai CD forniti da Gentoo. In ogni caso, questi LiveCD forniscono un ambiente funzionale da usare mentre si compila ed installa Gentoo. Le istruzioni fornite qui dovrebbero funzionare in linea di principio con praticamente qualsiasi altro LiveCD.

Ci sono troppi LiveCD da elencare, ma Knoppix potrebbe essere un'opzione da provare. Fornisce una scrivania basata interamente sull'interfaccia grafica, con applicazioni per ufficio, browser di rete, e giochi per tenersi occupati. Knoppix è disponibile solamente per utenti x86, quindi a seconda dei requisiti dell'utente potrebbe essere necessario usare altri LiveCD o metodi.

Attenzione
Essere consapevoli che salvare qualcosa nella cartella home del LiveCD mentre si aspetta che il sistema Gentoo venga installato, non sarà più disponibile una volta riavviato in Gentoo. Assicurarsi di salvare i documenti importanti sul disco rigido o in qualche altro computer!

Avviare dal LiveCD. Aprire un terminale ed eseguire su - così che la password possa essere cambiata. Ciò permette di impostare la password di root per il CD. Il demone sshd può essere ora configurato per il login remoto se necessario. Successivamente, è necessario creare il punto di montaggio /mnt/gentoo.

root #mkdir /mnt/gentoo

A questo punto, si può ricorrere alla documentazione di installazione standard disponibile su Preparazione dei dischi. Tuttavia, quando sarà richiesto il montaggio del sistema proc, eseguire invece il seguente comando:

root #mount -o bind /proc /mnt/gentoo/proc

Quando si scompatta lo stage tarball in #Estrazione dello stage tarball, assicurarsi di usare le seguenti opzioni con il comando tar affinché siano forzati gli ID del gruppo corretto sullo stage scompattato:

root #tar --numeric-owner --xattrs -xvjpf stage3-*.tar.bz2 -C /mnt/gentoo

Se viene usato Ubuntu, notare che /dev/shm è un collegamento simbolico a /run/shm. Deve essere collegato al punto di montaggio o si deve configurare un punto di montaggio di tmpfs in questo percorso (all'interno del percorso chroot). Per collegare il percorso al punto di montaggio, eseguire il seguente comando (prima di effettuare il chroot):

Una volta pronti per effettuare il cambio radice (chroot) nello stage scompattato con la sezione Installazione del sistema di base, sarà necessario usare una differente sequenza di comandi chroot. Così ci si assicura che le variabili d'ambiente siano configurate correttamente.

Nota
Alcuni LiveCD usano una configurazione dell'ambiente piuttosto curiosa, per cui si usi l'opzione env -i per ripulirla e reimpostarla ad uno stato ragionevole.
root #chroot /mnt/gentoo /bin/env -i TERM=$TERM /bin/bash
root #env-update
root #source /etc/profile
root #export PS1="(chroot) $PS1"

Infine, notare che alcune FEATURES di Portage potrebbero non funzionare nel LiveCD. In particolare, controllare i valori delle variabili userpriv e usersandbox. Se ci sono errori, provare a disabilitare tutte le FEATURES opzionali.

Installazione senza disco usando PXE e kernel/initrd/squashfs dal LiveCD

Questo metodo è più facile da configurare rispetto ad un avvio da PXE basato su iSCSI o NFS. Più macchine possono essere avviate dallo stesso insieme di immagini distribuite tramite TFTP e possono essere facilmente estese per funzionare anche su HTTP o altri protocolli.

Having a nice router, or one capable of running open source firmware such as OpenWRT/LEDE, is one way to centralize TFTP and DHCP. Getting the firmware online can sometimes be an uphill battle.

Altre distribuzioni, compresa Fedora, distribuiscono già le immagini necessarie per effetturare il bootstrap del CD live o di installazione. Con Gentoo, non è questo il caso. Al contrario, gli utenti devono:

root #emerge --ask --oneshot app-cdr/cdrtools
CODE Prepare Gentoo in tftproot
mkdir -p /tftpboot/gentoo/
cd /tftpboot/gentoo/
isoname=/tftpboot/ISO-IMAGES/install-amd64-minimal-20210725T170534Z.iso
isoinfo -R -i ${isoname} -X -find -path /boot/gentoo && mv boot/gentoo kernel && rmdir boot
isoinfo -R -i ${isoname} -X -find -path /image.squashfs
# combine initrd + squashfs
(isoinfo -R -i ${isoname} -x /boot/gentoo.igz; (echo image.squashfs | cpio -H newc -o)) > network.igz
rm image.squashfs
ls -lhF kernel network.igz

These instructions may be sufficient for more experienced users. See below for more directions, depending on the PXE flavor in use. There are different PXE boot-codes, but all of them require a kernel and eventually a ramdisk.

Please take a look at PXE page for details on the alternatives, then come back here.

TFTP

This will be needed in tandem with a DHCP server for most PCs equipped with PXE boot. However, iPXE may be used to boot without a TFTP or DHCP server - see ipxe.org for info on embedding scripts, chainloading, and manual booting. There are still merits to TFTP booting such as wide-range device support.

Scaricare il CD di installazione minimale. Installare net-ftp/tftp-hpa, assicurandosi che fornisca /tftproot e avviarlo.

Ora il servizio di avvio TFTP è pronto, quindi il passo successivo consiste nella configurazione di un servizio DHCP. È possibile configurare un server DHCP sulla stessa macchina - assicurarsi semplicemente che le macchine avviate siano connesse ad essa. Oppure, modificare la configurazione di un router esistente.

DHCP

Setting up a DHCP server on the same machine is possible - just make sure that the booted machines are connected to it. Or just tweak the configuration of an existing router.

Di seguito, è riportata la configurazione di esempio di un servizio DHCP per OpenWRT:

FILE /etc/config/dhcp
config boot linux                   
        option filename boot/grub/i386-pc/core.0
        option servername boot
        option serveraddress 84.246.161.86

From here, directions will change depending on the PXE boot-code (i.e. SYSLINUX, GRUB, iPXE).

SYSLINUX

FILE /tftproot/pxelinux.cfg/default
label gentoo install (squashfs/http)
  kernel gentoo/kernel
  initrd gentoo/network.igz
  append root=/dev/ram0 init=/linuxrc  dokeymap looptype=squashfs loop=/image.squashfs  cdroot net.ifnames=0

GRUB

FILE /tftproot/boot/grub/grub.cfg
menuentry "gentoo install" {
    linux /gentoo/kernel root=/dev/ram0 init=/linuxrc  dokeymap looptype=squashfs loop=/image.squashfs  cdroot net.ifnames=0
    initrd /gentoo/network.igz

iPXE

FILE /tftproot/gentoo.ipxe
#!ipxe                                                                    
menu PXE                                                 
item --gap LAN
item gentoo gentoo install (squashfs/http)
 
:gentoo
kernel kernel root=/dev/ram0 init=/linuxrc  dokeymap looptype=squashfs loop=/image.squashfs  cdroot net.ifnames=0 initrd=network.igz
initrd network.igz
boot

Installazione senza disco usando l'avvio da PXE e NFS

Requisiti

PXE (Preboot eXecution Environment) è un metodo per avviare computer su un'interfaccia di rete che supporta PXE (e usando un BIOS che supporta PXE). Nel caso in cui il sistema non supporti l'avvio da PXE dall'interfaccia di rete o BIOS, PXE può essere usato anche come metodo di avvio da dispositivi a blocchi (come CD o USB). In tali casi, un ambiente di avvio minimale imita la scheda di rete che supporta PXE (consultare anche Etherboot/gPXE).

Configurazione del server di base

Creare i percorsi: La prima cosa da fare è creare i percorsi in cui verrà memorizzato il sistema senza disco. Creare un percorso chiamato /diskless che ospita a sua volta un percorso per ciascun client senza disco. Per la parte rimanente di questa guida, il client su cui si sta lavorando sarà chiamato 'eta'.

root #mkdir -p /diskless/eta

Configurazione di DHCP e TFTP: Il client acquisirà le informazioni di avvio usando DHCP e scaricherà tutti i file richiesti usando TFTP.

Per dhcpcd, eseguire semplicemente emerge dhcp (o qualunque altro server DHCP preferito). Assicurarsi di selezionare l'interfaccia corretta in /etc/conf.d/dhcpd, e configurarla di conseguenza. Successivamente, aggiungere il seguente dentro /etc/dhcp/dhcpd.conf.

Nota
Ciò fornisce un indirizzo IP statico per il client e il percorso di un'immagine di avvio da PXE, qui pxegrub. L'indirizzo MAC della scheda ethernet del client nell'esempio deve essere sostituito con l'indirizzo MAC corretto, così come per quanto riguarda il percorso in cui verranno posti i file del client.
FILE dhcpd.conf
option option-150 code 150 = text ;
ddns-update-style none ;
host eta {
hardware ethernet 00:00:00:00:00:00;
fixed-address ip.add.re.ss;
option option-150 "/eta/boot/grub.lst";
filename "/eta/boot/pxegrub";
}

Successivamente, configurare l'interfaccia in /etc/conf.d/net così che non sia cancellata all'avvio. Consultare /usr/share/doc/openrc-*/net.example.bz2 per ulteriori informazioni.

FILE /etc/conf.d/netAssicurarsi che l'interfaccia (qui eth0 nell'esempio) non sia riconfigurata all'avvio
config_eth0="noop"

Per TFTP, installare net-ftp/tftp-hpa. Configurare /etc/conf.d/in.tftpd come di seguito:

FILE in.tftpd
INTFTPD_PATH="/diskless"
INTFTPD_USER="nobody"
INTFTPD_OPTS="-u ${INTFTPD_USER} -l -vvvvvv -p -c -s ${INTFTPD_PATH}"

Installare GRUB:

root #emerge --ask sys-boot/grub

Una volta che GRUB è stato compilato, creare il percorso di avvio del client senza disco:

root #grub2-mknetdir --net-directory=/diskless/eta

Il modo originale consisteva nella copia dell'immagine PXE sul client senza disco, ma sembra che il percorso non esca più.

root #mkdir /diskless/eta/boot
root #cp /usr/lib/grub/pxegrub /diskless/eta/boot/pxegrub

Successivamente, modificare il suo file di configurazione grub.lst.

root #nano -w /diskless/eta/boot/grub.lst
FILE grub.lst
default 0
timeout 30
  
title=Diskless Gentoo
root (nd)
kernel /eta/bzImage ip=dhcp root=/dev/nfs nfsroot=ip.add.re.ss:/diskless/eta
  
# Per l'opione nfsroot, l'indirizzo IP è quello del server e la directory è quella in cui risiedono i file del client senza disco (sul server).

NFS è piuttosto facile da configurare. L'unica cosa da fare è aggiungere una linea nel file di configurazione /etc/exports:

FILE /etc/exports
/diskless/eta eta(rw,sync,no_root_squash)

Una cosa importante da fare ora è modificare il file /etc/hosts per soddisfare i requisiti.

FILE /etc/hosts
127.0.0.1 localhost
192.168.1.10 eta.example.com eta
192.168.1.20 sigma.example.com sigma

Creazione del sistema sul server

Il passo successivo è riavviare il server con un CD di installazione di Gentoo (benché gli amministratori esperti possano continuare senza se sono sufficientemente esperti nell'installazione di Gentoo). Seguire la procedura di installazione normale come spiegata nel Manuale di Gentoo MA con le seguenti differenze: quando si monta il filesystem, eseguire il passo successivo (dove sdaX è la partizione in cui è stato creato il percorso /diskless).

root #mount /dev/sdaX /mnt/gentoo

Non è necessario montare le altre partizioni in quanto tutti i file risiederanno nel percorso /diskless/eta.

Questo esempio usa un archivio stage3. Montare /proc sul percorso senza disco ed effettuare il chroot dentro di esso per continuare con l'installazione. Seguire poi il manuale fino alla configurazione del kernel.

Attenzione
Prestare la massima attenzione quando si scompatta l'archivio stage nella sua destinazione, per non finire con l'estrarlo sopra un'installazione esistente.
root #cd /mnt/gentoo/diskless/eta/
root #tar -xvjpf /mnt/cdrom/gentoo/stage3-*.tar.bz2
root #mount -t proc /proc /mnt/gentoo/diskless/eta/proc
root #cp /etc/resolv.conf /mnt/gentoo/diskless/eta/etc/resolv.conf
root #chroot /mnt/gentoo/diskless/eta/ /bin/bash
root #env-update
root #source /etc/profile

Quando si effettua la configurazione del kernel tramite make menuconfig, non dimenticarsi di abilitare le seguenti opzioni oltre a quelle raccomandate nella guida di installazione.

KERNEL Necessary options for diskless installations
'"`UNIQ--pre-00000019-QINU`"'

Salvare il kernel nel percorso in chroot / (non in /boot) secondo l'impostazione pxegrub definita precedentemente. Successivamente, configurare /etc/fstab del client senza disco.

FILE /etc/fstab
'"`UNIQ--pre-0000001C-QINU`"'

Ora, per prevenire che il client esegua un controllo del filesystem:

root #touch /fastboot
root #echo "touch /fastboot" >> /etc/conf.d/local.start

Installare net-fs/nfs-utils in quanto il client dipenderà pesantemente su di esso:

root #emerge --ask net-fs/nfs-utils

Non installare un altro bootloader in quanto ce n'è già uno - pxegrub. Concludere semplicemente l'installazione e riavviare il server. Avviare i servizi necessari per avviare il nuovo client: DCHP, TFTPF e NFS.

root #service dhcp start
root #service in.tftpd start
root #service nfs start

Avvio del nuovo client

Perché il nuovo client possa avviarsi correttamente, è necessario che la scheda di rete e il BIOS siano configurati in maniera tale da usare PXE come primo metodo di avvio - prima di CD-ROM o floppy. Per avere aiuto con questo, consultare i manuali hardware o i siti web dei fabbricanti. La scheda di rete dovrebbe ottenere un indirizzo IP usando DHCP e scaricare l'immagine GRUB PXE usando TFTP. Successivamente, dovrebbe venire mostrata una bella schermata del menu di avvio di GRUB in bianco e nero, in cui l'utente può selezionare il kernel da avviare e prmere il tasto Enter (Invio). Se tutto va bene, il kernel dovrebbe avviarsi, montare il filesystem root usando NFS e fornire un terminale di login. Buon divertimento.

Installazione di Gentoo da una distribuzione Linux esistente

Importante
The only fully guaranteed method for installing Gentoo is with the Minimal Install CD. That said, installing from another, recent, Linux environment will usually work just as well. Support will often still be forthcoming using this method, but be ready to revert to the Minimal Install CD, if needed. Of course, in case of issues with other distributions, users will be refered to other channels for help.

Requisiti

Per installare Gentoo da una distribuzione Linux esistente, è necessario aver installato il comando chroot, e avere una copia dell'installazione di Gentoo o dell'ISO che si desidera installare. È altamente raccomandata una connessione ad Internet, in quanto altrimenti l'installazione può funzionare solo con i file disponibili sul mezzo di installazione. A proposito, un archivio è semplicemente un file che termina per .tbz o .tar.gz. Si parte!

Panoramica

Allocare per prima cosa una partizione a Gentoo, ridimensionando una partizione Linux preesistente, montando la partizione, estraendo l'archivio nella partizione che è montata, effettuando il chroot all'interno dello pseudo sistema e iniziando a costruirlo. Una volta che è stato effettuato il processo di bootstrap, effettuare la configurazione finale sul sistema in modo da essere sicuri che si avvii, poi riavviare e usare Gentoo.

Come si crea spazio per Gentoo?

La partizione di root è il filesystem montato su /. Il primo esempio mostra l'output di mount in un sistema. Il secondo esempio usa df (disk free) per vedere quanto spazio libero è rimasto e come verrà ridimensionato. Notare che il ridimensionamento della partizione di root non è obbligatorio! Qualunque cosa supportata dal ridimensionatore può essere ridimensionata, ma ne parleremo più avanti.

root #mount
/dev/sdb2 on / type ext3 (rw)
none on /proc type proc (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
none on /dev/shm type tmpfs (rw,nodev,nosuid,noexec)
root #df -h
Filesystem           Size Used Avail Use% Mounted on
/dev/sdb2            4.0G 1.9G  2.4G  82% /
none                  38M    0   38M   0% /dev/shm

Come si nota, la partizione montata come / chiamata /dev/sdb2 ha 2.4 GB di spazio libero. In questo caso, è stato deciso di ridimensionarlo per lasciare 400 MB di spazio libero, di conseguenza allocando 2 GB per Gentoo. Non male, potrebbe starci un bel po' di roba installata lì. Tuttavia, 1 GB è ritenuto sufficiente per la maggior parte degli utenti. Quindi ora partizioniamo questa cosa!

Installare parted per ridimensionare le partizioni

sys-block/parted è estremamente utile per ridimensionare le partizioni. È compreso nel CD di installazione minimale.

Nota
Esistono anche altri strumenti per effettuare il ridimensionamento delle partizioni, ma è al di là dello scopo di questa guida descriverli in maniera dettagliata.

Cercare su quella pagina il tipo di filesystem da ridimensionare e controllare se parted ùpuò farlo. Se la risposta è no: che sfortuna, si potrebbe dover distruggere alcune partizioni per fare spazio a Gentoo. Proseguire con lo scaricamento e l'installazione del software. Nel passo successivo, sorge un problema. La partizione di root Linux deve essere ridimensionata, di conseguenza deve essere avviato un floppy con un sistema Linux minimale, e deve usare una vesione precedentemente compilata di parted copiata su un dischetto per ridimensionare /. Se la partizione può essere smontata mentre si sta ancora eseguendo Linux allora i seguenti passi non sono necessari. Compilarlo ed eseguirl semplicemente su una partizione non montata scelta per essere ridimensionata. Di seguito è riportato come è stato fatto su questo sistema.

Importante
Assicurarsi che le operazioni richieste per il partizionamento siano supportate da parted!
Nota
Si noti nuovamente che Linux è sinonimo di "C'è più di una maniera per farlo". L'obiettivo è eseguire parted in una partizione non montata così che possa fare il suo lavoro. Si può usare un disco boot/root diverso da mininux. Questo passo potrebbe non essere affatto necessario: si potrebbe aver solamente bisogno di smontare il filesystem da ripartizionare nella sessione Linux ed eseguire parted su di esso.

È ora di riavviare e ridimensionare la partizione. Fare ciò solo dopo avere dato una rapida occhiata alla documentazione di parted sul sito web GNU. Il ridimensionamente dovrebbe durare meno di 30 minuti per i dischi più grandi, portare pazienza. Riavviare il sistema con il disco di avvio mininux (inserirlo semplicemente), e una volta effettutato l'accesso, scambiare il disco nel lettore con il disco utilità che è stato creato sopra e digitare mount /dev/fd0 /floppy per avere parted in /floppy. Eseguire parted per essere in grado di ridimensionare la partizione. Una volta che questo lungo processo è stato concluso, continuare con l'installazione di Gentoo. Riavviare ed entrare nel vecchio sistema Linux per ora. Il disco su cui operare è quello contenente la partizione che sta per essere ridimensionata. Per esempio, se la partizione da ridimensionare è /dev/sda3, allora il disco è /dev/sda.

root #mount /dev/fd0 /floppy
root #cd /floppy
root #./parted <drive>
(parted)print
Disk geometry for /dev/sdb: 0.000-9787.148 megabytes
Disk label type: msdos
Minor    Start       End     Type      Filesystem  Flags
1          0.031   2953.125  primary   ntfs
3       2953.125   3133.265  primary   linux-swap
2       3133.266   5633.085  primary   ext3
4       5633.086   9787.148  extended
5       5633.117   6633.210  logical
6       6633.242   9787.148  logical   ext3
(parted)help resize
(parted)  help resize 
  resize MINOR START END        resize filesystem on partition MINOR
  
        MINOR is the partition number used by Linux.  On msdos disk labels, the
        primary partitions number from 1-4, and logical partitions are 5
        onwards.
        START and END are in megabytes

NUMBER is the partition number used by Linux. On MS-DOS disk labels, the primary partitions

       number from 1 to 4, logical partitions from 5 onwards.
       END is disk location, such as 4GB or 10%.  Negative value counts from the end of the disk.
       For example, -1s specifies exactly the last sector.
}}
(parted)resize 2 3133.266 4000.000
Importante
Portare pazienza! Il computer sta lavorando! Controllare il LED del disco rigido sul case per controllare l'attività. Il processo dovrebbe impiegare tra i 2 e i 30 minuti.

Una volta che il ridimensionamento è concluso, riavviare dentro il vecchio sistema Linux come descritto. Successivamente, andare nella sezione Preparazione dei dischi del manuale di Gentoo e seguire le istruzioni. Quando si effettua il chrott, usare il seguente comando per ripulire l'ambiente:

Chrooting

When chrooting, use the following command to flush the environment:

root #env -i HOME=$HOME TERM=$TERM chroot /mnt/gentoo /bin/bash
root #/usr/sbin/env-update
root #source /etc/profile

Buon divertimento!

See also


This page is based on a document formerly found on our main website gentoo.org.
The following people contributed to the original document: Gerald Normandin Jr., Travis Tilley, Oleg Raisky, Alex Garbutt, Alexandre Georges, Magnus Backanda, Faust A. Tanasescu, Daniel Ahlberg, Ken Nowack, Tiemo Kieft, Benny Chuang, Jonathan Smith, and
They are listed here because wiki history does not allow for any external attribution. If you edit the wiki article, please do not add yourself here; your contributions are recorded on each article's associated history page.