PXE सर्वर के माध्यम से स्थानीय डीवीडी स्रोतों का उपयोग करके Ubuntu कैसे स्थापित करें


PXE या Preboot eXecution Environment एक सर्वर-क्लाइंट तंत्र है जो क्लाइंट मशीन को बूट फॉर्म नेटवर्क के लिए निर्देश देता है।

इस गाइड में हम बताएंगे कि Ubuntu सर्वर को PXE सर्वर के साथ स्थानीय HTTP स्रोतों से कैसे अपाचे वेब के माध्यम से Ubuntu सर्वर आईएसओ छवि से दिखाया जाए सर्वर। इस ट्यूटोरियल में इस्तेमाल किया जाने वाला पीएक्सई सर्वर Dnsmasq सर्वर है।

  1. Ubuntu Server 16.04 or 17.04 Installation
  2. A network interface configured with Static IP address
  3. Ubuntu Server 16.04 or 17.04 ISO image

चरण 1: DNSMASQ सर्वर को स्थापित और कॉन्फ़िगर करें

1। PXE सर्वर सेटअप करने के लिए, रूट अकाउंट या रूट विशेषाधिकारों के साथ पहला कदम लॉगिन पर और Dnsmasq पैकेज स्थापित करें निम्नलिखित आदेश जारी करके उबंटू में।

# apt install dnsmasq

2। अगला, बैकअप dnsmasq मुख्य कॉन्फ़िगरेशन फ़ाइल और फिर निम्न कॉन्फ़िगरेशन के साथ फ़ाइल को संपादित करना शुरू करें।

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

निम्न कॉन्फ़िगरेशन को 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

उपरोक्त कॉन्फ़िगरेशन फ़ाइल के अनुसार निम्न पंक्तियों को बदलें।

  • interface Replace with your own machine network interface.
  • domain – Replace it with your domain name.
  • dhcp-range – Define your own network range for DHCP to allocate IPs to this network segment and how long should an IP address for a client should be granted.
  • dhcp-option=3 – Your Gateway IP.
  • dhcp-option=6 DNS Server IPs – several DNS IPs can be defined.
  • server – DNS forwarder IPs Address.
  • dhcp-option=28 – Your network broadcast address.
  • dhcp-option=42 – NTP server – use 0.0.0.0 Address is for self-reference.
  • dhcp-boot – the pxe boot file and the IP address of the PXE server (here pxelinux.0 and IP address of the same machine).
  • pxe-prompt – Uses can hit F8 key to enter PXE menu or wait 2 seconds before automatically switching to PXE menu.
  • pxe=service – Use x86PC for 32-bit/64-bit architectures and enter a menu description prompt under string quotes. Other values types can be: PC98, IA64_EFI, Alpha, Arc_x86, Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI and X86-64_EFI.
  • enable-tftp – Enables the build-in TFTP server.
  • tftp-root – the system path for net boot files.

3। इसके अलावा, आपके द्वारा dnsmasq कॉन्फ़िगरेशन फ़ाइल का संपादन पूरा करने के बाद, नीचे दिए गए आदेश जारी करके PXE netboot फ़ाइलों के लिए निर्देशिका बनाएं और परिवर्तन लागू करने के लिए dnsmasq डेमॉन को पुनः आरंभ करें। यह देखने के लिए कि क्या इसे शुरू किया गया है, dnsmasq सेवा की स्थिति की जाँच करें।

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

चरण 2: TFTP Netboot फ़ाइलें स्थापित करें

4। अगले चरण पर निम्नलिखित आदेश जारी करके 64-बिट आर्किटेक्चर के लिए उबंटू सर्वर आईएसओ छवि के नवीनतम संस्करण को पकड़ो।

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

5। उबंटू सर्वर आईएसओ डाउनलोड होने के बाद, छवि को /mnt निर्देशिका में माउंट करें और नीचे दिए गए कमांड को चलाकर माउंटेड डायरेक्टरी कंटेंट को सूचीबद्ध करें।

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

6। अगला, नीचे दिए गए आदेश को जारी करके Ubuntu मजबूत पेड़ से tftp सिस्टम पथ पर netboot फ़ाइलों की प्रतिलिपि बनाएँ। साथ ही, कॉपी की गई फ़ाइलों को देखने के लिए tftp सिस्टम पथ को सूचीबद्ध करें।

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

चरण 3: स्थानीय स्थापना स्रोत फ़ाइलें तैयार करें

7। Ubuntu सर्वर के लिए स्थानीय नेटवर्क इंस्टॉलेशन स्रोत HTTP प्रोटोकॉल के माध्यम से प्रदान किए जाएंगे। निम्नलिखित कमांड जारी करके सबसे पहले Apache वेब सर्वर को स्थापित, शुरू और सक्षम करें।

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

8। फिर, नीचे दिए गए आदेशों को निष्पादित करके अपाचे वेब सर्वर वेब रूट पथ पर घुड़सवार Ubuntu डीवीडी की सामग्री की प्रतिलिपि बनाएँ। जाँच करें कि अपाचे वेब रूट पथ की सामग्री की जाँच करें कि क्या उबंटू आईएसओ माउंटेड ट्री पूरी तरह से कॉपी किया गया है।

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

9। अगला, फ़ायरवॉल में HTTP पोर्ट खोलें और एक ब्राउज़र के माध्यम से अपने मशीन के आईपी पते पर नेविगेट करें (यदि आप परीक्षण करने के लिए http://192.168.1.14/ubuntu )। HTTP प्रोटोकॉल के माध्यम से स्रोतों तक पहुँच सकते हैं।

# ufw allow http

चरण 4: सेटअप पीएक्सई सर्वर विन्यास फाइल

10। पीएक्सई और स्थानीय स्रोतों के माध्यम से रूटफ़्स को पिवट करने में सक्षम होने के लिए, उबंटू को एक छद्म फ़ाइल के माध्यम से निर्देश देने की आवश्यकता है। निम्नलिखित सामग्री के साथ अपने वेब सर्वर दस्तावेज़ रूट पथ में निम्नलिखित स्थानीय-स्रोत.सेड फ़ाइल बनाएं।

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

निम्नलिखित लाइन को स्थानीय-स्रोतों.सेड फ़ाइल में जोड़ें।

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

यहां, सुनिश्चित करें कि आप तदनुसार आईपी पते को प्रतिस्थापित करते हैं। यह आईपी पता होना चाहिए जहां वेब संसाधन स्थित हैं। इस गाइड में वेब स्रोतों, पीएक्सई सर्वर और टीएफटीपी सर्वर को एक ही सिस्टम पर होस्ट किया जाता है। एक भीड़ भरे नेटवर्क में आप पीएक्सई नेटवर्क की गति को सुधारने के लिए अलग-अलग मशीनों पर पीएक्सई, टीएफटीपी और वेब सेवाओं को चलाना चाह सकते हैं।

11। एक पीएक्सई सर्वर pxelinux.cfg TFTP रूट निर्देशिका में स्थित कॉन्फ़िगरेशन फ़ाइलों को इस क्रम में पढ़ता और कार्यान्वित करता है: GUID फाइलें, मैक फाइलें और डिफ़ॉल्ट फ़ाइल।

निर्देशिका pxelinux.cfg पहले से ही आवश्यक PXE कॉन्फ़िगरेशन फ़ाइलों के साथ बनाई और आबाद है, क्योंकि हमने पहले उबंटू घुड़सवार आईएसओ छवि से नेटबूट फ़ाइलों की प्रतिलिपि बनाई है।

पीएक्सई कॉन्फ़िगरेशन फ़ाइल में उबंटू इंस्टॉलेशन लेबल के लिए उपरोक्त preseed स्टेटमेंट फ़ाइल को जोड़ने के लिए, नीचे दिए गए आदेश को जारी करके संपादन के लिए निम्न फ़ाइल खोलें।

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

उबंटू पीएक्सई में txt.cfg कॉन्फ़िगरेशन फ़ाइल नीचे दिए गए अंश में सचित्र के रूप में निम्न पंक्ति को प्रतिस्थापित करती है।

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

/srv/tftp/ubuntu-installer/amd64/boot-screens/txt.cfg फ़ाइल में निम्न वैश्विक सामग्री होनी चाहिए:

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। यदि आप preseed url स्टेटमेंट को Ubuntu बचाव मेनू में जोड़ना चाहते हैं, तो नीचे दी गई फ़ाइल खोलें और सुनिश्चित करें कि आप सामग्री को अपडेट कर सकते हैं जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है।

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

Followng कॉन्फ़िगरेशन को 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

आपके द्वारा अपडेट की जाने वाली महत्वपूर्ण पंक्ति url = http: //192.168.1.14/ubuntu/preseed/local-sources.seed है जो उस URL पते को निर्दिष्ट करती है जहां आपके नेटवर्क में दबाया गया फ़ाइल स्थित है।

13। अंत में, Ubuntu pxe खोलें menu.cfg फ़ाइल और नीचे दिए गए स्क्रीनशॉट में सचित्र के रूप में पीएक्सई बूट स्क्रीन का विस्तार करने के लिए पहली तीन पंक्तियों पर टिप्पणी करें।

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

इन तीन निम्नलिखित पंक्तियों पर टिप्पणी करें।

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

चरण 5: उबंटू में फ़ायरवॉल पोर्ट खोलें

14। अपने सर्वर पर स्टेटस सुनने के रूप में नीचे दिए गए उदाहरण में dnsmasq, tftp और वेब ओपन पोर्ट्स की पहचान करने के लिए रूट विशेषाधिकारों के साथ नेटस्टैट कमांड निष्पादित करें।

# netstat -tulpn

15। जब आपने सभी आवश्यक पोर्ट की पहचान कर ली है, तो ufw फ़ायरवॉल में पोर्ट खोलने के लिए नीचे दिए गए आदेश जारी करें।

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

चरण 6: PXE के माध्यम से स्थानीय स्रोतों के साथ Ubuntu स्थापित करें

16। PXE के माध्यम से Ubuntu सर्वर को स्थापित करने और स्थानीय नेटवर्क इंस्टॉलेशन स्रोतों का उपयोग करने के लिए, अपने मशीन क्लाइंट को रिबूट करें, नेटवर्क से BIOS को बूट करने का निर्देश दें और पहले PXE मेनू स्क्रीन पर सचित्र के रूप में पहला विकल्प चुनें। छवियों के नीचे।

17। स्थापना प्रक्रिया हमेशा की तरह की जानी चाहिए। जब इंस्टॉलर Ubuntu संग्रह मिरर देश सेटअप पर पहुंचता है, तो पहले विकल्प पर जाने के लिए अप कीबोर्ड तीर का उपयोग करें, जो कहता है: मैन्युअल रूप से जानकारी दर्ज करें

18। प्रेस [दर्ज करें] कुंजी इस विकल्प को अपडेट करने के लिए, दर्पण स्ट्रिंग को हटा दें और वेब सर्वर मिरर स्रोतों के आईपी पते को जोड़ने और प्रेस दर्ज करें जैसा कि चित्र में जारी है छवि के नीचे।

http://192.168.1.14

19। अगली स्क्रीन पर, नीचे दिखाए अनुसार अपना दर्पण संग्रह निर्देशिका जोड़ें और स्थापना प्रक्रिया और आमतौर पर जारी रखने के लिए कुंजी दबाएं।

/ubuntu

20। यदि आप अपने नेटवर्क स्थानीय दर्पण से कौन से पैकेज डाउनलोड किए गए हैं, इस बारे में जानकारी देखना चाहते हैं, तो मशीन वर्चुअल कंसोल को बदलने के लिए [CTRL + ALT + F2] कीज़ दबाएं। और निम्न आदेश जारी करें।

# tail –f /var/log/syslog

21। उबंटू सर्वर की स्थापना समाप्त होने के बाद, नए इंस्टॉल्ड सिस्टम में लॉगिन करें और स्थानीय नेटवर्क स्रोतों से आधिकारिक उबंटू दर्पणों में रिपॉजिटरी पैकेज को अपडेट करने के लिए रूट विशेषाधिकारों के साथ निम्न कमांड चलाएं।

इंटरनेट रिपॉजिटरी का उपयोग करके सिस्टम को अपडेट करने के लिए दर्पण को बदलना होगा।

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

आश्वासन दें कि आप अपने स्वयं के वेब स्थानीय स्रोतों के आईपी पते के अनुसार आईपी पते को प्रतिस्थापित करते हैं।

बस इतना ही! अब आप अपने Ubuntu सर्वर सिस्टम को अपडेट कर सकते हैं और सभी आवश्यक सॉफ़्टवेयर इंस्टॉल कर सकते हैं। पीएक्सई और एक स्थानीय नेटवर्क स्रोत दर्पण के माध्यम से उबंटू स्थापित करने से स्थापना की गति में सुधार हो सकता है और अपने परिसर में कम समय में बड़ी संख्या में सर्वर को तैनात करने के मामले में इंटरनेट बैंडविड्थ और लागत को बचा सकता है।