मैक ओएस एक्स में & अनलोड कर्नेल एक्सटेंशन कैसे लोड करें
विषयसूची:
कर्नेल एक्सटेंशन, जिसे शॉर्ट के लिए केक्स्ट कहा जाता है, कोड के मॉड्यूल हैं जो सीधे मैक ओएस एक्स के कर्नेल स्पेस में लोड होते हैं, जो विभिन्न प्रकार के कार्यों को करने के लिए निम्न-स्तर पर चलने में सक्षम होते हैं। अधिकांश kexts कोर Mac OS X सिस्टम सॉफ़्टवेयर का हिस्सा हैं, आमतौर पर हार्डवेयर डिवाइस ड्राइवर, लेकिन कुछ तृतीय पक्ष ऐप्स भी kext इंस्टॉल करेंगे।
कभी-कभी उन्नत मैक उपयोगकर्ताओं और सिस्टम प्रशासकों को कर्नेल एक्सटेंशन को मैन्युअल रूप से लोड या अनलोड करने की आवश्यकता हो सकती है।क्योंकि कर्नेल एक्सटेंशन अक्सर MacOS के महत्वपूर्ण घटक होते हैं, यह केवल उन उपयोगकर्ताओं के लिए उपयुक्त है जिनके पास संशोधित करने का एक विशिष्ट कारण है कि क्या कोई kext MacOS X कर्नेल स्थान में लोड या अनलोड किया गया है। केक्स्ट व्यवहार का अनुचित संशोधन मैक हार्डवेयर को बेकार या दुर्गम बना सकता है, और मैक ओएस एक्स को बिल्कुल काम करने से भी रोक सकता है, इसलिए किसी भी कर्नेल एक्सटेंशन को बिना किसी ठोस कारण और इसके उपयोग की समझ के बदलने का प्रयास न करें।
kextload के साथ Mac OS X में कर्नेल एक्सटेंशन लोड करना
मैक ओएस एक्स में कर्नेल एक्सटेंशन लोड करने के लिए, आपको कमांड लाइन केक्सटलोड यूटिलिटी का उपयोग करने की आवश्यकता होगी। सिंटैक्स अन्यथा काफी सरल है, कार्रवाई करने के लिए प्रशासनिक पहुंच के लिए सुडो की आवश्यकता होती है:
sudo kextload /path/to/kext.kext
आप -b फ़्लैग के साथ बंडल आइडेंटिफ़ायर (जो अक्सर डिफ़ॉल्ट कमांड के लक्ष्य होते हैं) का भी उपयोग कर सकते हैं:
sudo kextload -b com.apple.driver.ExampleBundle
किसी भी तरह से, रिटर्न हिट करें और एडमिनिस्ट्रेटर पासवर्ड की प्रविष्टि के साथ कर्नेल एक्सटेंशन Mac OS X में लोड हो जाएगा।
आप दिए गए नाम को खोजने के लिए grep का उपयोग करके kextstat के साथ सूचीबद्ध करके कर्नेल के लोड होने की पुष्टि कर सकते हैं:
$ kextstat |grep com.apple.driver.ExampleBundle 125 0 0xddddd7f23351040 0x5000 0x5000 com.apple.driver.ExampleBundle (1) 12 8 7 5 4 2 1
मैक ओएस एक्स में कर्नेल एक्सटेंशन को मैन्युअल रूप से स्थापित करने के बाद यह मददगार हो सकता है क्योंकि कुछ स्थितियों में यह मैक को रिबूट करने की आवश्यकता को रोक देगा।
मैक ओएस एक्स के आधुनिक संस्करण भी कर्नेल एक्सटेंशन लोडिंग को kextutil कमांड के साथ पूरा करने की अनुमति देते हैं, जो डिबगिंग कारणों के लिए थोड़ा और अधिक फीचर्ड है, लेकिन अन्यथा एक केएक्सटी लोड करने के लिए समान है।
kextunload के साथ कर्नेल एक्सटेंशन को उतारना
मैक ओएस एक्स से कर्नेल एक्सटेंशन को उतारना मूल रूप से एक केक्स्ट लोड करने जैसा ही है, सिवाय इसके कि आप सूडो के साथ केक्सटुनलोड उपयोगिता का उपयोग इस प्रकार करेंगे:
sudo kextunload -b com.apple.driver.ExampleBundle
या सीधे कर्नेल एक्सटेंशन पथ पर इंगित करके:
sudo kextunload /System/Library/Extensions/ThirdPartyMystery.kext
फिर से, आप पुष्टि कर सकते हैं कि कर्नेल एक्सटेंशन kextstat और grep का उपयोग करके अनलोड किया गया है, जहां इसे कुछ भी वापस नहीं करना चाहिए।