CentOS 7 में कर्नेल हेडर कैसे स्थापित करें


जब आप एक कस्टम कर्नेल मॉड्यूल जैसे डिवाइस ड्राइवर को CentOS सिस्टम पर संकलित करते हैं, तो आपको सिस्टम पर कर्नेल हेडर फाइल स्थापित करने की आवश्यकता होती है, जिसमें C हेडर फाइलें शामिल होती हैं। लिनक्स कर्नेल। कर्नेल हेडर फाइलें कर्नेल के साथ इंटरफेस करने वाले किसी भी कोड को स्थापित या संकलित करते समय विभिन्न प्रकार के फ़ंक्शन और संरचना परिभाषाएं प्रदान करती हैं।

जब आप कर्नेल हेडर्स स्थापित करते हैं, तो सुनिश्चित करें कि यह सिस्टम पर वर्तमान में स्थापित कर्नेल संस्करण के साथ मेल खाता है। यदि आपका कर्नेल संस्करण डिफ़ॉल्ट वितरण इंस्टॉलेशन के साथ आता है या आपने सिस्टम बेस रिपॉजिटरी से यम पैकेज मैनेजर का उपयोग करके अपने कर्नेल को अपग्रेड किया है, तो आपको केवल पैकेज मैनेजर का उपयोग करके मिलान कर्नेल हेडर स्थापित करना होगा। यदि आपने कर्नेल को स्रोतों से संकलित किया है, तो आप केवल स्रोतों से कर्नेल हेडर स्थापित कर सकते हैं।

इस लेख में, हम समझाएँगे कि सेंटर्स/आरएचईएल 7 में कर्नेल हेडर्स कैसे स्थापित करें और डिफ़ॉल्ट पैकेज मैनेजर का उपयोग करके फेडोरा वितरण करें।

CentOS 7 में कर्नेल हेडर स्थापित करें

पहले पुष्टि करें कि मिलान कर्नेल हेडर पहले से ही कमांड का उपयोग करके आपके सिस्टम पर /usr/src/kernels/ स्थान के तहत स्थापित हैं।

# cd /usr/src/kernels/
# ls -l

यदि कोई मिलान कर्नेल हेडर /usr/src/kernels/ निर्देशिका में स्थित नहीं हैं, तो आगे बढ़ो और कर्नेल हेडर स्थापित करें, जो कि कर्नेल-डेवेल पैकेज द्वारा प्रदान किया जा सकता है: जैसा कि दिखाया गया है डिफ़ॉल्ट पैकेज मैनेजर का उपयोग करके स्थापित किया जाए।

# yum install kernel-devel   [On CentOS/RHEL 7]
# dnf install kernel-devel   [On Fedora 22+]

कर्नेल-डेवेल पैकेज स्थापित करने के बाद, आप निम्न कमांड का उपयोग करके /usr/src/kernels निर्देशिका में सभी कर्नेल हेडर फ़ाइलों को पा सकते हैं।

# ls -l /usr/src/kernels/$(uname -r) 

एक VPS (उदाहरण के लिए एक लाइनोड VPS) पर ध्यान दें, एक कर्नेल में एक अनुकूलित संस्करण नाम हो सकता है, ऐसे परिदृश्य में, आपको कर्नेल संस्करण को मैन्युअल रूप से पहचानना होगा और निम्न कमांड का उपयोग करके स्थापित कर्नेल हेडर फ़ाइलों की जांच करनी होगी। ।

# uname -r	
# ls -l /usr/src/kernels/3.10.0-862.2.3.el7.x86_64
total 4544
drwxr-xr-x.  32 root root    4096 May 16 12:48 arch
drwxr-xr-x.   3 root root    4096 May 16 12:48 block
drwxr-xr-x.   4 root root    4096 May 16 12:48 crypto
drwxr-xr-x. 119 root root    4096 May 16 12:48 drivers
drwxr-xr-x.   2 root root    4096 May 16 12:48 firmware
drwxr-xr-x.  75 root root    4096 May 16 12:48 fs
drwxr-xr-x.  28 root root    4096 May 16 12:48 include
drwxr-xr-x.   2 root root    4096 May 16 12:48 init
drwxr-xr-x.   2 root root    4096 May 16 12:48 ipc
-rw-r--r--.   1 root root     505 May  9 19:21 Kconfig
drwxr-xr-x.  12 root root    4096 May 16 12:48 kernel
drwxr-xr-x.  10 root root    4096 May 16 12:48 lib
-rw-r--r--.   1 root root   51205 May  9 19:21 Makefile
-rw-r--r--.   1 root root    2305 May  9 19:21 Makefile.qlock
drwxr-xr-x.   2 root root    4096 May 16 12:48 mm
-rw-r--r--.   1 root root 1093137 May  9 19:21 Module.symvers
drwxr-xr-x.  60 root root    4096 May 16 12:48 net
drwxr-xr-x.  14 root root    4096 May 16 12:48 samples
drwxr-xr-x.  13 root root    4096 May 16 12:48 scripts
drwxr-xr-x.   9 root root    4096 May 16 12:48 security
drwxr-xr-x.  24 root root    4096 May 16 12:48 sound
-rw-r--r--.   1 root root 3409102 May  9 19:21 System.map
drwxr-xr-x.  17 root root    4096 May 16 12:48 tools
drwxr-xr-x.   2 root root    4096 May 16 12:48 usr
drwxr-xr-x.   4 root root    4096 May 16 12:48 virt
-rw-r--r--.   1 root root      41 May  9 19:21 vmlinux.id

इसके अलावा, यदि आपको glibc के उपयोग के लिए लिनक्स कर्नेल के लिए हेडर फ़ाइलें की आवश्यकता है, तो निम्न कमांड का उपयोग करके कर्नेल-हेडर पैकेज स्थापित करें।

# yum install kernel-headers   [On CentOS/RHEL 7]
# dnf install kernel-headers   [On Fedora 22+]

अब आप अपने खुद के या मौजूदा कर्नेल मॉड्यूल जैसे कि VirtualBox और कई और अधिक के लिए संकलन के साथ जाने के लिए अच्छे हैं।

बस! इस लेख में, हमने समझाया है कि कैसे कर्नेल-डेवेल और कर्नेल-हेडर पैकेज सेंटोस/आरएचईएल 7 और फेडोरा सिस्टम। याद रखें कि इससे पहले कि आप एक लिनक्स सिस्टम पर डिवाइस ड्राइवर जैसे कर्नेल मॉड्यूल संकलित कर सकें, आपके पास आवश्यक कर्नेल हेडर फ़ाइलें स्थापित होनी चाहिए। यदि आपके पास कोई प्रश्न हैं, तो कृपया हमें तक पहुँचने के लिए नीचे दिए गए टिप्पणी फ़ॉर्म का उपयोग करें।