Jinsi ya Kufunga Ubuntu kupitia Seva ya PXE Kwa Kutumia Vyanzo vya DVD vya Ndani


PXE au Preboot Execution Environment ni utaratibu wa mteja-server ambao huelekeza mashine ya mteja kuwasha mtandao.

Katika mwongozo huu tutaonyesha jinsi ya kusakinisha Ubuntu Server kupitia seva ya PXE iliyo na vyanzo vya ndani vya HTTP vinavyoakisiwa kutoka kwa picha ya ISO ya seva ya Ubuntu kupitia seva ya wavuti ya Apache. Seva ya PXE iliyotumika katika mafunzo haya ni Seva ya Dnsmasq.

  1. Seva ya Ubuntu 16.04 au Usakinishaji wa 17.04
  2. Kiolesura cha mtandao kilichosanidiwa kwa anwani ya IP isiyobadilika
  3. Seva ya Ubuntu 16.04 au picha ya ISO 17.04

Hatua ya 1: Sakinisha na Usanidi Seva ya DNSMASQ

1. Ili kusanidi seva ya PXE, kwa hatua ya kwanza ingia na akaunti ya mizizi au akaunti yenye haki za mizizi na usakinishe kifurushi cha Dnsmasq kwenye Ubuntu kwa kutoa amri ifuatayo.

# apt install dnsmasq

2. Kisha, chelezo faili kuu ya usanidi ya dnsmasq na kisha uanze kuhariri faili kwa usanidi ufuatao.

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

Ongeza usanidi ufuatao kwenye faili ya 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

Kwenye faili ya usanidi hapo juu badilisha mistari ifuatayo ipasavyo.

  • kiolesura Badilisha kwa kiolesura cha mtandao wa mashine yako.
  • kikoa - Badilisha kwa jina la kikoa chako.
  • dhcp-range - Bainisha masafa yako ya mtandao ili DHCP itenge IPs kwa sehemu hii ya mtandao na ni muda gani anwani ya IP ya mteja inapaswa kutolewa.
  • dhcp-option=3 - IP ya Lango Lako.
  • dhcp-option=6 IP za Seva ya DNS - IP kadhaa za DNS zinaweza kubainishwa.
  • seva - Anwani ya IP ya kisambazaji cha DNS.
  • dhcp-option=28 - Anwani yako ya matangazo ya mtandao.
  • dhcp-option=42 - seva ya NTP - tumia 0.0.0.0 Anwani ni kwa ajili ya kujirejelea.
  • dhcp-boot – faili ya kuwasha ya pxe na anwani ya IP ya seva ya PXE (hapa pxelinux.0 na anwani ya IP ya mashine sawa).
  • pxe-prompt - Matumizi yanaweza kubofya kitufe cha F8 ili kuingiza menyu ya PXE au kusubiri sekunde 2 kabla ya kubadili kiotomatiki hadi kwenye menyu ya PXE.
  • pxe=service - Tumia x86PC kwa usanifu wa 32-bit/64-bit na uweke kidokezo cha menyu chini ya nukuu za kamba. Aina zingine za maadili zinaweza kuwa: PC98, IA64_EFI, Alpha, Arc_x86, Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI na X86-64_EFI.
  • wezesha-tftp - Huwasha seva ya TFTP ya ndani.
  • tftp-root - njia ya mfumo ya faili za kuwasha wavu.

3. Pia, baada ya kumaliza kuhariri faili ya usanidi ya dnsmasq, tengeneza saraka ya faili za netboot za PXE kwa kutoa amri iliyo hapa chini na uanze upya daemon ya dnsmasq ili kutekeleza mabadiliko. Angalia hali ya huduma ya dnsmasq ili kuona ikiwa imeanzishwa.

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

Hatua ya 2: Sakinisha Faili za TFTP Netboot

4. Katika hatua inayofuata, chukua toleo la hivi karibuni la picha ya ISO ya seva ya Ubuntu kwa usanifu wa 64-bit kwa kutoa amri ifuatayo.

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

5. Baada ya ISO ya seva ya Ubuntu kupakuliwa, weka picha kwenye saraka ya /mnt na uorodheshe maudhui ya saraka yaliyopachikwa kwa kutekeleza amri zilizo hapa chini.

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

6. Kisha, nakili faili za netboot kutoka kwa mti uliowekwa kwenye Ubuntu hadi njia ya mfumo wa tftp kwa kutoa amri iliyo hapa chini. Pia, orodhesha njia ya mfumo wa tftp ili kuona faili zilizonakiliwa.

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

Hatua ya 3: Tayarisha Faili za Chanzo cha Usakinishaji wa Ndani

7. Vyanzo vya usakinishaji wa mtandao wa ndani kwa seva ya Ubuntu vitatolewa kupitia itifaki ya HTTP. Kwanza, sakinisha, anza na uwashe seva ya wavuti ya Apache kwa kutoa amri zifuatazo.

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

8. Kisha, nakili maudhui ya DVD ya Ubuntu iliyopachikwa kwenye njia ya mizizi ya seva ya wavuti ya Apache kwa kutekeleza amri zilizo hapa chini. Orodhesha yaliyomo kwenye njia ya mizizi ya wavuti ya Apache ili kuangalia ikiwa mti uliowekwa wa Ubuntu ISO umenakiliwa kabisa.

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

9. Kisha, fungua mlango wa HTTP kwenye ngome na uende kwenye anwani ya IP ya mashine yako kupitia kivinjari (http://192.168.1.14/ubuntu) ili kujaribu kama unaweza kufikia vyanzo kupitia itifaki ya HTTP.

# ufw allow http

Hatua ya 4: Sanidi Faili ya Usanidi ya Seva ya PXE

10. Ili kuweza kugeuza mizizi kupitia PXE na vyanzo vya ndani, Ubuntu inahitaji kuelekezwa kupitia faili iliyotanguliwa. Unda faili ifuatayo ya local-sources.seed katika njia ya msingi ya hati ya seva yako ya wavuti na maudhui yafuatayo.

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

Ongeza laini ifuatayo kwenye faili ya local-sources.seed.

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

Hapa, hakikisha unabadilisha anwani ya IP ipasavyo. Inapaswa kuwa anwani ya IP ambapo rasilimali za wavuti ziko. Katika mwongozo huu vyanzo vya wavuti, seva ya PXE na seva ya TFTP vinapangishwa kwenye mfumo huo huo. Katika mtandao uliojaa watu unaweza kutaka kuendesha PXE, TFTP na huduma za wavuti kwenye mashine tofauti ili kuboresha kasi ya mtandao wa PXE.

11. Seva ya PXE husoma na kutekeleza faili za usanidi zilizo katika pxelinux.cfg saraka ya mizizi ya TFTP kwa mpangilio huu: faili za GUID, faili za MAC na faili chaguo-msingi.

Saraka ya pxelinux.cfg tayari imeundwa na kujazwa na faili zinazohitajika za usanidi za PXE kwa sababu tumenakili faili za netboot kutoka kwa picha ya ISO iliyowekwa na Ubuntu.

Ili kuongeza faili ya taarifa iliyotangulia kwenye lebo ya usakinishaji ya Ubuntu katika faili ya usanidi ya PXE, fungua faili ifuatayo ili kuhaririwa kwa kutoa amri iliyo hapa chini.

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

Katika faili ya usanidi ya Ubuntu PXE txt.cfg badilisha laini ifuatayo kama inavyoonyeshwa kwenye dondoo hapa chini.

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

Faili ya /srv/tftp/ubuntu-installer/amd64/boot-screens/txt.cfg inapaswa kuwa na maudhui yafuatayo ya kimataifa:

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. Iwapo ungependa kuongeza taarifa ya url iliyotanguliwa kwenye menyu ya Uokoaji ya Ubuntu, fungua faili iliyo hapa chini na uhakikishe kuwa unasasisha maudhui kama inavyoonyeshwa kwenye mfano ulio hapa chini.

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

Ongeza usanidi ufuatao kwenye faili ya 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

Laini muhimu unayopaswa kusasisha ni url=http://192.168.1.14/ubuntu/preseed/local-sources.seed ambayo inabainisha anwani ya URL ambapo faili iliyobonyezwa iko kwenye mtandao wako.

13. Hatimaye, fungua faili ya Ubuntu pxe menu.cfg na utoe maoni kwenye mistari mitatu ya kwanza ili kupanua skrini ya kuwasha ya PXE kama inavyoonyeshwa kwenye picha ya skrini iliyo hapa chini.

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

Toa maoni kwa mistari hii mitatu ifuatayo.

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

Hatua ya 5: Fungua Bandari za Firewall katika Ubuntu

14. Tekeleza amri ya netstat na upendeleo wa mizizi kutambua dnsmasq, tftp na milango wazi ya wavuti katika hali ya kusikiliza kwenye seva yako kama inavyoonyeshwa katika dondoo lililo hapa chini.

# netstat -tulpn

15. Baada ya kutambua milango yote inayohitajika, toa amri zilizo hapa chini ili kufungua milango katika ngome ya ufw.

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

Hatua ya 6: Sakinisha Ubuntu na Vyanzo vya Ndani kupitia PXE

16. Kusakinisha seva ya Ubuntu kupitia PXE na kutumia vyanzo vya usakinishaji wa mtandao wa ndani, washa tena kiteja cha mashine yako, elekeza BIOS kuwasha kutoka kwa mtandao na kwenye skrini ya kwanza ya menyu ya PXE chagua chaguo la kwanza kama inavyoonyeshwa kwenye picha zilizo hapa chini.

17. Utaratibu wa ufungaji unapaswa kufanywa kama kawaida. Wakati kisakinishi kinafikia usanidi wa nchi wa kioo cha kumbukumbu ya Ubuntu, tumia kishale cha juu cha kibodi ili kuhamia chaguo la kwanza, ambalo linasema: ingiza habari mwenyewe.

18. Bonyeza kitufe cha [enter] ili kusasisha chaguo hili, futa kamba ya kioo na uongeze anwani ya IP ya vyanzo vya kioo vya seva ya wavuti na ubonyeze ingiza ili kuendelea kama inavyoonyeshwa kwenye picha iliyo hapa chini.

http://192.168.1.14

19. Kwenye skrini inayofuata, ongeza saraka yako ya kumbukumbu ya kioo kama inavyoonyeshwa hapa chini na ubonyeze kitufe cha ingiza ili kuendelea na mchakato wa usakinishaji na kwa kawaida.

/ubuntu

20. Iwapo ungependa kuona maelezo kuhusu vifurushi vinavyopakuliwa kutoka kwenye kioo cha mtandao cha ndani, bonyeza vitufe vya [CTRL+ALT+F2] ili kubadilisha kiweko cha mashine na utoe amri ifuatayo.

# tail –f /var/log/syslog

21. Baada ya usakinishaji wa seva ya Ubuntu kukamilika, ingia kwenye mfumo mpya uliosakinishwa na endesha amri ifuatayo na haki za mizizi ili kusasisha vifurushi vya hazina kutoka vyanzo vya mtandao wa ndani hadi vioo rasmi vya Ubuntu.

Vioo vinahitaji kubadilishwa ili kusasisha mfumo kwa kutumia hazina za mtandao.

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

Hakikisha unabadilisha anwani ya IP kulingana na anwani ya IP ya vyanzo vyako vya ndani vya wavuti.

Ni hayo tu! Sasa unaweza kusasisha mfumo wako wa seva ya Ubuntu na kusakinisha programu zote zinazohitajika. Kusakinisha Ubuntu kupitia PXE na kioo cha chanzo cha mtandao wa ndani kunaweza kuboresha kasi ya usakinishaji na kunaweza kuokoa kipimo data cha mtandao na gharama katika kesi ya kupeleka idadi kubwa ya seva katika kipindi kifupi cha muda kwenye eneo lako.