मुझे 11.04 कर्नेल .config फ़ाइल कहां मिल सकती है?


15

मैं kern.org पर नवीनतम उपलब्ध कर्नेल के साथ Maverick का उपयोग कर रहा हूं और उन्हें स्वयं बना रहा हूं। अब तक मैं स्टॉक मावरिक कर्नेल से अपने कॉन्फ़िगरेशन को आधार बना रहा हूं और make oldconfigचूक को स्वीकार कर रहा हूं । मैं 3 प्रमुख रिलीज के लिए अब यह कर रहा हूं इसलिए मुझे लगता है कि मैं वर्तमान "मानक" के पीछे खिसकना शुरू कर रहा हूं।

मैं नई नेट्टी .configफ़ाइल से अपनी गुठली को फिर से आधार बनाना चाहूंगा । क्या यह कहीं ऑनलाइन उपलब्ध है या क्या मुझे पूरे कर्नेल पैकेज को डाउनलोड करना होगा और इसे निकालना होगा?

संपादित करें: मैंने नवीनतम नेटली कर्नेल पैकेज से मैन्युअल रूप से कॉन्फ़िगर किया है और मैं पुष्टि कर सकता हूं कि मुझे यह जल्द ही करना चाहिए था। मेरे पुराने "विकसित" विन्यास और नेट्टी डिफ़ॉल्ट के बीच बहुत सारे अंतर हैं। अब अगर मैं 20 मिनट के शिकार और पैकेज को डाउनलोड किए बिना ऐसा कर सकता हूं तो मैं भविष्य में फिर से आधार बना सकता हूं।

जवाबों:



30

प्रत्येक linux-imageपैकेज में सटीक कॉन्फ़िगरेशन फ़ाइल होती है जिसे इसके साथ बनाया गया था /boot/config-*। वर्तमान में चल रहे लिनक्स कर्नेल के लिए विन्यास फाइल देखने के लिए, करें:

  • less /boot/config-$(uname -r)

मैं Ubuntu गिरी लोग (Freenode पर साथ जाँच की है #ubuntu-kernel) और वे मेरे विश्वास वहाँ वास्तव में "नहीं है कि पुष्टि की है config", लेकिन यह वास्तव में के एक नंबर शामिल करके निर्माण / संकलन समय पर निर्माण किया है फ़ाइलें; ये सटीक आर्किटेक्चर और लक्ष्य (डेस्कटॉप / सर्वर / क्लाउड) पर निर्भर करते हैं। आपको उस (छोटी) बातचीत को पढ़ने में सक्षम होना चाहिए:Kconfig

उस विविधता की एक सूची package.ubuntu.com और निम्न खोज का उपयोग करके पाया जा सकता है :

शिकार, आसपास, यह प्रतीत होता है कि पैकेज .configमें भी शामिल linux-headers-*है। ये .debफाइलें हैं (जो साधारण .arअभिलेखागार हैं जो खुलेगी file-roller) और केवल प्रत्येक के बारे में 800 केबी। यदि आपको पता है कि आप किस विशेष लक्ष्य, वास्तुकला और संस्करण के बाद हैं, तो आप इन्हें सीधे लॉन्चपैड या आर्काइव से ले सकते हैं:

  1. संग्रह .ubuntu.com/ ubuntu/ pool/ main/ l/ linux/ linux-header-2.6 * .deb
  2. फिर अंदर देखो /usr/src/linux-headers-2.6*/.config

यदि आप पूरी प्रक्रिया को एक कमांड में स्वचालित करना चाहते हैं, तो आप निम्नलिखित प्रयास कर सकते हैं; सुनिश्चित करें कि आप इसे एक पंक्ति में रखते हैं!

उम्मीद है की वो मदद करदे!


इसकी जांच के लिए धन्यवाद। Irclog को पढ़ने के बाद, ऐसा नहीं लगता कि मैं वह प्राप्त करने जा रहा हूं जो मुझे महत्वपूर्ण डाउनलोड के बिना चाहिए। स्वचालन-वार, यह अभी भी पैकेज को हथियाने और /boot-config-*बिल्ड-टाइम में उन्हें ऑटोजेन का उपयोग करने वाले विज़ार्ड का अनुकरण करने की कोशिश से निकालने के लिए आसान है। यह शर्म की बात है वहाँ नहीं एक पैकेज ऑनलाइन से एक फ़ाइल हथियाने का एक तरीका है है (या नहीं है?)
ओली

मुझे लगता है कि मैं एक अलग प्रश्न में पूछूंगा।
ओली


1

उबंटू गिट कर्नेल रिपॉजिटरी

debian/मेटाडाटा जो कॉन्फ़िगरेशन शामिल है, और गिरी पेड़ रिहाई प्रति एक भी Git भंडार में दोनों ट्रैक किए जाते हैं: http://kernel.ubuntu.com/git/ubuntu/ubuntu-bionic.git/

रेपो में तब प्रत्येक कर्नेल पैकेज के लिए एक टैग होता है, उदाहरण के लिए मेरे उबंटू 18.04 में, मेरे पास पैकेज है linux-image-4.15.0-36-generic, जिसका मैं अनुमान लगा रहा हूं: टैग से मेल खाता है Ubuntu-4.15.0-36.39

https://help.ubuntu.com/community/Kernel/Compile बताता है कि कर्नेल को कैसे संकलित किया जाए, और इसलिए इसे कैसे कॉन्फ़िगर किया जाए और कैसे कॉन्फ़िगर किया जाए यह अंतिम कॉन्फ़िगरेशन में विलय हो जाता है।

वे सभी विन्यास प्रतीत debian.master/config/ARCHहोते हैं जिनके अंतर्गत निम्न शामिल हैं:

config.common.ubuntu
config.common.ports
amd64/config.common.amd64
amd64/config.flavour.generic
amd64/config.flavour.lowlatency

इसलिए मैं अनुमान लगा रहा हूं कि linux-image-4.15.0-36-genericविलय होगा config.common.ubuntu, config.common.amd64और config.flavour.generic

मर्जिंग करने वाली स्क्रिप्ट डिबियन / स्क्रिप्ट्स / misc / k गिरीकॉनफिग लगती है और इसमें टिप्पणी होती है:

# Merge configs
# We merge config.common.ubuntu + config.common.<arch> +
# config.flavour.<flavour>

TODO: एक ऐसी debian.master/config/annotationsफाइल भी है जिसमें लगता है कि प्रत्येक आर्च के लिए प्रत्येक कॉन्फिगर का मान है, उसका उपयोग कैसे किया जाता है?

किसी को इस बात की पुष्टि करनी चाहिए कि किसी तरह वर्बोज़ मोड में बिल्ड स्क्रिप्ट चलाकर, लेकिन मैं अब आलसी हूं, आप इसके साथ निर्माण कर सकते हैं:

git clone git://kernel.ubuntu.com/ubuntu/ubuntu-bionic.git linux
cd linux
git checkout Ubuntu-4.15.0-36.39
fakeroot debian/rules clean
debian/rules updateconfigs
fakeroot debian/rules build-generic

मैंने तब पुष्टि की है कि यह ठीक उसी कॉन्फिग को पैदा करता है जो मेरे पास स्थानीय रूप से है:

diff debian/build/build-generic/.config /boot/config-4.15.0-36-generic

ध्यान दें कि उबंटू कर्नेल गिट रेपो में भी अपस्ट्रीम लिनक्स के शीर्ष पर हजारों पैच होते हैं, इसलिए सिर्फ सही कॉन्फ़िगरेशन प्राप्त करना व्यवहार को पुन: उत्पन्न करने के लिए पर्याप्त नहीं होगा।

हम यह भी जाँच सकते हैं कि हमने जो कर्नेल बनाया था dmesgवह बूट की शुरुआत को देखते हुए पैक किए गए से मेल खाता है , जिसमें शामिल हैं:

[    0.000000] Linux version 4.15.0-36-generic (buildd@lgw01-amd64-031) (gcc version 7.3.0 (Ubuntu 7.3.0-16ubuntu3)) #39-Ubuntu SMP Mon Sep 24 16:19:09 UTC 2018 (Ubuntu 4.15.0-36.39-generic 4.15.18)

में कॉन्फ़िगर करें .deb

जैसा कि दूसरों ने उल्लेख किया है, अंतिम पूर्ण विन्यास भी नीचे मौजूद है:

/boot/config-4.15.0-36-generic

जो प्रत्येक लिनक्स कर्नेल छवि के अनुरूप है:

/boot/vmlinuz-4.15.0-36-generic

इसलिए, अन्य संस्करणों के लिए, हम पा सकते हैं कि वे किस पैकेज से आते हैं:

dpkg -S /boot/config-4.15.0-36-generic

जो देता है:

linux-modules-4.15.0-36-generic: /boot/config-4.15.0-36-generic

और फिर आप बस https://packages.ubuntu.com/bionic-updates/linux-modules-4.15.0-36-generic.deb से डाउनलोड कर सकते हैं और इसे प्राप्त करने के लिए निकाल सकते हैं:

mkdir config
cd config
wget http://mirrors.kernel.org/ubuntu/pool/main/l/linux/linux-modules-4.15.0-36-generic_4.15.0-36.39_amd64.deb
ar x linux-modules-4.15.0-36-generic_4.15.0-36.39_amd64.deb
tar -xvf data.tar.xz
cat ./boot/config-4.15.0-36-generic

उबुन्टु 18.04 में परीक्षण किया गया।

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