Kako instalirati Ubuntu putem PXE servera koristeći lokalne DVD izvore


PXE ili Preboot eXecution Environment je mehanizam server-klijent koji daje instrukcije klijentskoj mašini da se pokrene sa mreže.

U ovom vodiču ćemo pokazati kako instalirati Ubuntu server putem PXE servera sa lokalnim HTTP izvorima preslikanim sa ISO slike Ubuntu servera putem Apache weba server. PXE server koji se koristi u ovom vodiču je Dnsmasq Server.

Zahtjevi:

  1. Instalacija Ubuntu servera 16.04 ili 17.04
  2. Mrežni interfejs konfigurisan sa statičkom IP adresom
  3. Ubuntu Server 16.04 ili 17.04 ISO slika

Korak 1: Instalirajte i konfigurirajte DNSMASQ server

1. Da biste postavili PXE server, u prvom koraku prijavite se s root računom ili računom s root privilegijama i instalirajte Dnsmasq paket u Ubuntu izdavanjem sljedeće naredbe.

apt install dnsmasq

2. Zatim napravite sigurnosnu kopiju glavne konfiguracijske datoteke dnsmasq i počnite uređivati datoteku sa sljedećim konfiguracijama.

mv /etc/dnsmasq.conf /etc/dnsmasq.conf.backup
nano /etc/dnsmasq.conf

Dodajte sljedeću konfiguraciju u datoteku dnsmasq.conf.

interface=ens33,lo
bind-interfaces
domain=mypxe.local

dhcp-range=ens33,192.168.1.230,192.168.1.253,255.255.255.0,1h
dhcp-option=3,192.168.1.1
dhcp-option=6,192.168.1.1
dhcp-option=6,8.8.8.8
server=8.8.4.4
dhcp-option=28,10.0.0.255
dhcp-option=42,0.0.0.0

dhcp-boot=pxelinux.0,pxeserver,192.168.1.14

pxe-prompt="Press F8 for menu.", 2
pxe-service=x86PC, "Install Ubuntu 16.04 from network server 192.168.1.14", pxelinux
enable-tftp
tftp-root=/srv/tftp

U gornjoj konfiguracijskoj datoteci zamijenite sljedeće redove u skladu s tim.

  • interfejs Zamijenite mrežnim sučeljem vašeg vlastitog stroja.
  • domena – Zamijenite je imenom svoje domene.
  • dhcp-range – Definirajte svoj vlastiti mrežni raspon za DHCP da dodjeljuje IP adrese ovom segmentu mreže i koliko dugo treba dodijeliti IP adresu klijentu.
  • dhcp-option=3 – IP vašeg pristupnika.
  • dhcp-option=6 IP adrese DNS servera – može se definirati nekoliko DNS IP adresa.
  • server – IP adresa DNS prosljeđivača.
  • dhcp-option=28 – Vaša mrežna adresa za emitovanje.
  • dhcp-option=42 – NTP server – koristite 0.0.0.0 Adresa je za samoreferencu.
  • dhcp-boot – pxe boot fajl i IP adresa PXE servera (ovde pxelinux.0 i IP adresa iste mašine).
  • pxe-prompt – Koristi može pritisnuti taster F8 za ulazak u PXE meni ili sačekati 2 sekunde pre automatskog prebacivanja na PXE meni.
  • pxe=service – Koristite x86PC za 32-bitne/64-bitne arhitekture i unesite prompt za opis menija ispod navodnika. Druge vrste vrijednosti mogu biti: PC98, IA64_EFI, Alpha, Arc_x86, Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI i X86-64_EFI.
  • enable-tftp – Omogućava ugrađeni TFTP server.
  • tftp-root – sistemska putanja za net boot fajlove.

3. Također, nakon što završite s uređivanjem dnsmasq konfiguracijske datoteke, kreirajte direktorij za PXE netboot datoteke izdavanjem donje naredbe i ponovo pokrenite dnsmasq daemon da biste primijenili promjene. Provjerite status dnsmasq usluge da vidite da li je pokrenut.

mkdir /srv/tftp
systemctl restart dnsmasq.service
systemctl status dnsmasq.service

Korak 2: Instalirajte TFTP Netboot datoteke

4. U sljedećem koraku uzmite najnoviju verziju ISO slike Ubuntu servera za 64-bitnu arhitekturu izdavanjem sljedeće naredbe.

wget http://releases.ubuntu.com/16.04/ubuntu-16.04.3-server-amd64.iso

5. Nakon što je ISO server Ubuntu preuzet, montirajte sliku u /mnt direktorij i navedite sadržaj montiranog direktorija tako što ćete pokrenuti donje naredbe.

mount -o loop ubuntu-16.04.3-desktop-amd64.iso /mnt/
ls /mnt/

6. Zatim kopirajte netboot datoteke sa Ubuntu montiranog stabla na tftp sistemsku putanju izdavanjem naredbe ispod. Takođe, navedite tftp sistemsku putanju da vidite kopirane datoteke.

cp -rf /mnt/install/netboot/* /srv/tftp/
ls /srv/tftp/

Korak 3: Pripremite izvorne datoteke lokalne instalacije

7. Izvori za instalaciju lokalne mreže za Ubuntu server će biti obezbeđeni putem HTTP protokola. Prvo instalirajte, pokrenite i omogućite Apache web server izdavanjem sljedećih naredbi.

apt install apache2
systemctl start apache2
systemctl status apache2
systemctl enable apache2

8. Zatim kopirajte sadržaj montiranog Ubuntu DVD-a na Apache web server web root putanju izvršavanjem naredbi ispod. Navedite sadržaj korijenske staze Apachea kako biste provjerili da li je Ubuntu ISO montirano stablo u potpunosti kopirano.

cp -rf /mnt/* /var/www/html/
ls /var/www/html/

9. Zatim otvorite HTTP port u zaštitnom zidu i idite do IP adrese vašeg uređaja putem pretraživača (http://192.168.1.14/ubuntu) kako biste testirali da li ste može doći do izvora putem HTTP protokola.

ufw allow http

Korak 4: Podesite konfiguracioni fajl PXE servera

10. Da bi mogao da okreće rootfs preko PXE-a i lokalnih izvora, Ubuntu treba da dobije instrukcije putem datoteke unapred. Kreirajte sljedeću datoteku local-sources.seed u korijenskoj stazi dokumenta vašeg web servera sa sljedećim sadržajem.

nano /var/www/html/ubuntu/preseed/local-sources.seed

Dodajte sljedeći red u datoteku local-sources.seed.

d-i live-installer/net-image string http://192.168.1.14/ubuntu/install/filesystem.squashfs

Ovdje obavezno zamijenite IP adresu u skladu s tim. To bi trebala biti IP adresa na kojoj se nalaze web resursi. U ovom vodiču web izvori, PXE server i TFTP server se nalaze na istom sistemu. U prepunoj mreži možda ćete želeti da pokrenete PXE, TFTP i web usluge na odvojenim mašinama kako biste poboljšali brzinu PXE mreže.

11. PXE server čita i izvršava konfiguracijske datoteke koje se nalaze u pxelinux.cfg TFTP korijenskom direktoriju ovim redoslijedom: GUID datoteke, MAC datoteke i default fajl.

Direktorij pxelinux.cfg je već kreiran i popunjen potrebnim PXE konfiguracijskim datotekama jer smo ranije kopirali netboot datoteke iz Ubuntu montirane ISO slike.

Da biste dodali gornju datoteku unaprijed postavljenog izraza na Ubuntu instalacijsku oznaku u PXE konfiguracijskoj datoteci, otvorite sljedeću datoteku za uređivanje izdavanjem donje naredbe.

nano /srv/tftp/ubuntu-installer/amd64/boot-screens/txt.cfg

U Ubuntu PXE konfiguracijskoj datoteci txt.cfg zamijenite sljedeći red kao što je ilustrovano u donjem izvodu.

append auto=true url=http://192.168.1.14/ubuntu/preseed/local-sources.seed vga=788 initrd=ubuntu-installer/amd64/initrd.gz --- quiet

Datoteka /srv/tftp/ubuntu-installer/amd64/boot-screens/txt.cfg bi trebala imati sljedeći globalni sadržaj:

default install
label install
	menu label ^Install Ubuntu 16.04 with Local Sources
	menu default
	kernel ubuntu-installer/amd64/linux
	append auto=true url=http://192.168.1.14/ubuntu/preseed/local-sources.seed vga=788 initrd=ubuntu-installer/amd64/initrd.gz --- quiet 
label cli
	menu label ^Command-line install
	kernel ubuntu-installer/amd64/linux
	append tasks=standard pkgsel/language-pack-patterns= pkgsel/install-language-support=false vga=788 initrd=ubuntu-installer/amd64/initrd.gz --- quiet

12. U slučaju da želite da dodate unaprijed postavljenu url naredbu u Ubuntu Rescue meni, otvorite datoteku ispod i provjerite jeste li ažurirali sadržaj kao što je prikazano u primjeru ispod.

nano /srv/tftp/ubuntu-installer/amd64/boot-screens/rqtxt.cfg

Dodajte sljedeću konfiguraciju u datoteku rqtxt.cfg.

label rescue
	menu label ^Rescue mode
	kernel ubuntu-installer/amd64/linux
	append auto=true url=http://192.168.1.14/ubuntu/preseed/local-sources.seed vga=788 initrd=ubuntu-installer/amd64/initrd.gz rescue/enable=true --- quiet

Važna linija koju biste trebali ažurirati je url=http://192.168.1.14/ubuntu/preseed/local-sources.seed koja specificira URL adresu na kojoj se nalazi pritisnuta datoteka u vašoj mreži.

13. Konačno, otvorite Ubuntu pxe menu.cfg datoteku i komentarišite prva tri reda kako biste proširili ekran za pokretanje PXE kao što je ilustrovano na snimku ekrana ispod.

nano /srv/tftp/ubuntu-installer/amd64/boot-screens/menu.cfg

Komentirajte ova tri sljedeća reda.

#menu hshift 13
#menu width 49
#menu margin 8

Korak 5: Otvorite portove zaštitnog zida u Ubuntu-u

14. Izvršite netstat komandu sa root privilegijama da identifikujete dnsmasq, tftp i web otvorene portove u stanju slušanja na vašem serveru kao što je ilustrovano u donjem izvodu.

netstat -tulpn

15. Nakon što ste identificirali sve potrebne portove, izdajte donje naredbe da otvorite portove u ufw firewall-u.

ufw allow 53/tcp
ufw allow 53/udp
ufw allow 67/udp
ufw allow 69/udp
ufw allow 4011/udp

Korak 6: Instalirajte Ubuntu sa lokalnim izvorima putem PXE

16. Da biste instalirali Ubuntu server putem PXE-a i koristili izvore instalacije lokalne mreže, ponovo pokrenite klijenta vašeg računara, instrukciju BIOS-u da se pokrene sa mreže i na prvom ekranu PXE menija odaberite prvu opciju kao što je prikazano na ispod slika.

17. Instalacijski postupak treba izvesti kao i obično. Kada instalater dođe do podešavanja Ubuntu arhivskog ogledala, koristite strelicu na tastaturi nagore da pređete na prvu opciju, koja kaže: ručno unesite informacije.

18. Pritisnite taster [enter] da ažurirate ovu opciju, izbrišite niz ogledala i dodajte IP adresu izvora ogledala web servera i pritisnite enter da nastavite kao što je prikazano u ispod slike.

http://192.168.1.14

19. Na sljedećem ekranu, dodajte svoj direktorij arhive ogledala kao što je prikazano ispod i pritisnite tipku enter da nastavite s procesom instalacije i obično.

/ubuntu

20. U slučaju da želite da vidite informacije o tome koji su paketi preuzeti sa vašeg lokalnog ogledala mreže, pritisnite tastere [CTRL+ALT+F2] da biste promenili virtuelnu konzolu mašine i izdajte sljedeću naredbu.

tail –f /var/log/syslog

21. Nakon što se instalacija Ubuntu servera završi, prijavite se na novoinstalirani sistem i pokrenite sljedeću naredbu sa root privilegijama kako biste ažurirali pakete spremišta iz lokalnih mrežnih izvora na zvanična Ubuntu ogledala.

Ogledala moraju biti promijenjena da bi se sistem ažurirao koristeći internet spremišta.

sudo sed –i.bak ‘s/192.168.1.14/archive.ubuntu.com/g’ /etc/apt/sources.list

Osigurajte da zamijenite IP adresu u skladu s IP adresom vaših vlastitih web lokalnih izvora.

To je sve! Sada možete ažurirati svoj Ubuntu serverski sistem i instalirati sav potreban softver. Instaliranje Ubuntua putem PXE-a i lokalnog mrežnog izvornog ogledala može poboljšati brzinu instalacije i može uštedjeti internetski propusni opseg i troškove u slučaju postavljanja velikog broja servera u kratkom vremenskom periodu u vašim prostorijama.