कर्नेल ट्री पर 'ओल्डकोन्फिग' करते समय स्वचालित रूप से चूक का जवाब दें


36

पिछले कॉन्फ़िगरेशन के आधार पर एक नया कर्नेल बनाते समय, क्या make oldconfigप्रक्रिया को स्वचालित करने का एक तरीका है ताकि यह उनके डिफ़ॉल्ट मानों के लिए नए विकल्प सेट करे?

संपादित करें: मेरा मतलब यह है कि नए कर्नेल पर .config ( /boot/config-*या से /proc/config.gz) का उपयोग करते समय , make oldconfigप्रक्रिया से आप अपने पुराने कर्नेल में उपलब्ध विकल्पों को सक्षम करने या न करने के लिए कहेंगे। आप डिफ़ॉल्ट स्वीकार करने के लिए वाई / एन / एम या प्रेस का जवाब दे सकते हैं। मैं बिना किसी उपयोगकर्ता सहभागिता के डिफ़ॉल्ट रूप से डिफ़ॉल्ट रूप से स्वीकार करना चाहूंगा।


@jscott यह केवल पहले प्रश्न के लिए "एन्टर प्रेस" होगा, सभी के लिए नहीं। आप 'हां' कमांड का उपयोग एक स्ट्रिंग को अनिश्चित काल के लिए मुद्रित करने के लिए कर सकते हैं।
लॉरेंट पेरेंटो

जवाबों:


37

कमांड का उपयोग करें:

yes "" | make oldconfig

'हां' कमांड बार-बार सभी निर्दिष्ट स्ट्रिंग, या डिफ़ॉल्ट रूप से 'y' के साथ एक लाइन आउटपुट करता है।

तो, आप इसे केवल "प्रेस एंटर" करने के लिए उपयोग कर सकते हैं, जिसके परिणामस्वरूप 'ओल्डकोन्फिग' कमांड बनाने के लिए डिफॉल्ट्स मूल्य का उपयोग किया जाएगा।


आह, मुझे नहीं पता था कि 'हाँ' कमांड किसी भी स्ट्रिंग को आउटपुट कर सकता है। धन्यवाद!
जीन-फ्रेंकोइस शेवरेट

3
यह अभूतपूर्व है।
इवान एक्स

1
उत्तर एक बेहतर विचार है serverfault.com/a/538150/18822
इवान कैरोल

56
make olddefconfig

तुम क्या चाहते हो मदद से ( make helpकर्नेल स्रोत में)

olddefconfig - siloldconfig के समान लेकिन अपने डिफ़ॉल्ट मान पर नए प्रतीक सेट करता है


मैं थोड़ी देर के लिए कुछ इस तरह की तलाश में था ... बहुत बहुत धन्यवाद!
जफ़र कोफ़ही

यह लिनक्स के किस संस्करण में आया था? बस उत्सुक। मैं वर्तमान में एक पुराने संस्करण (3.0) को संभाल रहा हूं और यह अभी तक नहीं है।
क्लाक डे

1
यह सही उत्तर होना चाहिए।
सुपरजामी

0

हाँ। इसे स्रोत निर्देशिका के शीर्ष स्तर में ".config" में संग्रहीत किया जाता है।

इसके अतिरिक्त, यदि वितरण कर्नेल का उपयोग किया जाता है, तो कुछ वितरण जैसे कि RedHat इसे / boot / config - $ (uname -r) में संग्रहीत करता है। (कर्नेल संस्करण) [1]

अंत में, यदि आपके द्वारा चलाए जा रहे कर्नेल में संकलित है, तो यह /proc/config.gz में उपलब्ध है। मैं भूल गया कि किस संस्करण ने इस विकल्प को पेश किया।

[१] ये विकल्प:

CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y 

संपादित करें

/Usr/src/linux/kernel/Documentation/kbuild/kconfig.txt (या उचित संस्करण) देखें। आप उनकी कुछ सिफारिशों का उपयोग किसी स्क्रिप्ट को लिखने के लिए कर सकते हैं। आप जो वर्णन करते हैं, उसे पूरा करने के लिए मैं स्क्रिप्टिंग और टेक्सटाइल के संयोजन का उपयोग करूंगा।

संपादित करें 2

एक अतिरिक्त नोट के रूप में, यह एक बुरा विचार है। क्या होगा यदि वैकल्पिक हार्डवेयर आपके पर्यावरण परिवर्तनों के लिए अद्वितीय है, लेकिन डिफ़ॉल्ट नहीं है? क्या होगा अगर नकारात्मक प्रभाव डालने वाले परिवर्तन होते हैं? यह वास्तव में कुछ ऐसा है जो इंटरैक्टिव होना चाहिए। आप कॉन्फ़िगरेशन बना सकते हैं और बाकी को स्वचालित कर सकते हैं।

"सिल्टोल्कोनफिग बनाएं" एक छोटी सी क्रिया है, जो सहायक हो सकती है। यह अभी भी इंटरैक्टिव है।


मेरा वह मतलब नहीं था। मैंने अपने प्रश्न में यह बताने के लिए अधिक विवरण जोड़े हैं कि मैं क्या हासिल करना चाहता हूं।
जीन-फ्रेंकोइस शेवरेट

0

make silentoldconfig


2
बनाना साइलोनडॉन्फिग अभी भी इंटरैक्टिव है, यह सिर्फ कम
क्रिया है
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.