How To Network Boot (PXE) Il LiveCD di Ubuntu
Con l'ultima release di Ubuntu, abbiamo pensato di festeggiare mostrandoti come renderlo disponibile centralmente sulla tua rete utilizzando l'avvio di rete (PXE).
Panoramica
Ti abbiamo già mostrato come configurare un server PXE nella guida "Che cos'è l'avvio in rete (PXE) e Come puoi utilizzarlo?", In questa guida ti mostreremo come aggiungere il LiveCD di Ubuntu alle opzioni di avvio.
Se non stai già utilizzando Ubuntu come il tuo numero uno "vai a" per la risoluzione dei problemi, strumento di diagnostica e procedure di salvataggio ... probabilmente sostituirà tutti gli strumenti che stai utilizzando al momento. Inoltre, una volta che la macchina è stata avviata nella sessione live di Ubuntu, è possibile eseguire l'installazione del sistema operativo come faresti normalmente. L'immediato spegnimento dell'uso di Ubuntu sulla rete, è che se stai già utilizzando la versione del CD, non cercherai mai più i CD che hai dimenticato nelle unità CD..
Immagine di Dryope.
Prerequisiti
- Si presume che tu abbia già configurato il server FOG come spiegato nella nostra guida "Che cos'è l'avvio in rete (PXE) e Come puoi utilizzarlo?".
- Anche qui si applicano tutti i prerequisiti per la guida alla configurazione FOG.
- Questa procedura è stata utilizzata per rendere avviabile da Ubuntu 9.10 (Karmic Koala) fino alla rete 11.04 (Natty Narwhal) inclusa. Potrebbe funzionare per altre distribuzioni come Ubuntu (come Linux Mint) ma non è stato testato.
- Mi vedrai usare VIM come programma di editor, questo solo perché sono abituato ... puoi usare qualsiasi altro editor che vorresti.
Come funziona?
In generale, il processo di avvio di LiveCD di Ubuntu che tutti conosciamo è simile a questo:
- Hai messo un CD nel drive cdrom il BIOS sa come usare il cdrom abbastanza per ottenere il boot program sul cdrom (isolinux).
- Isolinux è responsabile per le opzioni del menu. Una volta selezionata una voce di avvio come "Avvia o installa Ubuntu", chiama i file kernal + initrd (disco ram iniziale), li copia in memoria e passa i parametri a loro.
- L'ora nella RAM e nel kernel di controllo + initrd avvia il processo di avvio, mentre utilizza i parametri che sono passati a loro per determinare cose come: dovrebbe essere visualizzata la schermata iniziale? dovrebbe l'output essere dettagliato?.
- Quando gli script inirtrd hanno finito di caricare i driver e le informazioni sul dispositivo, cercano i file liveCD di Ubuntu per continuare il processo di avvio. Il comportamento normale è quello di cercare nell'unità cdrom fisica locale.
Per l'avvio di rete:
- Invece di un media locale come un CD, il client viene avviato utilizzando la sua scheda di rete (PXE) e viene fornito con PXElinux su TFTP.
- Proprio come Isolinux, PXElinux è responsabile delle opzioni di menu. Una volta selezionata una voce di avvio, chiama i file initrd di Ubuntu kernal, li copia in memoria e passa i parametri a loro.
- L'ora nella RAM e nel kernel di controllo + initrd avvia il processo di avvio, con le nostre informazioni aggiuntive che dovrebbero non cercare i file di avvio nell'unità cdrom fisica locale del client, ma piuttosto in una condivisione NFS sul nostro server FOG.
Ciò è possibile perché i creatori di Ubuntu hanno abilitato il networking integrando i driver e i protocolli delle schede di rete nei file kernel + initrd. Per un atto del genere, possiamo solo ringraziare il team di Ubuntu.
Rendi i file Ubuntu disponibili sul server
Il primo passo è rendere i file Ubuntu disponibili sul server. Si può scegliere di copiarli semplicemente dall'unità CD o di estrarli dall'ISO e che funzionerà correttamente. Detto questo, renderemo ISO montato automaticamente. Anche se non è un obbligo, questo ti consentirà di utilizzare la nostra guida "Come aggiornare la tua ISO di Ubuntu senza scaricare nuovamente", per aggiornare la versione di Ubuntu del tuo avvio di rete senza passare da zero a tutte le procedure o, in alternativa, sostituire un singolo file per aggiornare l'intera voce.
Con quanto sopra detto, questo autore ama mantenere un paio di versioni passate in giro, fino a quando il nuovo è stato dimostrato assolutamente stabile e privo di problemi. Questo è il motivo per cui creeremo una sottodirectory e un punto di mount in base alla versione, ma sappiamo che è possibile ignorarlo per avere il tuo singolo punto di aggiornamento.
- Copia l'ISO nella "/ Tftpboot / howtogeek / Linux"Directory
- Crea il punto di montaggio:
sudo mkdir -p / tftpboot / howtogeek / linux / ubuntu /
- Modifica il "fstab"File per avere l'ISO montato automaticamente all'avvio:
sudo vim / etc / fstab
- Aggiungi a "fstab" la voce di montaggio ISO:
/tftpboot/howtogeek/linux/ubuntu-11.04-desktop-amd64.iso /tftpboot/howtogeek/linux/ubuntu/11.04 udf, utente iso9660, loop 0 0
Nota: nonostante la rappresentazione, questa è una linea ininterrotta.
- Verificare che il punto di montaggio funzioni emettendo:
sudo mount -a
- Se tutto è andato bene, dovresti essere in grado di elencare il contenuto dell'ISO emettendo:
ls -lash /tftpboot/howtogeek/linux/ubuntu/11.04/
Crea una condivisione NFS
Mentre la procedura di avvio inizia utilizzando PXE, il sollevamento effettivo viene eseguito dalla condivisione NFS sul server. Poiché stiamo basando questa guida sul nostro server FOG, i componenti NFS e alcune configurazioni sono già state fatte per noi dal team FOG e tutto ciò che dobbiamo fare è aggiungere a loro la nostra condivisione Ubuntu.
- Modifica il file "esporta" per aggiungere la nuova condivisione:
sudo vim / etc / exports
- Aggiungi ad esso il puntatore al nostro punto di mount ISO:
/tftpboot/howtogeek/linux/ubuntu/11.04/ * (ro, sync, no_wdelay, insecure_locks, no_root_squash, non sicuro)
- Riavviare il servizio NFS affinché le impostazioni abbiano effetto:
sudo /etc/init.d/nfs-kernel-server restart
Impostazione del menu PXE
Modifica il menu "Linux stuff":
sudo vim /tftpboot/howtogeek/menus/linux.cfg
Aggiungi ad esso il seguente:
LABEL Ubuntu Livecd 11.04
MENU PREDEFINITO
KERNEL howtogeek / linux / ubuntu / 11.04 / casper / vmlinuz
APPEND root = / dev / nfs boot = casper netboot = nfs nfsroot =: / tftpboot / howtogeek / linux / ubuntu / 11.04 initrd = howtogeek / linux / ubuntu / 11.04 / casper / initrd.lz splash silenzioso --
Quanto sopra può apparire disordinato a prima vista, ma tutto quello che devi fare è sostituire * con l'IP del tuo server server NFS / PXE.
Per una comprensione più chiara del Geek, il testo qui sopra:
- Crea una nuova voce PXE nel sottomenu "Linux" chiamato "Ubuntu 11.04".
- A causa del parametro "MENU DEFAULT", questa voce verrà automaticamente selezionata quando si entra nel sottomenu "Linux".
- Puntare il client a prendere il kernel + i file initrd usinf TFTP dal relativo percorso nella directory "/ tftproot" di "howtogeek / linux / ubuntu ..."
- Puntare gli script initrd per montare il filesystem "root" dalla condivisione NFS sul percorso assoluto di ": / tftpboot / howtogeek ..."
Nota: Ho provato (e fallito) a usare un nome DNS invece di un IP per il "", suppongo che in quella fase del processo di avvio non ci sia ancora il supporto per il DNS ... le storie di successo sono benvenute.
Possibili procedure
Ora dovresti essere in grado di avviare un client in Ubuntu da PXE (solitamente F12).
In questa fase ti suggeriamo di dedicare del tempo a esaminare alcune delle cose che puoi fare con questo strumento eccezionale:
- I 10 modi più intelligenti per usare Linux per risolvere il tuo PC Windows
- Reinstallare Ubuntu Grub Bootloader dopo che Windows lo ha eliminato
- Come formattare un'unità USB in Ubuntu utilizzando GParted - How-To Geek e Utilizzo di GParted per ridimensionare la partizione di Windows 7 o Vista
Un'ultima cosa, se crei la tua ISO di Ubuntu, usando questo generatore online, sarai in grado di trasferire tutti gli articoli sopra nella tua Ubuntu avviabile PXE.
Ubuntu è tutto, tutto ciò che una volta era e tutto ciò che sarà, Ubuntu controlla il tempo e lo spazio, Love and Death, Ubuntu può vedere nella tua mente, Ubuntu può vedere nella tua ANIMA!!