विंडोमैकसॉफ्टवेयरसेटिंग्ससुरक्षाउत्पादकतालिनक्सएंड्रॉइडप्रदर्शनकॉन्फ़िगरेशनएप्पल सभी

Linux पर PXE बूट सर्वर कैसे सेट करें

संपादित 6 महीने पहले द्वारा ExtremeHow संपादकीय टीम

नेटवर्क बूटिंगपीएक्सईसर्वर सेटअपपरिनियोजनकॉन्फ़िगरेशनसिस्टम एडमिनटीएफ़टीपीकमांड लाइनस्थापनाइमेजिंग

Linux पर PXE बूट सर्वर कैसे सेट करें

अनुवाद अपडेट किया गया 6 महीने पहले

इस गाइड में, हम सीखेंगे कि Linux मशीन पर Preboot Execution Environment (PXE) बूट सर्वर को कैसे सेटअप करें। यह प्रक्रिया कंप्यूटर को स्थानीय स्टोरेज के बजाय नेटवर्क पर उपलब्ध छवि का उपयोग करके बूट करने की अनुमति देती है। PXE उन सिस्टम एडमिनिस्ट्रेटरों के लिए उपयोगी है जिन्हें नेटवर्क पर कई मशीनों पर ऑपरेटिंग सिस्टम या सॉफ़्टवेयर को तैनात करना होता है।

1. PXE बूटिंग का परिचय

PXE, जो Preboot Execution Environment के लिए खड़ा है, एक नेटवर्क इंटरफेस के माध्यम से स्वतंत्र रूप से किसी कंप्यूटर को बूट करने की अनुमति देता है, भले ही उपलब्ध डेटा स्टोरेज डिवाइस या इंस्टॉल किए गए ऑपरेटिंग सिस्टम से। यह सर्वर के तैनाती को स्वचालित करने में एक बड़ी मदद है और इसका उपयोग Linux OS और अन्य ऑपरेटिंग सिस्टम की नेटवर्क स्थापना के लिए किया जा सकता है।

मुख्यतः, PXE के दो मुख्य घटक होते हैं:

PXE बूट सर्वर के साथ, आप केंद्रीयीकृत स्थान से कई मशीनों पर ऑपरेटिंग सिस्टम को तेजी से और कुशलतापूर्वक इंस्टॉल कर सकते हैं।

2. आवश्यकताएँ

Linux पर PXE बूट सर्वर सेट करने के लिए, आपको निम्नलिखित घटकों की आवश्यकता होगी:

3. DHCP सर्वर सेट करना

DHCP सर्वर PXE क्लाइंट्स को IP एड्रेस असाइन करता है और उन्हें बूट प्रक्रिया के लिए अगले सर्वर के बारे में सूचित करता है।

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

sudo apt-get install isc-dhcp-server

इंस्टॉलेशन के बाद, DHCP सर्वर कॉन्फ़िगरेशन फ़ाइल को संपादित करना शुरू करें, जो आमतौर पर /etc/dhcp/dhcpd.conf पर स्थित होती है। आपको इसे PXE क्लाइंट के IP एड्रेस, सबनेट मास्क, और बूटलोडर फ़ाइल विवरण निर्दिष्ट करने के लिए सेट करना होगा।

नीचे एक बुनियादी कॉन्फ़िगरेशन स्निपेट है:

subnet 192.168.1.0 netmask 255.255.255.0 {
    range 192.168.1.10 192.168.1.100;
    option routers 192.168.1.1;
    filename "pxelinux.0";
    next-server 192.168.1.5; # आपका PXE सर्वर का IP एड्रेस
    option broadcast-address 192.168.1.255;
}

एक बार कॉन्फ़िगर करने के बाद, परिवर्तनों को लागू करने के लिए DHCP सेवा को पुनरारंभ करें:

sudo systemctl restart isc-dhcp-server

सुनिश्चित करें कि DHCP सर्वर बूट के समय शुरू होता है:

sudo systemctl enable isc-dhcp-server

4. TFTP सर्वर इंस्टॉल करना

TFTP (ट्रिवियल फ़ाइल ट्रांसफर प्रोटोकॉल) सर्वर PXE क्लाइंट को बूटलोडर प्रदान करता है। इसे निम्नलिखित के माध्यम से इंस्टॉल करें:

sudo apt-get install tftpd-hpa

अपने बूट फ़ाइलों को सर्व करने के लिए सही तरीके से सेटअप करने के लिए TFTP कॉन्फ़िगरेशन फ़ाइल को संपादित करें /etc/default/tftpd-hpa पर:

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/var/lib/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure"

सुनिश्चित करें कि निर्दिष्ट निर्देशिका (डिफ़ॉल्ट रूप से /var/lib/tftpboot) बनाई गई है और सबसे अस्का की जा सकती है। TFTP सेवा को पुनरारंभ और सक्षम करें:

sudo systemctl restart tftpd-hpa
sudo systemctl enable tftpd-hpa

5. बूट लोडर कॉन्फ़िगर करना

SYSLINUX PXE बूटलोडर प्रदान करता है जिसे pxelinux कहा जाता है। पहले syslinux इंस्टॉल करें अगर यह पहले से इंस्टॉल नहीं किया गया है:

sudo apt-get install syslinux-common

आवश्यक फ़ाइलों को tftpboot निर्देशिका में कॉपी करें:

sudo cp /usr/lib/PXELINUX/pxelinux.0 /var/lib/tftpboot
sudo mkdir -p /var/lib/tftpboot/pxelinux.cfg

बूट मेनू प्रदान करने के लिए, आपको /var/lib/tftpboot/pxelinux.cfg में एक कॉन्फ़िगरेशन फ़ाइल बनानी होगी। एक फ़ाइल नामक default: बनाएँ:

DEFAULT menu.c32
PROMPT 0
TIMEOUT 50
ONTIMEOUT local
LABEL linux
    MENU LABEL ^Install Linux
    KERNEL vmlinuz
    APPEND initrd=initrd.img

यह कॉन्फ़िगरेशन एक बूट मेनू प्रदान करता है जो एक नेटवर्क बूटेबल छवि, जैसे कि Linux का चयन करने का होता है।

6. बूट कर्नेल और initrd तैयार करना

अपने Linux इंस्टॉलेशन मीडिया से कर्नेल और initrd फ़ाइलों को /var/lib/tftpboot निर्देशिका में कॉपी करें:

sudo cp /path-to-linux-iso/vmlinuz /var/lib/tftpboot/
sudo cp /path-to-linux-iso/initrd.img /var/lib/tftpboot/

सुनिश्चित करें कि अनुमतियाँ सही हैं:

sudo chmod 644 /var/lib/tftpboot/*

7. NFS या HTTP कॉन्फ़िगर करना

आपको वास्तविक इंस्टॉलेशन फ़ाइलों को या तो NFS या HTTP का उपयोग करके होस्ट करना होगा। प्रत्येक विधि आपके नेटवर्क आवश्यकताओं के आधार पर उपयुक्त होती है।

NFS के लिए:

NFS सर्वर इंस्टॉल करें:

sudo apt-get install nfs-kernel-server

आपूर्ति फ़ाइल /etc/exports संपादित करें ताकि आपके इंस्टॉलेशन फ़ाइलें जोड़ी दी जाएं:

/path-to-your-linux-files 192.168.1.0/24(ro,sync,no_root_squash)

NFS सेवाओं को पुनरारंभ करें:

sudo exportfs -a
sudo systemctl restart nfs-kernel-server

HTTP के लिए:

Apache जैसे HTTP सर्वर इंस्टॉल करें:

sudo apt-get install apache2

अपने इंस्टॉलेशन मीडिया को वेब-अनुचित निर्देशिका से जोड़ें:

sudo ln -s /path-to-your-linux-files /var/www/html/linux

Apache पुनरारंभ करें:

sudo systemctl restart apache2

सुनिश्चित करें कि आपका फ़ायरवॉल NFS/HTTP पोर्ट्स की अनुमति देता है:

sudo ufw allow 2049
sudo ufw allow 80

8. अपने PXE क्लाइंट्स को बूट करें

अंततः, अपने क्लाइंट को नेटवर्क से बूट करने के लिए कॉन्फ़िगर करें। आम तौर पर इसे BIOS या UEFI फर्मवेयर सेटिंग्स में सेट करें। एक बार जब PXE क्लाइंट बूट करता है, तो यह आपके नेटवर्क से कनेक्ट होता है और DHCP सर्वर से एक IP प्राप्त करता है। फिर यह आपके TFTP सर्वर से बूटलोडर फ़ाइल लोड करता है और NFS/HTTP से प्रदान की गई फ़ाइलों का उपयोग करके इंस्टॉलेशन प्रक्रिया शुरू करता है।

कदमों का पालन करके, आप सफलतापूर्वक एक PXE बूट सर्वर सेट कर सकते हैं जिसे आपके नेटवर्क मशीनें नेटवर्क पर ऑपरेटिंग सिस्टम लोड करने के लिए उपयोग कर सकती हैं।

यदि आपको लेख की सामग्री में कुछ गलत लगता है, आप कर सकते हैं


टिप्पणियाँ