जेंटू एक शक्तिशाली और विस्तार योग्य लिनक्स वितरण है। यह उन गिने-चुने ऑपरेटिंग सिस्टम में से एक है जो लिनक्स में मूल स्रोत-आधारित पैकेज प्रबंधन पर कायम रहा है। इसके अलावा, इसका पैकेज मैनेजर, पोर्टेज, एक शक्तिशाली उपयोगिता है जो आपको अपने वितरण के हर पहलू को फाइन-ट्यून और अनुकूलित करने की अनुमति देता है।
स्रोत-आधारित वितरण का उपयोग क्यों करें?
आजकल, अधिकांश लिनक्स वितरण पूर्व-संकलित पैकेज प्रदान करते हैं। इसका मतलब है कि वितरण डेवलपर की मशीन पर पैकेज बनाता है।
हालांकि आज की हाई-बैंडविड्थ दुनिया में पैकेज संकलित करना कोई समस्या नहीं है, लेकिन उस वितरण मॉडल में कई समस्याओं पर विचार किया जाना चाहिए:
- संकलित बाइनरी का मतलब है कि आपके पास इस पर नियंत्रण नहीं है कि प्रोग्राम कैसे संकलित किया जा रहा है और प्रोग्राम में कौन सी सुविधाएं शामिल हैं।
- बाइनरी पर भरोसा करने का मतलब है कि आप वितरण के डेवलपर्स पर पूरा भरोसा करते हैं कि वे अपने रिपॉजिटरी में दुर्भावनापूर्ण कोड शामिल नहीं करेंगे।
जेंटू का उपयोग क्यों करें?
कारण सरल है: जेंटू एक शक्तिशाली लिनक्स वितरण है। यह आपको पूरे सिस्टम को बदलने और संशोधित करने के लिए लगभग अप्रतिबंधित पहुंच और स्वतंत्रता देता है।
पोर्टेज, जेंटू का दिल
पोर्टेज मुख्य घटक है जो जेंटू लिनक्स सिस्टम का प्रबंधन करता है। यह थर्ड-पार्टी पैकेज को इंस्टॉल, प्रबंधित और अनुकूलित करता है। इसके अलावा, पोर्टेज बुनियादी सिस्टम कॉन्फ़िगरेशन का भी प्रबंधन करता है।
पोर्टेज जो मुख्य अंतर प्रदान करता है वह यह है कि यह आपको अपने पैकेज को उसके स्रोत से इंस्टॉल करने की अनुमति देता है। हालांकि यह अन्य वितरणों में संभव है, पोर्टेज इसे एक कदम आगे ले जाता है और इसे पैकेज प्राप्त करने का डिफ़ॉल्ट साधन बनाता है।
जेंटू प्राप्त करना
आप जेंटू की वेबसाइट से इसकी एक प्रति प्राप्त कर सकते हैं। वहां, आप कई अलग-अलग प्लेटफॉर्म से इंस्टॉलर चुन सकते हैं। जेंटू amd64 और arm64 दोनों का समर्थन करता है।
डाउनलोड की गई ISO फ़ाइल के साथ, आप balenaEtcher जैसे USB राइटिंग प्रोग्राम का उपयोग करके अपना बूट करने योग्य फ्लैश ड्राइव बना सकते हैं।
जेंटू लिनक्स इंस्टॉल करना
इससे पहले कि हम जेंटू इंस्टॉल करना जारी रखें, यह ध्यान रखना महत्वपूर्ण है कि यह प्रक्रिया पूरी तरह से मैन्युअल है, जिसका अर्थ है कि रास्ते में बहुत सारे कमांड निष्पादित किए जाएंगे। इसलिए, यह अनुशंसा की जाती है कि आप न केवल इस गाइड से परामर्श लें बल्कि इंस्टॉलेशन के दौरान आगे के मार्गदर्शन के लिए जेंटू की आधिकारिक हैंडबुक भी देखें।
अपने फ्लैश ड्राइव को अपने कंप्यूटर में लगाएं और इसे बूट करें। यह आपको जेंटू इंस्टॉलर स्क्रीन पर बूट करेगा।
नेटवर्क कनेक्शन सेट करना
जेंटू इंस्टॉल करने के लिए, आपको इंटरनेट से कनेक्ट होना होगा। इंस्टॉलर वायर्ड कनेक्शन पर स्वचालित रूप से कनेक्ट हो जाएगा। वहां से, यह जांचने के लिए निम्न कमांड चलाएं कि क्या आप ऑनलाइन हैं:
ping -c 5 maketecheasier.com
यदि आपको वायरलेस नेटवर्क से कनेक्ट करने की आवश्यकता है, तो आपको wpa_supplicant सेट करना होगा, जो आपको आपके वायरलेस एक्सेस पॉइंट से कनेक्ट करेगा।
wpa_passphrase 'Your_SSID_Here' 'Your_Password_Here' >> /etc/wpa_supplicant/wpa_supplicant.conf
एक बार हो जाने पर, आपको अपने नेटवर्क कनेक्शन को शुरू करने के लिए dhcpcd डेमॉन को रीलोड करना होगा:
rc-service dhcpcd restart
हार्ड डिस्क को पार्टीशन करना
अब, आपको उस डिस्क को फॉर्मेट करना होगा जिस पर आप जेंटू इंस्टॉल करना चाहते हैं। fdisk कमांड का उपयोग करके इसे आसानी से करें।
Fdisk एक सरल कमांड-लाइन डिस्क पार्टीशनिंग टूल है। यह आपको अपनी हार्ड डिस्क को पार्टीशन करने और अपने सिस्टम के लिए स्टोरेज की मात्रा निर्धारित करने की अनुमति देता है। इसे टाइप करके इनिशियलाइज़ करें:
fdisk /your/disklabel
यदि आप अपने मौजूदा डिस्क पार्टीशन स्ट्रक्चर के बारे में निश्चित नहीं हैं, तो -l फ्लैग से जांचें:
fdisk -l
हार्ड डिस्क को पार्टीशन करने के लिए fdisk का उपयोग करना
एक बार fdisk के अंदर, आपको पहले किसी भी मौजूदा पार्टीशन के लिए डिस्क को वाइप करना होगा। प्रॉम्प्ट में G दबाकर ऐसा करें।
उसके बाद, आपको डिस्क में नए पार्टीशन बनाने होंगे:
- N दबाएं ताकि fdisk को पता चले कि आप एक नया पार्टीशन बनाना चाहते हैं। Fdisk आपसे पार्टीशन नंबर पूछेगा जिसका आप उपयोग करना चाहते हैं। डिफ़ॉल्ट का उपयोग करने के लिए Enter दबाएं।
- Fdisk आपसे पार्टीशन के पहले और अंतिम सेक्टर पूछेगा। पहले सेक्टर के लिए Enter दबाएं और अंतिम सेक्टर के लिए आकार निर्दिष्ट करें। इसका सामान्य सिंटैक्स अपेक्षाकृत सरल है:
+size(G|M|K)
+साइन fdisk को बताता है कि आप चाहते हैं कि आकार आपके द्वारा चुने गए पहले सेक्टर के सापेक्ष हो।- आकार एक संख्या है जिसे आप स्वयं निर्दिष्ट करते हैं।
- अंतिम विकल्प fdisk को बताता है कि वह आकार GB, MB या KB में है।
UEFI जेंटू सिस्टम के लिए पार्टीशनिंग
इसके साथ, अपनी डिस्क को पार्टीशन करना जारी रखें। यह प्रक्रिया काफी हद तक इस बात पर निर्भर करेगी कि आप BIOS या UEFI सिस्टम का उपयोग कर रहे हैं।
यदि आप अपेक्षाकृत हाल के हार्डवेयर वाले आधुनिक कंप्यूटर का उपयोग कर रहे हैं, तो संभावना है कि आप UEFI सिस्टम का उपयोग कर रहे हैं।
UEFI-संगत डिस्क बनाने के लिए, आपको पहले एक "EFI सिस्टम" पार्टीशन बनाना होगा। यह आपकी डिस्क में पहला पार्टीशन होना चाहिए और आकार में लगभग 100-256MB होना चाहिए।
उसके बाद, उस पार्टीशन का प्रकार "EFI सिस्टम" पर सेट करें T दबाकर। यह fdisk को बताएगा कि आप जिस पार्टीशन को अभी बनाया है उसका प्रकार बदलना चाहते हैं। वहां से, यह पूछेगा कि आप पार्टीशन को किस प्रकार पर सेट करना चाहते हैं। 1 टाइप करें।
डिस्क के बाकी हिस्से को पार्टीशन करना
अगला पार्टीशन जो आपको बनाना है वह "/boot" पार्टीशन है जहां लिनक्स कर्नेल और बूटलोडर सेव होंगे।
आदर्श रूप से, यह पार्टीशन लगभग 500M-1G होना चाहिए। मेरे मामले में, मैं इस पार्टीशन को 1G पर सेट कर रहा हूं।
वहां से, SWAP पार्टीशन बनाएं: आपकी हार्ड डिस्क का वह हिस्सा जिसे आपकी RAM डायनामिक रूप से अपनी मेमोरी को स्वैप करने के लिए एक्सेस कर सकती है जब भी यह स्पेस से बाहर निकल रही हो।
SWAP आकार का सामान्य नियम आपके सिस्टम में मौजूद मेमोरी की मात्रा का 1/2 से 2 गुना है। मेरे लैपटॉप में वर्तमान में 8GB मेमोरी इंस्टॉल है, इसलिए मैं अपना SWAP आकार 16GB पर सेट करता हूं।
इसके अलावा, इस पार्टीशन को SWAP के रूप में ठीक से सेट करने के लिए, इसका प्रकार "19" पर सेट करें।
अंत में, रूट पार्टीशन बनाएं जहां बाकी सिस्टम इंस्टॉल होगा। शेष डिस्क आवंटित करने के लिए, नया पार्टीशन बनाते समय अंतिम सेक्टर विकल्प में बस Enter दबाएं।
उसके बाद, आपके द्वारा अभी बनाई गई पार्टीशन टेबल की जांच के लिए P दबाएं।
अपने परिवर्तनों को डिस्क पर सेव करने के लिए W दबाएं।
जेंटू में डिस्क को फॉर्मेट करना
अगला चरण आपकी हार्ड डिस्क को फॉर्मेट करना है। पहले, निम्न कमांड का उपयोग करके EFI सिस्टम पार्टीशन को FAT के रूप में फॉर्मेट करें:
mkfs.vfat /dev/sda1
यह FAT फाइलसिस्टम बनाएगा जिसे EFI सिस्टम को बूट करने की आवश्यकता होती है। वहां से, सिंपल ext2 फाइलसिस्टम का उपयोग करके "/boot" पार्टीशन के लिए फाइलसिस्टम बनाएं।
mkfs.ext2 /dev/sda2
अगला, SWAP पार्टीशन बनाएं और सक्षम करें ताकि जेंटू को पता चले कि इस पार्टीशन का उपयोग लाइव मेमोरी के साथ स्वैपिंग के लिए किया जा सकता है। ऐसा करने के लिए, निम्न चलाएं:
mkswap /dev/sda3 swapon /dev/sda3
अंत में, निम्न कमांड चलाकर रूट पार्टीशन के लिए ext4 फाइलसिस्टम बनाएं:
mkfs.ext4 /dev/sda4
जेंटू स्टेज 3 टारबॉल डाउनलोड करना
वहां से, आपके द्वारा अभी बनाए गए रूट पार्टीशन को "/mnt/gentoo" डायरेक्टरी पर माउंट करें क्योंकि इंस्टॉलेशन अब आपकी मशीन की हार्ड डिस्क पर किया जाएगा।
mount /dev/sda4 /mnt/gentoo && cd /mnt/gentoo
एक बार हो जाने पर, gentoo.org वेबसाइट से wget का उपयोग करके स्टेज 3 टारबॉल डाउनलोड करें:
wget https://bouncer.gentoo.org/fetch/root/all/releases/amd64/autobuilds/20220227T170528Z/stage3-amd64-desktop-openrc-20220227T170528Z.tar.xz
इस टारबॉल में वे सभी प्रोग्राम हैं जिनकी आपको न्यूनतम लिनक्स इंस्टॉलेशन के लिए आवश्यकता है। इसे tar का उपयोग करके अनपैक करें:
tar xpvf ./stage3-amd64-desktop-openrc-20220227T170528Z.tar.xz --xattrs-include='*.*' --numeric-owner
डाउनलोड मिरर चुनना और DNS जानकारी कॉपी करना
mirrorselect कमांड चलाकर इंगित करें कि आप इस सिस्टम के लिए अपने पैकेज कहां से डाउनलोड करना चाहते हैं:
mirrorselect -i -o >> /mnt/gentoo/etc/portage/make.conf
यह एक TUI प्रोग्राम खोलेगा जहां आप अपने निकटतम सर्वर स्थान का चयन कर सकते हैं।
वहां से, जेंटू के लिए रिपॉजिटरी फ़ाइल को अपने "/etc/portage" फ़ोल्डर में कॉपी करें, जो एक कॉन्फ़िगरेशन फ़ाइल है जिसमें वे लिंक हैं जिनसे जेंटू अपने पैकेज डाउनलोड करेगा:
mkdir -p /mnt/gentoo/etc/portage/repos.conf && \ cp /mnt/gentoo/usr/share/portage/config/repos.conf \ /mnt/gentoo/etc/portage/repos.conf/gentoo.conf
अंत में, अपने USB इंस्टॉलर से रिज़ॉल्वर जानकारी को "/mnt/gentoo" डायरेक्टरी में कॉपी करें ताकि यह सुनिश्चित हो सके कि एक बार जब आप रूट डायरेक्टरी को हार्ड डिस्क पर बदलते हैं, तो नेटवर्क अभी भी काम करेगा। ऐसा करने के लिए, यह कमांड चलाएं:
cp --dereference /etc/resolv.conf /mnt/gentoo/etc/
डिवाइस फ़ाइलों को माउंट करना और Chroot करना
USB इंस्टॉलर से हार्ड डिस्क पर विशेष डायरेक्टरी को माउंट करना शुरू करें ताकि यह सुनिश्चित हो सके कि एक बार जब आप chroot चलाते हैं, तो आप जिन पेरिफेरल्स का उपयोग कर रहे हैं वे अभी भी काम करते हैं।
mount --types proc /proc /mnt/gentoo/proc mount --rbind /sys /mnt/gentoo/sys mount --make-rslave /mnt/gentoo/sys mount --rbind /dev /mnt/gentoo/dev mount --make-rslave /mnt/gentoo/dev mount --bind /run /mnt/gentoo/run mount --make-slave /mnt/gentoo/run
USB इंस्टॉलर में करने के लिए आखिरी चीज chroot कमांड चलाना है ताकि बेस रूट डायरेक्टरी को USB से आपकी हार्ड डिस्क पर ले जाया जा सके:
chroot /mnt/gentoo /bin/bash
source /etc/profile
export PS1="[chroot] ${PS1}"
/boot पार्टीशन माउंट करना और जेंटू अपडेट करना
अपने जेंटू मशीन पर "/boot" पार्टीशन को माउंट करें ताकि यह सुनिश्चित हो सके कि जब आप बाद में कर्नेल इंस्टॉल करते हैं तो यह सही जगह पर सेव होगा:
mount /dev/sda2 /boot mkdir /boot/efi mount /dev/sda1 /boot/efi
एक बार यह हो जाने पर, अपने जेंटू रिपॉजिटरी को अपडेट करें ताकि जब आप पहला सिस्टम अपडेट करें तो आपको नवीनतम पैकेज मिलें:
emerge-webrsync
यहां से, emerge-webrsync आपके द्वारा चुने गए मिरर से कनेक्ट होगा और जेंटू के लिए उपलब्ध नवीनतम EBUILDS डाउनलोड करेगा।
आपका पहला जेंटू सिस्टम अपडेट
अब आप इस emerge कमांड को चलाकर अपने सिस्टम को नवीनतम EBUILDS से मेल खाने के लिए अपडेट कर सकते हैं:
emerge --ask --verbose --update --deep --newuse @world
यह emerge को आपके स्टेज 3 पैकेज की जांच करने के लिए कहेगा जो वर्तमान में जेंटू रिपॉजिटरी पर हैं। Emerge उन पैकेज को अपडेट करेगा जिन्हें वह अधिक हाल के संस्करण वाला पाता है।
जैसे, इस प्रक्रिया में कुछ समय लगेगा, क्योंकि Emerge को प्रत्येक पैकेज को लाने और संकलित करने की आवश्यकता होगी जिसे अपडेट करने की आवश्यकता है।
टाइम जोन और लोकेल
अब, आपको क्षेत्र-विशिष्ट जानकारी सेट करने की आवश्यकता है, जिसमें आपका टाइम जोन और सिस्टम लोकेल दोनों शामिल हैं। टाइम जोन को अपने क्षेत्र में सेट करने के लिए, "/usr/share/zoneinfo" फ़ोल्डर में सूचीबद्ध अपने निकटतम स्थान को खोजें।
वहां से, इसे अपनी "/etc/timezone" फ़ाइल में लिखें। उदाहरण के लिए, मेरे निकटतम स्थान "Asia/Manila" है:
echo "Asia/Manila" > /etc/timezone emerge --config sys-libs/timezone-data
अब जेंटू के लिए अपना लोकेल सेट करें जो कंप्यूटर के लिए डिफ़ॉल्ट सिस्टम भाषा निर्धारित करेगा। ऐसा करने के लिए, "/etc/locale.gen" फ़ाइल संपादित करें:
nano -w /etc/locale.gen
वहां से, वह लोकेल जोड़ें जिसे आप जेंटू को उपयोग करना चाहते हैं। उपलब्ध लोकेल की पूरी सूची देखने के लिए "/usr/share/i18n/SUPPORTED" फ़ाइल देखें। मेरे मामले में, मैं चाहता हूं कि सिस्टम यू.एस. अंग्रेजी लोकेल का उपयोग करे:
en_US ISO-8859-1 en_US.UTF-8 UTF-8
फिर अपने सिस्टम लोकेल को रीक्रिएट करने के लिए locale-gen चलाएं।
लिनक्स कर्नेल इंस्टॉल करना
जेंटू में लिनक्स कर्नेल इंस्टॉल करने के कई तरीके हैं। या तो मैन्युअल रूप से इसकी सभी विशेषताओं को कॉन्फ़िगर करें या जेंटू डेवलपर्स से एक पूर्व-निर्मित कर्नेल का उपयोग करें। हमारे उद्देश्यों के लिए, हम बाद वाले का विकल्प चुन रहे हैं।
प्री-बिल्ट लिनक्स कर्नेल इंस्टॉल करने के लिए, दो चीजें इंस्टॉल करें - installkernel पैकेज और कर्नेल itself - निम्न कमांड चलाकर:
emerge --ask sys-kernel/installkernel-gentoo sys-kernel/gentoo-kernel-bin
fstab कॉन्फ़िगर करना
कर्नेल इंस्टॉल होने के साथ, fstab फ़ाइल को पॉप्युलेट करें: वह फ़ाइल जो जेंटू को स्टार्टअप पर बताती है कि किन पार्टीशन को माउंट करना है और कहां। इसे संपादित करने के लिए यह कमांड चलाएं:
nano -w /etc/fstab
fdisk में आपके द्वारा बनाए गए सभी पार्टीशन को इंगित करें। उदाहरण के लिए, UEFI सिस्टम में, आपकी fstab फ़ाइल कुछ इस तरह दिख सकती है:
[...] /dev/sda1 /boot/efi vfat defaults 0 2 /dev/sda2 /boot ext2 defaults,noatime 0 2 /dev/sda3 none swap sw 0 0 /dev/sda4 / ext4 noatime 0 1
रूट पासवर्ड सेट करना
वहां से, आप सिस्टम के लिए रूट पासवर्ड सेट करना चाहेंगे, क्योंकि डिफ़ॉल्ट रूप से, स्टेज 3 टारबॉल रूट अकाउंट के लिए एक रैंडम पासवर्ड सेट करता है।
यदि आप यहां पासवर्ड नहीं जोड़ते हैं, तो रीबूट करने के बाद उस तक पहुंचना असंभव होगा। रूट पासवर्ड बदलने के लिए, निम्न चलाएं:
passwd
अतिरिक्त टूल इंस्टॉल करना
एक बार हो जाने पर, अतिरिक्त थर्ड-पार्टी टूल इंस्टॉल करें जिनकी आपको अपने जेंटू सिस्टम के लिए आवश्यकता हो सकती है। उदाहरण के लिए, यदि आप ईथरनेट और वायरलेस दोनों कनेक्टिविटी चाहते हैं, तो निम्न इंस्टॉल करें:
emerge --ask net-misc/dhcpcd net-wireless/iw net-wireless/wpa_supplicant rc-update add dhcpcd default
इसके अलावा, यदि आप अपने सिस्टम के व्यवहार की निगरानी करना चाहते हैं तो एक सिस्टम लॉगर इंस्टॉल करें:
emerge --ask app-admin/sysklogd rc-update add sysklogd default
आप सबसे आम फाइलसिस्टम के लिए फाइलसिस्टम उपयोगिताओं को भी इंस्टॉल कर सकते हैं जिनसे आप इंटरैक्ट कर सकते हैं:
emerge --ask sys-fs/dosfstools sys-fs/ntfs3g
बूटलोडर इंस्टॉल करना
वहां से, जेंटू इंस्टॉल करने का अंतिम चरण बूटलोडर है, एक सरल प्रोग्राम जो BIOS और लिनक्स कर्नेल के बीच बैठता है। इसका कार्य BIOS को कर्नेल लोड करने का निर्देश देना है, जो फिर ऑपरेटिंग सिस्टम को बूटस्ट्रैप करता है।
GRUB बूटलोडर इंस्टॉल करने के लिए, निम्न कमांड चलाएं:
emerge --ask sys-boot/grub
एक बार इंस्टॉल हो जाने पर, GRUB को ठीक से इनिशियलाइज़ और कॉन्फ़िगर करने के लिए निम्न कमांड चलाएं:
grub-install --target=x86_64-efi --efi-directory=/boot/efi grub-mkconfig -o /boot/grub/grub.cfg
उसके बाद, बस इतना करना बाकी है कि USB इंस्टॉलर को अनमाउंट करें और निम्न चलाकर सिस्टम को रीबूट करें:
exit
cd
umount -l /mnt/gentoo/dev{/shm,/pts,}
umount -R /mnt/gentoo
एक बार सिस्टम रीबूट हो जाने पर, आप अपने नए इंस्टॉल किए गए जेंटू लिनक्स सिस्टम द्वारा स्वागत किए जाएंगे। वहां से, अपने स्वयं के कस्टम लिनक्स वितरण को बनाने के लिए बुनियादी सॉफ़्टवेयर और पैकेज इंस्टॉल करना शुरू करें।
हालांकि, यदि आप अभी भी निश्चित नहीं हैं कि कौन सा डेस्कटॉप वातावरण इंस्टॉल करना है, तो लिनक्स पर सर्वश्रेष्ठ डेस्कटॉप वातावरण पर हमारे लेख को देखें।
अक्सर पूछे जाने वाले प्रश्न
1. क्या जेंटू में संकलन समय को तेज करने का कोई तरीका है?
हां! आप अपने "/etc/portage/make.conf" फ़ाइल में कुछ मान जोड़कर जेंटू में संकलन समय को बड़े पैमाने पर तेज कर सकते हैं। उदाहरण के लिए, अपने कंप्यूटर को प्रोग्राम संकलन के दौरान अपने अधिकांश कोर का उपयोग करने की अनुमति देने के लिए यह मान सेट करें:
MAKEOPTS="-j4" # आपको इस संख्या को अपने सिस्टम में CPU कोर की संख्या के आधार पर बदलना चाहिए।
2. मेरा सिस्टम बूट नहीं हुआ! इसने GRUB दिखाया, लेकिन बूट होने के बाद, यह सिर्फ खाली है।
यह कई चीजों के कारण हो सकता है। सबसे आम कारणों में से एक यह है कि आपकी fstab फ़ाइल ठीक से सेट नहीं की गई थी। इसे ठीक करने के लिए अपने USB इंस्टॉलर को प्लग करें और हार्ड ड्राइव पर chroot करने के लिए हमारे द्वारा उठाए गए चरणों का पालन करें।
3. Xorg फॉन्ट प्रदर्शित नहीं करता; क्या कुछ गलत है?
यह सबसे अधिक संभावना है क्योंकि Xft ठीक से इंस्टॉल नहीं था। प्रोग्राम इंस्टॉल करते समय, आपको अपने make.conf में "Xft" USE फ्लैग जोड़ना होगा ताकि आपके द्वारा संकलित प्रोग्राम X-संगत फॉन्ट का उपयोग करें। ऐसा करने के लिए, अपने /etc/portage/make.conf में निम्न लाइन जोड़ें:
USE="xft"