Alternative di installazione
- 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
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.
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.
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
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:
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
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
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
#!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.
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.
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.
config_eth0="noop"
Per TFTP, installare net-ftp/tftp-hpa. Configurare /etc/conf.d/in.tftpd come di seguito:
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
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:
/diskless/eta eta(rw,sync,no_root_squash)
Una cosa importante da fare ora è modificare il file /etc/hosts per soddisfare i requisiti.
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.
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.
'"`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.
'"`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
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.
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.
Assicurarsi che le operazioni richieste per il partizionamento siano supportate da parted!
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
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
- Installation — an overview of the principles and practices of installing Gentoo on a running system.
- Install Gentoo on a bootable USB stick — describes how to install Gentoo onto a USB stick that can be booted on any computer.
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.