उपयोग करने के सबसे बड़े ड्रा में से एक लिनक्स इसका आसान अनुकूलन है और अनुकूलित करने के लिए सबसे मजेदार चीजों में से एक है गुठली खुद, का दिल लिनक्स ऑपरेटिंग सिस्टम. संभावना है कि आपको अपने स्वयं के कर्नेल को संकलित करने की सबसे अधिक संभावना नहीं होगी। जो आपके वितरण और आपके पैकेज प्रबंधन प्रणाली के माध्यम से अद्यतन करता है वह आमतौर पर काफी अच्छा होता है, लेकिन ऐसे समय होते हैं जब कर्नेल को पुन: संकलित करना आवश्यक हो सकता है।
इनमें से कुछ कारण हो सकते हैं खास हार्डवेयर जरूरत है, एक बनाने की इच्छा अखंड गिरी के बजाय एक आधुनीकीकरण एक, बेकार ड्राइवरों को हटाकर, विकास कर्नेल चलाकर, या बस इसके बारे में अधिक जानने के लिए कर्नेल को अनुकूलित करना लिनक्स. इस मामले में, हम एक नया जारी संकलन करने जा रहे हैं कर्नेल 3.12, पर डेबियन व्हीज़ी. हाल ही में जारी कर्नेल 3.12 के लिए कुछ नए ड्राइवरों सहित कई नई सुविधाएँ हैं एनवीडिया ऑप्टिमस, और यह Radeon कर्नेल ग्राफिक्स ड्राइवर. यह में भारी सुधार भी प्रदान करता है EXT4 फाइलसिस्टम, और कुछ अपडेट एक्सएफएस तथा बीटीआरएफएस.
आरंभ करने के लिए, हमें कुछ पैकेजों की आवश्यकता होगी, अर्थात् फ़ेकरूट तथा कर्नेल-पैकेज:
# उपयुक्त-फकेरूट कर्नेल-पैकेज स्थापित करें
अब, से नवीनतम स्रोत टैरबॉल प्राप्त करें www.kernel.org या आप इसे डाउनलोड करने के लिए निम्न wget कमांड का उपयोग कर सकते हैं।
# wget -c https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.12.tar.xz
अब, संग्रह को अनपैक करते हैं।
# टार -xvJf linux-3.12.tar.xz
निकालने के बाद, एक नई कर्नेल स्रोत निर्देशिका बनाई जाएगी।
# सीडी लिनक्स-3.12
अब, हम कर्नेल को कॉन्फ़िगर करना चाहेंगे। उस कॉन्फ़िगरेशन से शुरू करना सबसे अच्छा है जिसका आप वर्तमान में उपयोग कर रहे हैं और वहां से काम करते हैं। ऐसा करने के लिए, हम वर्तमान कॉन्फ़िगरेशन को से कॉपी करेंगे /boot वर्तमान कार्यशील निर्देशिका में निर्देशिका और इसे इस रूप में सहेजें .config.
# cp /boot/config-`unname –r`.config
वास्तविक कॉन्फ़िगरेशन के साथ शुरू करने के लिए, आपके पास दो विकल्पों में से एक है। यदि आपके पास है X11 स्थापित, आप चला सकते हैं xconfig बनाओ, और एक अच्छा है जीयूआई जब आप अपना कॉन्फ़िगर करते हैं तो आपकी सहायता करने के लिए मेनू गुठली. यदि आप एक में चल रहे हैं सीएलआई पर्यावरण, आप make. चला सकते हैं मेन्यूकॉन्फिग. आपको आवश्यकता होगी libncurses5-देव उपयोग करने के लिए स्थापित पैकेज मेन्यूकॉन्फिग:
# उपयुक्त-libncurses5-dev इंस्टॉल करें। # मेन्यूकॉन्फिग बनाएं
जैसा कि आप देखेंगे, एक बार जब आप अपनी पसंद के विन्यास में होते हैं, तो आपके लिए ढेर सारे विभिन्न विकल्प उपलब्ध होते हैं गुठली. वास्तव में, इस ट्यूटोरियल के दायरे के लिए बहुत अधिक हैं। चयन करते समय गुठली विकल्प, सबसे अच्छा तरीका परीक्षण और त्रुटि है, और बहुत सारे Googling करना है। यह सीखने का सबसे अच्छा तरीका है। यदि आप केवल अपने को अपडेट करने का प्रयास कर रहे हैं गुठली नवीनतम संस्करण के लिए, आपको कुछ भी बदलने की आवश्यकता नहीं है और आप बस "चुन सकते हैं"कॉन्फ़िगरेशन सहेजें”. चूंकि हमने वर्तमान कर्नेल की कॉन्फ़िगरेशन फ़ाइल को नए कर्नेल में कॉपी किया है .config फ़ाइल।
ध्यान रहे कि "कर्नेल मॉड्यूल लोडर"" में चुना गया हैलोड करने योग्य मॉड्यूल समर्थन”. यदि ऐसा नहीं है, और आप कर्नेल मॉड्यूल का उपयोग कर रहे हैं, तो यह चीजों को गंभीर रूप से गड़बड़ कर सकता है।
एक बार जब यह सीधा हो जाता है, तो स्रोत के पेड़ को साफ करने का समय आ जाता है।
#मेक-केपीकेजी स्वच्छ
अंत में, कर्नेल पैकेज बनाने का समय आ गया है।
# निर्यात CONCURENCY_LEVEL=3. # फेकरूट मेक-केपीकेजी --एपेंड-टू-वर्जन "-कस्टमकर्नेल" --रिविजन "1" --इनिटर्ड कर्नेल_इमेज कर्नेल_हेडर्स
जैसा कि आप ऊपर देखेंगे, हमने एक वेरिएबल का निर्यात किया है जिसे कहा जाता है CONCURENCY_LEVEL. इस चर के साथ अंगूठे का एक सामान्य नियम इसे आपके कंप्यूटर के कोर की संख्या के रूप में सेट करना है + 1. इसलिए, यदि आप क्वाड कोर का उपयोग कर रहे हैं, तो आप:
# निर्यात CONCURENCY_LEVEL=5
यह आपके संकलन समय को बहुत तेज कर देगा। बाकी संकलन आदेश बहुत ही आत्म-व्याख्यात्मक है। साथ फ़ेकरूट, हम कर्नेल पैकेज बना रहे हैं (मेक-केपीकेजी), हमारे कर्नेल को नाम देने के लिए एक स्ट्रिंग जोड़ना ("कस्टमकर्नेल”), इसे एक पुनरीक्षण संख्या देते हुए (“1”) और हम बता रहे हैं मेक-केपीकेजी दोनों का निर्माण करने के लिए छवि पैकेज और एक हैडर पैकेज. एक बार संकलन समाप्त हो जाने के बाद, और आपकी मशीन और आपके द्वारा संकलित किए जा रहे मॉड्यूल की संख्या के आधार पर, यह हो सकता है काफी लंबा समय लें, लिनक्स स्रोत निर्देशिका से निर्देशिकाओं को वापस एक में बदलें, और आपको दो नए देखना चाहिए *.देब फ़ाइलें - एक लिनक्स छवि फ़ाइल और एक linux-headers फ़ाइल:
अब आप इन फ़ाइलों को स्थापित कर सकते हैं जैसे आप कोई भी स्थापित करेंगे *.देब के साथ फाइल डीपीकेजी कमांड.
# dpkg -i linux-image-3.12.0-customkernel_1_i386.deb linux-headers-3.12.0-customkernel_1_i386.deb
नया कर्नेल, क्योंकि यह a. है डेबियन पैकेज, आपकी ज़रूरत की हर चीज़ को अपडेट करेगा, जिसमें शामिल हैं बूटलोडर. एक बार स्थापित होने के बाद, आप बस रीबूट, और अपने से नए कर्नेल का चयन करें भोजन/लिलो मेन्यू।
किसी पर पूरा ध्यान देना सुनिश्चित करें त्रुटि संदेश दौरान बूट प्रक्रिया ताकि आप किसी भी समस्या का निवारण कर सकें। यदि, किसी भी कारण से, आपका सिस्टम बूट नहीं होता है, तो आप हमेशा अपने अंतिम कार्य पर वापस आ सकते हैं गुठली और फिर प्रयत्न करें। गैर-कार्यात्मक गुठली के साथ हमेशा हटाया जा सकता है उपयुक्त आदेश।
# sudo apt-linux-image- (नॉन-वर्किंग-कर्नेल) निकालें