कर्नेल मॉड्यूल को अक्षम करें जो कर्नेल में संकलित है (लोड नहीं है)


18

मेरे सर्वर में दो 1-Gbit और दो 10-Gbit ऑनबोर्ड नेटवर्क कार्ड हैं।

मुझे 1-Gbit नेटवर्क कार्ड को पूरी तरह से अक्षम करने की आवश्यकता है, ताकि ifconfig -aउन्हें दिखाई न दे।

नेटवर्क कार्ड विभिन्न कर्नेल मॉड्यूल का उपयोग करते हैं। 10-Gbit उपयोग ixgbe, और 1-Gbit उपयोग igb

01:00.1 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (rev 01)
Subsystem: Dell Ethernet 10G 4P X520/I350 rNDC
Kernel driver in use: ixgbe

05:00.1 Ethernet controller: Intel Corporation I350 Gigabit Network Connection (rev 01)
Subsystem: Dell I350 Gigabit Network Connection
Kernel driver in use: igb 

दोनों ixgbeऔर igbगिरी (नहीं एक लोड करने योग्य मॉड्यूल के रूप में) में स्थिर संकलित कर रहे हैं। मुझे कर्नेल बूट मापदंडों का उपयोग करके मॉड्यूल को अक्षम करना होगा।

मैंने अपने कर्नेल को निम्नलिखित जोड़ने की कोशिश की है, लेकिन इसका कोई प्रभाव नहीं है:

igb.blacklist=yes
igb.enable=0
igb.disable=yes

igb नेटवर्क कार्ड अभी भी दिख रहे हैं

मैं igb को पूरी तरह से कैसे निष्क्रिय कर सकता हूं?

जवाबों:


30

आपको अपने igbमॉड्यूल को ब्लैकलिस्ट करने में सक्षम होना चाहिए , यहां तक ​​कि जब बिल्ट-इन होता है, तो इसके आरंभिक फ़ंक्शन को ब्लैकलिस्ट करके: जोड़ें

initcall_blacklist=igb_init_module

अपने कर्नेल के बूट मापदंडों के लिए।

देखें कैसे मैं अक्षम I2C Designware समर्थन करते हैं जब यह एक मॉड्यूल के रूप में नहीं बनाया गया है? पृष्ठभूमि की जानकारी के लिए। यहां सामान्य नुस्खा कर्नेल स्रोत कोड में मॉड्यूल की तलाश है, और उन कार्यों की तलाश करें जिनके पास __initविशेषता है - मुख्य आरंभीकरण फ़ंक्शन (आमतौर पर एक module_initघोषणा में संदर्भित ) के रूप में केवल एक आसानी से पहचाना जाना चाहिए । ब्लैकलिस्ट कि, और ड्राइवर को इनिशियलाइज़ नहीं किया जाएगा।


4
उन लोगों के लिए जिनके लिए यह मायने रखता है, initcall_blacklistपैरामीटर लिनक्स 3.16 में दिखाई दिया ।
रुस्लान

1
है <modulename>_init_moduleकि एक मॉड्यूल के रूप में बनाया जा सकता है प्रत्येक और सब कुछ के लिए विहित नाम?
बनगुंगिन

1
@Banganguin दुर्भाग्य से नहीं, काफी कुछ कहा जाता है ..._init_moduleया ..._module_initवे उन सभी पैटर्न का पालन नहीं करते हैं।
स्टीफन किट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.