Immagine di foto76 su FreeDigitalPhotos.net
PXE , sta per Ambiente di esecuzione pre-avvio, ti aiuterà a installare un sistema in rete senza avere un DVD / CD-ROM. In questo metodo, il client si avvierà utilizzando solo la sua scheda di interfaccia di rete, sarà molto utile agli amministratori di sistema installare OS sul sistema in cui non sono presenti dispositivi DVD/CD.
L'ambiente PXE necessita del server DHCP, che fornisce al client un indirizzo IP, altre informazioni di rete come il server dei nomi, l'indirizzo IP o il nome host del server tftp (che fornisce i file necessari per avviare il programma di installazione) e la posizione di i file sul server tftp.
È necessario eseguire i seguenti passaggi per preparare un'installazione PXE:
- Configura server HTTP
- Configura i file sul server tftp
- Configura DHCP.
- Avvia tutti i servizi
- Configurazioni firewall
- Avvia il client e avvia l'installazione.
1. Installa il server PXE:
Installa i seguenti pacchetti per la configurazione dell'ambiente PXE,
# yum -y install httpd xinetd syslinux tftp-server
2. Configura server PXE:
Configura server HTTP:
Qui useremo il server Apache come server di rete per esportare l'intero albero di installazione per la versione
Ora, monta l'immagine CentOS 7 su /mnt . Ho già un'immagine ISO CentOS 7 su /tmp directory.
# mount -o loop /tmp/CentOS-7-x86_64-DVD-1503-01.iso /mnt
Quindi, crea una directory in cui archiviare i pacchetti CentOS.
# mkdir /var/www/centos7
Copia tutti i contenuti dei file da /mnt a /var/www/centos7 .
# cp -a /mnt/* /var/www/centos7/
Imposta le autorizzazioni appropriate per la directory sopra.
# chmod -R 755 /var/www/centos7/
Crea un file di configurazione di Apache per il server PXE in /etc/httpd/conf.d/ directory:
# vi /etc/httpd/conf.d/pxe.conf
Aggiungi le seguenti righe:
Alias /centos7 /var/www/centos7/ <Directory /var/www/centos7/> Options Indexes FollowSymLinks Order Deny,Allow Allow from all </Directory>
Salva e chiudi il file.
Configura i file sul server tftp:
Il passaggio successivo consiste nel copiare i file necessari per avviare l'installazione sul server tftp in modo che possano essere trovati quando il client li richiede.
Copia tutti i file dei caricatori di avvio forniti dai pacchetti syslinux in /var/lib/tftpboot usando il seguente comando.
# cp -a /usr/share/syslinux/* /var/lib/tftpboot/
Crea la directory centos7 e copia il kernel avviabile di CentOS 7 e le immagini initrd dalla posizione montata sul DVD alla struttura delle cartelle centos7.
# mkdir /var/lib/tftpboot/centos7 # cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboot/centos7 # cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot/centos7
Server PXE normalmente legge la sua configurazione da un File predefinito ospitato in una cartella chiamata pxelinux.cfg , crea una directory di configurazione per il server PXE:
# mkdir /var/lib/tftpboot/pxelinux.cfg
Ora, crea il file di configurazione del server PXE in pxelinux.cfg :
# vi /var/lib/tftpboot/pxelinux.cfg/default
Aggiungi le seguenti righe:
default menu.c32 prompt 0 timeout 300 ONTIMEOUT 1 menu title ########## CentOS 7 PXE Boot Menu ########## label 1 menu label ^1) Install CentOS 7 menu default kernel centos7/vmlinuz append initrd=centos7/initrd.img method=http://192.168.12.10/centos7 devfs=nomount label 2 menu label ^2) Boot from local drive localboot 0
Modifica il file /etc/xinetd.d/tftp,
vi /etc/xinetd.d/tftp
Abilita server TFTP. Per farlo, cambia "disable=yes" a "no" .
service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /var/lib/tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 }
Configura server DHCP
Ora dobbiamo configurare il server DHCP per funzionare con il server PXE.
Modifica il file /etc/dhcp/dhcpd.conf ,
# vi /etc/dhcp/dhcpd.conf
Aggiungi la linea verde alla fine della tua sottorete. Puoi anche copiare e incollare il contenuto sottostante in dhcpd.conf e modificarlo secondo il tuo ambiente di rete. Un tutorial più dettagliato può essere trovato qui.
subnet 192.168.12.0 netmask 255.255.255.0 { range 192.168.12.100 192.168.12.200; option domain-name-servers 8.8.8.8, 8.8.4.4; option domain-name "itzgeek.local"; option routers 192.168.12.2; option broadcast-address 192.168.12.255; default-lease-time 600; max-lease-time 7200; filename "pxelinux.0"; }
Avvia tutti i servizi:
Una volta completata la configurazione, riavvia tutti i servizi.
# systemctl restart xinetd # systemctl restart httpd # systemctl restart dhcpd
Abilita l'avvio automatico di tutti i servizi all'avvio del sistema.
# systemctl enable xinetd # systemctl enable httpd # systemctl enable dhcpd
Configurazioni firewall:
Dobbiamo consentire il servizio apache, dhcp e tftp nel firewall. Per farlo, esegui i seguenti comandi.
# firewall-cmd --permanent --add-service=http ## Port 80 # firewall-cmd --permanent --add-service=dhcp ## Port 67 # firewall-cmd --permanent --add-port=69/udp ## Port for TFTP # firewall-cmd --permanent --add-port=69/tcp ## Port for TFTP # firewall-cmd --reload ## Apply rules
3. Avvia il client e avvia l'installazione:
Il client può essere qualsiasi sistema con l'opzione di avvio di rete abilitata (avvio PXE). Puoi abilitare questa opzione nelle impostazioni del BIOS premendo un tasto specificato durante le operazioni POST del BIOS come specificato nel manuale della scheda madre.
La macchina inizierà ad avviarsi dall'interfaccia di rete.
Ora, il sistema proverà a ottenere automaticamente un indirizzo IP dal server DHCP.
Una volta che il sistema ottiene l'indirizzo IP, il sistema ti porterà al menu PXE.
Nota:secondo la nostra configurazione, Installa CentOS 7 è l'impostazione predefinita e l'installazione verrà avviata automaticamente se non viene premuto alcun tasto entro 30 secondi.
Ora puoi procedere con l'installazione di CentOS 7.
Questo è tutto.
Riferimento:
CentOS Wiki