আমি 11.04 কার্নেল .config ফাইলটি কোথায় পেতে পারি?


15

আমি কার্নেল.আরজে সর্বশেষ উপলব্ধ কার্নেলগুলি দিয়ে মাভেরিকটি ব্যবহার করছি এবং সেগুলি নিজেই তৈরি করছি। এখন অবধি আমি আমার কনফিগারেশনটি স্টক মভারিক কার্নেলের বাইরে রেখে make oldconfigডিফল্ট গ্রহণ করেছি । আমি এখন 3 টি বড় রিলিজের জন্য এটি করছি তাই আমি অনুমান করি যে আমি বর্তমান "স্ট্যান্ডার্ড" এর পিছনে পিছলে যেতে শুরু করছি।

আমি আমার নতুন কার্নেলগুলি নতুন নেট .configফাইলটি পুনরায় বেস করতে চাই । এটি কি অনলাইনে কোথাও উপলব্ধ বা আমার কাছে পুরো কর্নেল প্যাকেজটি ডাউনলোড করে এটি বের করতে হবে?

সম্পাদনা করুন: আমি সর্বশেষতম নেটি কার্নেল প্যাকেজটি থেকে ম্যানুয়ালি কনফিগারটি টেনেছি এবং আমি নিশ্চিত করতে পারি যে আমার সম্ভবত এটি করা উচিত soon আমার পুরানো "বিবর্তিত" কনফিগারেশন এবং নেট ডিফল্টের মধ্যে প্রচুর পার্থক্য। এখন যদি আমি 20 মিনিটের শিকার এবং প্যাকেজ ডাউনলোড না করেই এটি করতে পারি যাতে আমি ভবিষ্যতে পুনরায় বেস করতে পারি।

উত্তর:



30

প্রতিটি linux-imageপ্যাকেজটিতে হুবহু কনফিগারেশন ফাইল থাকে যা এটি দিয়ে নির্মিত হয়েছিল /boot/config-*। বর্তমানে চলমান লিনাক্স কার্নেলের কনফিগারেশন ফাইলটি দেখতে, করুন:

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

আমি উবুন্টু কার্নেল মানুষ (Freenode সঙ্গে পরীক্ষা করেছি #ubuntu-kernel) এবং তারা আমার বিশ্বাস সেখানে সত্যিই "নয় যে নিশ্চিত করেছেন কনফিগ", কিন্তু এটা আসলে একটি নম্বর অন্তর্ভুক্ত করে বিল্ড / কম্পাইল সময়ে নির্মাণ করা হয় ফাইল; এগুলি নির্ভুল আর্কিটেকচার এবং লক্ষ্য (ডেস্কটপ / সার্ভার / মেঘ) এর উপর নির্ভর করে। আপনি (সংক্ষিপ্ত) কথোপকথনটি এখানে পড়তে সক্ষম হবেন:Kconfig

প্যাকেজ.বুন্টু.কম এবং নিম্নলিখিত অনুসন্ধানগুলি ব্যবহার করে সেই জাতের একটি তালিকা পাওয়া যাবে :

শিকার, প্রায়, এটি প্যাকেজ .configঅন্তর্ভুক্ত করা হবে যে প্রদর্শিত হবে linux-headers-*। এগুলি .debফাইল (যা সাধারণ .arসংরক্ষণাগার যা দিয়ে খোলা হবে file-roller) এবং প্রতিটিতে প্রায় 800 কিলোবাইট। আপনি যদি পরে নির্দিষ্ট টার্গেট, আর্কিটেকচার এবং সংস্করণ জানেন তবে আপনি এটিকে সরাসরি লঞ্চপ্যাড বা আর্কাইভ থেকে ধরে নিতে পারেন:

  1. আর্কাইভ.উবুন্টু / বুন্টু / পুল / মেইন / এল / লিনাক্স / লিনাক্স-শিরোলেখ -২. * * .দেব
  2. তারপর ভিতরে তাকান /usr/src/linux-headers-2.6*/.config

আপনি যদি পুরো প্রক্রিয়াটিকে একটি কমান্ডে স্বয়ংক্রিয় করতে চান তবে আপনি নিম্নলিখিতটি চেষ্টা করতে পারেন; নিশ্চিত করুন যে আপনি এটি সমস্ত এক লাইনে রেখেছেন!

আশা করি এইটি কাজ করবে!


এটি তদন্ত করার জন্য ধন্যবাদ। রিক্লগটি পড়ে, দেখে মনে হচ্ছে না যে আমি যা চাই তা তাৎপর্যপূর্ণ ডাউনলোড না করেই পাচ্ছি। অটোমেশন-ভিত্তিক, প্যাকেজটি ধরে রাখা এবং /boot-config-*বিল্ড-টাইম এগুলি স্বয়ংক্রিয়ভাবে চালানোর জন্য তারা যে উইজার্ডারি ব্যবহার করে তা অনুকরণ করার চেষ্টা করার চেয়ে প্যাকেজটি ধরে নেওয়া এবং এটি বের করা আরও সহজ । অনলাইনে প্যাকেজ থেকে কোনও ফাইল দখল করার উপায় নেই (বা আছে?)
অলি

আমি মনে করি আমি এটি একটি পৃথক প্রশ্নে জিজ্ঞাসা করব।
অলি


1

উবুন্টু গিট কার্নেল সংগ্রহস্থল

debian/মেটাডাটা যা configs রয়েছে এবং কার্নেল গাছ মুক্তি প্রতি একটি একক 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/commune/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

যে স্ক্রিপ্টটি মার্জ করে তা ডিবিয়ান / স্ক্রিপ্টস / মিসক / কার্নেলকনফিগ বলে মনে হয় এবং এতে মন্তব্য রয়েছে:

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

টোডো: এমন একটি 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- জেনেরিক .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।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.