আপনার নিজের লিনাক্স কার্নেলটি সংকলন করে কী লাভ?


101

লিনাক্স কার্নেলটি নিজেই সংকলন করে আমি কী উপকার পেতে পারি? আপনার হার্ডওয়্যার এটিকে কাস্টমাইজ করে আপনি তৈরি করতে পারেন এমন কিছু দক্ষতা আছে কি?


সুবিধাটি কী তা হল এর সহজ প্রশ্নটি অস্পষ্ট হয়ে যায় বা খুব দ্রুত প্রসঙ্গের বাইরে চলে যায় । What are the pros and cons of compiling your own kernel? কনস = জিজ্ঞাসা করা সহজ হবে, সহজ নয়, অনেক পরিস্থিতিতে কোনও মূল্য যুক্ত হয় না। পেশাদাররা = সুরক্ষা, কর্মক্ষমতা, আপনি কী করছেন তা যদি জানেন তবে উদাহরণস্বরূপ, NAS ডিভাইসগুলি, কিছু হার্ডওয়্যার কাজ করার জন্য লিনাক্স ব্যবহার করে এবং নেটওয়ার্কিং এবং গ্রাফিক ক্ষমতা রয়েছে।
রন

উত্তর:


73

আমার মনে, আপনার নিজের লিনাক্স কার্নেলটি সঙ্কলন করে আপনি কেবলমাত্র লাভটি হ'ল:

আপনার নিজের লিনাক্স কার্নেলটি কীভাবে সংকলন করতে হয় তা শিখুন।

এটি আরও গতি / মেমরি / এক্সএক্সএক্স যাই হোক না কেন আপনার প্রয়োজন এমন কিছু নয় । আপনার বিকাশে আপনি যে পর্যায়ে এসেছেন বলে মনে করেন সেই পদক্ষেপটি করা যদি মূল্যবান জিনিস a এই পুরো "ওপেন সোর্স" জিনিসটি কী, কার্নেলের বিভিন্ন অংশগুলি কীভাবে এবং কী সম্পর্কে রয়েছে তা যদি আপনি গভীরভাবে বুঝতে চান তবে আপনার এটিকে একবার চালিয়ে যাওয়া উচিত। যদি আপনি কেবল নিজের বুটের সময়টি 3 সেকেন্ডের মধ্যে গতি বাড়িয়ে তুলতে চান তবে ... কী কথা ... এসএসডি কিনুন। আপনি যদি কৌতূহলী হন, আপনি যদি শিখতে চান, তবে আপনার নিজের কার্নেল সংকলন করা একটি দুর্দান্ত ধারণা এবং আপনি সম্ভবত এটি থেকে অনেক কিছু পেয়ে যাবেন।

এর সাথে বলা হয়েছে, কিছু নির্দিষ্ট কারণ রয়েছে যখন আপনার নিজের কার্নেলটি সংশ্লেষ করা উপযুক্ত হবে (যেমন বেশিরভাগ লোক অন্যান্য উত্তরে নির্দেশ করেছেন)। সাধারণত এগুলি আপনার নির্দিষ্ট ফলাফলের জন্য নির্দিষ্ট প্রয়োজন থেকে উদ্ভূত হয়, উদাহরণস্বরূপ:

  • আমার সীমিত সংস্থান সহ হার্ডওয়্যারটিতে বুট / চালানোর জন্য সিস্টেমটি নেওয়া দরকার
  • আমার একটি প্যাচ পরীক্ষা করতে হবে এবং বিকাশকারীদের প্রতিক্রিয়া জানাতে হবে
  • আমাকে এমন কিছু অক্ষম করতে হবে যা দ্বন্দ্ব সৃষ্টি করছে
  • আমার লিনাক্স কার্নেলটি বিকাশ করা দরকার
  • আমার অসমর্থিত হার্ডওয়্যারটির জন্য সমর্থন সক্ষম করতে হবে
  • আমার এক্স এর পারফরম্যান্স উন্নত করতে হবে কারণ আমি সিস্টেমের বর্তমান সীমাবদ্ধতাগুলিকে আঘাত করছি (এবং আমি জানি আমি কী করছি)

ইস্যুটি এই ভাবনায় নিহিত যে আপনার নিজের কার্নেল সংকলনের কিছু অভ্যন্তরীণ সুবিধা রয়েছে যখন সমস্ত কিছু ইতিমধ্যে এটির মতো কাজ করছে এবং আমি মনে করি না এটি আছে। যদিও আপনি আপনার প্রয়োজন না এমন জিনিসগুলি অক্ষম করে এবং টুইকযোগ্য জিনিসগুলি টুইটারে অগণিত সময় ব্যয় করতে পারেন, তবে সত্য যে লিনাক্স কার্নেল বেশিরভাগ ব্যবহারকারীর পরিস্থিতিতে ইতিমধ্যে বেশ ভালভাবে সুরক্ষিত (আপনার বিতরণ করে) ।


25
আমি যুক্তি দিয়েছি যে আপনি যদি শিখার অভিজ্ঞতার জন্য আপনার নিজস্ব কার্নেলটি কেবল তৈরি করতে চান তবে আপনি এটি জেন্টো বা লিনাক্স থেকে স্ক্র্যাচের মতো উত্স-ভিত্তিক লিনাক্স বিতরণ দিয়ে করেন। কারেন্ট থেকে লিনাক্স তৈরির অর্থ কী তা বোঝার জন্য জেন্টু স্টেজ 2 ইনস্টল ডকুমেন্টেশন একটি দুর্দান্ত গাইড।
স্যান্ডি

সম্মত ... এই দুটি প্রকল্প এই ধরণের জিনিসটির জন্য নির্মিত।
গ্যাবে

অবশ্যই আপনি জানেন যে আপনি আসলে নিজের উত্তরের সাথে নিজেকে বিরোধিতা করছেন। কার্নেল সংকলনের একমাত্র সুবিধা যদি এটি করতে হয় তা শিখতে হলে তা অকেজো হবে - এর কোনও মূল্য নেই। তবে তারপরে কয়েক শব্দের পরে আপনি বলছেন এটি একটি মূল্যবান জিনিস ...
rozcietrzewiacz

@rozcietrzewiacz জ্ঞান অত্যন্ত মূল্যবান। একটি কার্নেল সংকলন আপনাকে আপনার জ্ঞান প্রসারিত করতে সহায়তা করে। আপনি যদি এটি না কিনে থাকেন তবে তা এখানে রয়েছে - জ্ঞান শক্তি, এবং শক্তি পাওয়ার জন্য লোকেরা ভাল অর্থ প্রদান করে এবং অর্থ আজকের বিশ্বে মূল্যবোধ রাখে, তাই ট্রানজিটিভ সম্পত্তি দ্বারা ....: পি
লাঞ্চমিট317

আমি একমত, এটি কেবল জ্ঞান অর্জনের জন্য মূল্যবান।
1100110

35

বেশিরভাগ ব্যবহারকারীর নিজস্ব কার্নেল সংকলন করার দরকার নেই, তাদের বিতরণটি তাদের জন্য এই কাজটি করেছে। সাধারণত বিতরণগুলিতে ডিস্ট্রিবিউশনটি যেভাবে কাজ করে তার কিছু অংশের সাথে একীভূত করার জন্য প্যাচগুলির একটি সেট অন্তর্ভুক্ত করা হবে, ডিভাইস ড্রাইভারের ব্যাকপোর্টগুলি এবং নতুনদের থেকে ফিক্সগুলি, তবে কার্নেলের অপ্রকাশিত সংস্করণ বা বৈশিষ্ট্য যা তারা তাদের ব্যবহারকারীদের সাথে অগ্রণী ভূমিকা পালন করছে।

আপনি যখন নিজের কার্নেলটি সঙ্কলন করেন, তখন আপনার কাছে কয়েকটি বিকল্প থাকে, আপনি একটি অফিসিয়াল লিনাস টোরভাল্ডস কার্নেল সংকলন করতে পারেন, এটিতে আপনার বিতরণ যুক্ত হওয়া কোন প্যাচ বা কাস্টমাইজেশন অন্তর্ভুক্ত হবে না (যা ভাল বা খারাপ হতে পারে) বা আপনি করতে পারেন আপনার নিজস্ব কার্নেল তৈরি করতে আপনার বিতরণ পুনর্নির্মাণের সরঞ্জামটি ব্যবহার করুন।

আপনি যে কার্নেলটি পুনর্নির্মাণ করতে চাইতে পারেন তার মধ্যে রয়েছে:

  • বাগ প্যাচিং বা কোনও উত্পাদন ব্যবস্থায় একটি নির্দিষ্ট বৈশিষ্ট্য যুক্ত করা, যেখানে আপনি একক বা দু'টির জন্য পুরো কার্নেলটিকে আপগ্রেড করার ঝুঁকি নিতে পারবেন না।
  • একটি নির্দিষ্ট ডিভাইস ড্রাইভার, বা একটি নতুন বৈশিষ্ট্য চেষ্টা করে দেখুন
  • কার্নেল প্রসারিত করতে, এটিতে কাজ করুন
  • "আলফা" মডিউল বা বৈশিষ্ট্যগুলির কয়েকটি পরীক্ষা করে।

অনেক বিকাশকারী এম্বেড থাকা সিস্টেম বা সেটটপ বাক্সগুলির জন্য যেখানে তাদের বিশেষ ডিভাইস ড্রাইভারের প্রয়োজন হয় বা তাদের প্রয়োজন নেই এমন কার্যকারিতা অপসারণ করতে চান তার জন্য কার্নেলের নিজস্ব কাস্টম সংস্করণ তৈরি করতে এটি ব্যবহার করে।


8
+1 টি। বাচ্চারা আজকাল, এমনকি তারা 'মেনুকনফিগ' কী বোঝায় তা জানে না এবং স্ক্রিপ্ট কিডিস দ্বারা জাল বাঁধা রোধ করতে তাদের কার্নেল নেটওয়ার্ক কোডটি কখনও প্যাচ করতে হয়নি। ভাগ্যক্রমে সেই দিনগুলি বেশিরভাগ সময় কেটে যায়।
axel_c

2
আপনার bisectবাগটি কোথায় যুক্ত হয়েছিল তা সন্ধান করা উচিত ...
xenoterracide

1
এই মন্তব্যে কীভাবে ভোট দেওয়া যায় তা আশ্চর্যজনক, যখন ওপির প্রশ্নের সাথে এর কোনও যোগসূত্র নেই। "বেশিরভাগ ব্যবহারকারীরা তা করেন না ...." এখনই মনে করুন। সুবিধাগুলি জানতে চাওয়ার বিষয়ে ওপির প্রশ্নটি খুব স্পষ্ট; এখানে "বেশিরভাগ ব্যবহারকারী" কী করেন সে সম্পর্কে আপনার মতামত নয়।
এরিক

30

কার্নেলটি নিজেই সংকলন করার মাধ্যমে আপনাকে কেবলমাত্র আপনার কম্পিউটারের সাথে সম্পর্কিত অংশগুলি অন্তর্ভুক্ত করতে পারবেন যা এটি ছোট এবং সম্ভাব্য দ্রুততর করে তোলে, বিশেষত বুট করার সময়। জেনেরিক কার্নেলগুলিকে যথাসম্ভব হার্ডওয়ারের জন্য সমর্থন অন্তর্ভুক্ত করা উচিত; বুট করার সময় তারা সনাক্ত করে যে কোন হার্ডওয়্যারটি আপনার কম্পিউটারের সাথে সংযুক্ত রয়েছে এবং উপযুক্ত মডিউলগুলি লোড করে, তবে এটি সমস্ত কিছু করতে সময় লাগে এবং তাদের কোডটি সরাসরি কার্নেলের মধ্যে বেকড না করে গতিশীল মডিউলগুলি লোড করা দরকার। আপনার কম্পিউটারে কেবল একটি মাত্র যখন রয়েছে তখন আপনার কার্নেলকে 400 টি আলাদা সিপিইউ সমর্থন করার কোনও কারণ নেই বা ব্লুটুথ ইঁদুরগুলিকে সমর্থন করার জন্য যদি আপনার কাছে এটি না থাকে তবে এটি সমস্ত স্থান নষ্ট করে আপনি মুক্ত করতে পারেন


15
আমি আপনার বেশিরভাগ উত্তরের সাথে একমত, তবে "যথেষ্ট দ্রুত" এর বিষয়ে কিছু শক্ত তথ্যের জন্য আমি আগ্রহী। আমি কোনও নতুন ব্যবহারকারীকে এই ধারণাটি দিতে চাই না যে হস্তনির্মিত কার্নেল দিয়ে তাদের ডেস্কটপটি সাধারণত দ্রুত চলবে (জেন্টুর সাথে আমার অভিজ্ঞতা থেকে, এটি কেবল সত্য নয়)। আপনি কি বুটের গতিতে লাভগুলি মাপ দিতে পারবেন?
স্যান্ডি

2
এই উত্তরটি 15 বছর আগে সত্য ছিল, তবে আজকাল এটি সত্যিই প্রাসঙ্গিক নয়। বেশিরভাগ ড্রাইভার মডিউলগুলিতে যাইহোক আসে, তাই তারা কেবল ডিস্কে রুম নেয়, মেমরিতে নয়। (বা কিছু ডিস্ট্রিবিউশন এখনও আরআরআরডি ছাড়াই আসে? একটি আরআরডি ছাড়া কার্নেলের বুট করার প্রয়োজন হতে পারে এমন সমস্ত ড্রাইভারকে অন্তর্ভুক্ত করা দরকার)) বুট সময় হিসাবে, অস্তিত্বহীন হার্ডওয়্যার সনাক্ত করতে চেষ্টা করতে মিলিসেকেন্ডের বেশি ব্যয় করা কয়েকটি ড্রাইভার অক্ষম করা যেতে পারে কার্নেল বুট বিকল্প সহ।
গিলস

1
@ মিশেল যদি এটি যাচাইকৃত অনুমান না হয়, আমি মনে করি আপনার উত্তরে "সম্ভাব্য দ্রুত" দিয়ে "যথেষ্ট দ্রুত" প্রতিস্থাপন করা ভাল ধারণা হতে পারে ... কেবল কোনও এন 00 বিভ্রান্ত না হয়েছে তা নিশ্চিত করার জন্য। :-)
স্যান্ডি

3
@ স্যান্ডি সম্মত, যেহেতু দেখে মনে হচ্ছে যে আমি সেই n00b এর মধ্যে একজন :) :)। স্থির
মাইকেল মরোজেক

2
আমি মনে করি "যথেষ্ট" দ্রুত আমরা আসলে বুটের সময় সম্পর্কে যে সতর্কতার সাথে কথা বলছি তা দিয়ে ন্যায়সঙ্গত প্রমাণ পাওয়া যায়। স্টক ডিস্ট্রো কার্নেলগুলি সহজেই 5 - 10 সেকেন্ডের বেশি সময় নেয় যেটি আমি ব্যবহার করার পরিকল্পনা করি না এমন কোনও হার্ডওয়্যার সন্ধান না করার জন্য আমি নামিয়েছি boot রান সময়ের গতি সম্ভবত নগণ্য, আমি আসলে এটি নির্ভরযোগ্যভাবে পরিমাপ করতে পারি না।
কালেব

24

আমি বিশ্বাস করতে পারি না গৃহীত উত্তরটি এখানে বলে শুরু করে "আরও গতি / মেমরি / এক্সএক্সএক্স যাই হোক না কেন এটির জন্য আপনাকে কিছু করা দরকার" "

এটি সম্পূর্ণ মিথ্যা। আমি নিয়মিতভাবে আমার কার্নেলগুলি দু'টি অপ্রয়োজনীয় কোড মুছে ফেলার পাশাপাশি বেশিরভাগ হার্ডওয়্যার সম্পর্কিত পারফরম্যান্স বর্ধনকারী কোড সহ কাস্টম তৈরি করি। উদাহরণস্বরূপ, আমি কিছু পুরানো হার্ডওয়্যার চালিয়েছি এবং এই বিল্ট-ইন থাকা কিছু পুরানো মোবোসগুলিতে খুব কমই সক্ষম করা কার্নেল ড্রাইভার যেমন এইচপিটি 36 এক্স চিপসেট সমর্থন সক্ষম করে কিছু কর্মক্ষমতা অর্জন করতে পারি।

আরেকটি উদাহরণ, স্ল্যাকওয়ারের অধীনে বিআইজি এসএমপি হ'ল ডিফল্ট এবং একটি ডেল ২৮০০-তে, উদাহরণস্বরূপ, জিএফএসডি (কার্নেল মডিউল হিসাবে নয়) চালানোর জন্য একটি বড় আকারের মুদ্রণ ব্যবহার করবে যা উপায় দ্বারা, সিপিইউ টিকিগুলি আমি কোনও কিছুর জন্য খায়? দরকার নেই তেমনি এনএফএসডি এবং অন্যান্য ক্যাচ-অল সকলের জন্য সমস্ত মানসিকতা খুশি করার জন্য যা আপনি যদি কেবল একটি বাক্সে লিনাক্স পাওয়ার চেষ্টা করছেন এবং চলছে তবে আপনি যদি "গতি / স্মৃতি / এক্সএক্সএক্সএক্স যাই হোক না কেন" যত্নবান হন তবে এই বিষয়গুলি গুরুত্বপূর্ণ এবং কাজ করে ।

আমার সমস্ত প্রোডাকশন বাক্স কাস্টম কার্নেলগুলি। যদি আমি সাধারণ হার্ডওয়্যার যেমন ডেল সিরিজ (2800, 2850, 2900, ইত্যাদি ...) এ থাকি তবে কার্নেলের .config ফাইলটি প্রতিটি বাক্সের চারপাশে অনুলিপি করা এবং কার্নেল সংকলন এবং ইনস্টল করা সহজ বিষয়।


3
আমি মনে করি গৃহীত উত্তরের মূল বক্তব্যটি হ'ল বেশিরভাগ হার্ডওয়্যারের জন্য, আপনার নিজস্ব কার্নেল সংকলন করে যে সম্পাদনা অর্জন করা হয়েছিল তা কীভাবে করা যায় তা শেখার জন্য প্রয়োজনীয় সময়ের জন্য উপযুক্ত নয় (এবং বিকল্পগুলির অর্থ কী তা শিখুন)। এটি সম্ভবত পরীক্ষামূলক: এটির জন্য কিছু নম্বর পাওয়া ভাল লাগবে।
আন্দ্রেস রিওফ্রিও

ঠিক আছে তবে এটি যে আসল প্রশ্নে এটি না জানানো বেআইনী এবং তারপরে আপনি যে কারণে অভিযোগ করেছেন সেই উত্তরটি গ্রহণ করুন।
এরিক

2
ঠিক আছে, এটি আমার দোষ নয় যে আমার উত্তর গৃহীত হয়েছিল। এবং হ্যাঁ এমন কিছু ক্ষেত্রে রয়েছে যেখানে আপনার কার্নেলটি সংকলন করা আপনাকে "কিছুটা পারফরম্যান্স খুঁজে বের করতে" বা কম পাওয়ার মেশিনে উঠতে এবং চালাতে সহায়তা করবে, আমি অনুমান করেছিলাম যে আসল প্রশ্নটি এমন একজনের দ্বারা জিজ্ঞাসা করা হচ্ছে যার নির্দিষ্ট একটি নেই সময়ের আগে প্রয়োজন, এবং সাধারণ অর্থে কৌতূহল ছিল যে কার্নেল সংকলনের সুবিধা কী ছিল। আমি যুক্তি দিয়ে বলতে পারি যে নির্দিষ্ট প্রয়োজনীয়তার কথা মাথায় রেখে কেবলমাত্র লোকেরা কার্নেল টুইটগুলি থেকে উপকৃত হয়। যেহেতু আমার উত্তর গৃহীত হয়েছিল তাই আমি কাস্টম কার্নেলগুলির জন্য আরও বেশি পাওয়ার-ব্যবহারকারীর কারণগুলির জন্য এটি উন্নত করব
গ্যাবে abe

14

এখানে কিছু পরিস্থিতি রয়েছে যেখানে আপনার নিজস্ব কার্নেল সংকলন করা আপনার উপকার করবে:

  • মডিউল লোডিং অক্ষমযুক্ত একটি কার্নেল আরও সুরক্ষিত। এটির জন্য আপনাকে প্রয়োজনীয় মডিউলগুলি নির্বাচন করতে হবে এবং মডিউল হিসাবে তাদের সংকলনের বিপরীতে কার্নেলের অংশ হিসাবে সেগুলি অন্তর্ভুক্ত করতে হবে।

  • / Dev / kmem এর জন্য সমর্থন অক্ষম করা, বা উপযুক্ত সংকলক বিকল্পের সাথে এটি পঙ্গু করা সুরক্ষার পক্ষে ভাল। আমি মনে করি বেশিরভাগ ডিগ্রোরা ডিফল্টরূপে এটি করে।

  • আমি সম্ভব হলে initrd এর ব্যবহার না করা পছন্দ করি। আপনার কার্নেলটিকে হার্ডওয়্যার থেকে কাস্টমাইজ করা এটি আরআরডিটি সরিয়ে দেয়।

  • কখনও কখনও কার্নেলের পরবর্তী সংস্করণে আপনার প্রয়োজনীয় বৈশিষ্ট্য উপস্থিত থাকবে তবে এটি আজ খুব বিরল। আমার মনে আছে আমি যখন প্রথম ডেবিয়ান ব্যবহার শুরু করলাম তখন এটি ২.৪ কার্নেল ব্যবহার করছিল, তবে উদেব সহায়তার জন্য আমার একটি ২.6 কার্নেল প্রয়োজন।

  • আপনার প্রয়োজন নেই নেটওয়ার্কিং প্রোটোকল / অপশনগুলি অক্ষম করা আপনার টিসিপি / আইপি কর্মক্ষমতা দ্রুততর করতে পারে।

  • অপশনগুলি অক্ষম করা আপনার প্রয়োজন নেই কার্নেলের মেমরির পদচিহ্নগুলি হ্রাস করে, যা কম র‌্যাম পরিবেশে গুরুত্বপূর্ণ। আপনি যখন রাউটার হিসাবে 256MB র‌্যাম সিস্টেম ব্যবহার করছেন তখন এটি সহায়তা করে।

  • আমি সিস্টেমে সমস্ত দেব "tty" ডিভাইসগুলি বিরক্ত করি / যেখানে আমি সাধারণত সিরিয়াল বা এসএসএসের মাধ্যমে লগ ইন করি।


সব সত্য. যাইহোক, মডিউল লোড অপসারণ বুটে সমস্যা সৃষ্টি করতে পারে: বেশিরভাগ, যদি না হয় তবে, বিতরণগুলি কেবল আজ ধরেই নেয় যে মডিউলগুলি লোড করা দরকার। গতবার আমি মডিউলগুলি বন্ধ করে দিয়েছিলে এটি রেড হ্যাট বুট প্রক্রিয়া চলাকালীন লিটানির ত্রুটি বার্তাগুলি পপ আউট করে।
মেই

7

আপনার নিজস্ব কার্নেল সংকলন কর্নেল বিকাশ প্রক্রিয়াতে অংশ নিতে আপনাকে অনুমতি দেয়, এটি কোনও সহজ ড্রাইভার যেমন পিসিআই / ইউএসবি ডিভাইস আইডি সরবরাহ করা যেমন কোনও নতুন চালকের পক্ষে আপনার জন্য নতুন ডিভাইস কাজ করতে পারে, মূল জগতে গভীরভাবে জড়িত হতে পারে কার্নেল উন্নয়ন।

এটি আপনাকে আপনার হার্ডওয়্যারে বিকাশ কার্নেলগুলি পরীক্ষা করতে এবং যদি আপনার কোনও প্রতিক্রিয়া লক্ষ্য করে তবে প্রতিক্রিয়া সরবরাহ করার অনুমতি দেয়। এটি আপনার এবং অন্যদের জন্য বিশেষত সহায়ক হতে পারে যদি আপনার কোনও হার্ডওয়ারের অস্বাভাবিক অংশ থাকে। আপনি যদি কোনও ডিস্ট্রো কার্নেলের জন্য অপেক্ষা করেন তবে আপনার সমস্যার প্রতিবেদনগুলি থেকে নতুন ডিস্ট্রো কার্নেল রিলিজে ফিল্টার করতে কিছুক্ষণ সময় নিতে পারে।

আমি ব্যক্তিগতভাবে কেবল আমার কাছে থাকা হার্ডওয়্যারটির জন্য সমর্থন অন্তর্ভুক্ত করার জন্য আমার নিজস্ব কার্নেলগুলি সংকলন করতে চাই। আপনি যখন ডিস্ট্রো কার্নেলগুলি চালনা করেন এবং এর আউটপুটটি lsmod(8)দেখেন, তখন আপনার কাছে নেই এমন হার্ডওয়ারের জন্য প্রচুর মডিউল লোড হওয়া দেখতে পাবেন। এটি মডিউল তালিকা, / proc, / sys এবং আপনার লগগুলিকে দূষিত করতে পারে যে আপনি যখন কোনও কিছুর সন্ধান করছেন তখন শব্দের মধ্যে লুকিয়ে থাকতে পারে; আপনি 100% নিশ্চিত হতে পারবেন না যে এই মডিউলগুলি আপনি যে সমস্যাটি নির্ণয়ের চেষ্টা করছেন তাতে অবদান রাখছে না।


6

আমি দ্বিতীয় গ্যাবে। এর উত্তর (আমার মন্তব্যটি দীর্ঘ দীর্ঘ তাই আমি উত্তর হিসাবে পোস্ট করছি)।

যদি আপনি একটি উচ্চ বিশেষজ্ঞের উদ্দেশ্য না পেয়ে থাকেন (যেমন এম্বেডেড মেশিন, কঠোর সুরক্ষা প্রোফাইলিং), আমি আপনার নিজের কার্নেলটি কীভাবে এটি সম্পন্ন করেছি তা সংকলন করার জন্য কোনও ব্যবহারিক সুবিধা দেখতে পাচ্ছি না। পদ্ধতিগতভাবে বিকল্পগুলি পর্যালোচনা করে, সিস্টেমটি তৈরি করতে তারা একে অপরের সাথে কীভাবে যোগাযোগ করে তা আপনার সিস্টেম কীভাবে কাজ করে তা বোঝার একটি দুর্দান্ত উপায়। আপনি যে উপাদানগুলি সম্পাদনের চেষ্টা করছেন তার কোনও উদ্দেশ্য নেই বলে মনে হচ্ছে না এমন উপাদানগুলি সরিয়ে দেওয়ার চেষ্টা করার সময় আপনি কী খুঁজে পেয়েছেন তা আশ্চর্যজনক।

তবে সতর্ক হোন - খরগোশের গর্তের নিচে লাফিয়ে দেওয়া নিঃসন্দেহে কেন উদ্দীপনাজনক, এটি আপনার যতটা সম্ভব ভেবেছিল তার চেয়ে বেশি রাত এবং সাপ্তাহিক ছুটি পিছনে ফিরে আসবে!


3

কর্মক্ষেত্রে, আমরা বৃক্ষের বাইরে গাছের প্যাচগুলি যেমন ভেসার এবং ইউনিয়নফ প্রয়োগ করতে হ্যান্ড রোল্ড কার্নেলগুলি ব্যবহার করি।

বাড়িতে, আমি কোন বাগটি সম্মুখীন হয়েছি তা কোন প্রতিশ্রুতিবদ্ধ তা আবিষ্কার করার জন্য আমি হ্যান্ড রোল্ড কার্নেলগুলি সংকলন করছি। একবার এটি শেষ হয়ে গেলে, আমি সম্ভবত বিতরণ (ডিবিয়ান) -র মধ্যে বাগটি ঠিক না করা পর্যন্ত আমি একটি হাত দ্বারা ঘূর্ণিত কর্নেলের সাথে আটকে থাকব, যার পরে আমি আবার তাদের কার্নেলগুলিতে ফিরে যাব।


2

এই থ্রেডটি পুরানো এবং এখনও প্রশ্নটি যখন জিজ্ঞাসা করা হয়েছিল ঠিক তেমন বৈধ!

উত্তরটি হল: আপনি আপনার প্রয়োজন এবং প্রয়োজনীয়তা অনুসারে আপনার পছন্দের লিনাক্স কার্নেলটি সংকলন করুন।

অনেক পরিস্থিতিতে বৈধ:

  1. আপনি একজন প্রকৌশলী এবং আপনার সিস্টেমের জন্য পারফরম্যান্স এবং সুরক্ষা প্রয়োজনীয়তা / চাহিদা পূরণের জন্য আপনার বিল্ডের প্রয়োজন, আপনি নির্দিষ্ট মানদণ্ডগুলি পূরণ এবং / অথবা ছাড়িয়ে যাওয়ার জন্য পুনরায় রচনা করেন।

  2. আপনি একজন সাধারণ ব্যবহারকারী এবং আপনার একটি পুরানো সিস্টেম রয়েছে যা আপনি যতক্ষণ পারেন চালিয়ে যেতে চান, আপনি আপনার পুরানো সিস্টেমটি অপটিমাইজ রাখার জন্য উপাদানগুলি যোগ / অপসারণ পুনরায় কম্পাইল করে।

  3. আপনি সর্বশেষতম হার্ডওয়্যার সহ সাধারণ ব্যবহারকারী এবং এতে পর্যাপ্ত মেমরি / র‌্যাম রয়েছে। পুনরায় কম্পাইল করার দরকার নেই তবে আপনি যদি আপনার সিস্টেম সম্পর্কে আরও কিছুটা জানতে আগ্রহী হন তবে আপনি তা করতে পারেন।

  4. আপনি কেবল মাইক্রোসফ্ট এবং / অথবা ম্যাক দৈনন্দিন ব্যবহারকারীর মতো হতে চান, পুনরায় সংকলন করবেন না এবং কেবল আপনার আপস্ট্রিম ডিস্ট্রো থেকে আপডেটগুলি নিয়ে যান।

  5. দৃশ্যপটগুলি আগমন করুন :-)

ম্যাক / উইন্ডোজ ব্যবহারকারীদের মতো নয়, লিনাক্স যা সরবরাহ করে তা হ'ল পছন্দ। আপনার প্রয়োজনীয়তার সাথে এটিকে সহজ বা বিকল্পটিকে অনুকূলিত করার পছন্দ The


1

বেশিরভাগ ব্যবহারের জন্য জেনেরিক কার্নেলগুলি কার্যত যে কোনও হার্ডওয়্যারের পক্ষে ভাল। অতিরিক্তভাবে তারা সাধারণত (সম্পাদনা) বিতরণ-নির্দিষ্ট প্যাচগুলি ধারণ করে যাতে আপনার নিজস্ব কার্নেল সংকলন করতে পারে (সম্ভবত) সমস্যা তৈরি করতে পারে।

আপনার নিজস্ব কার্নেল সংকলন করার জন্য রজন হ'ল:

  • আপনি উত্স-ভিত্তিক ডিস্ট্রো ব্যবহার করছেন যাতে কোনও 'জেনেরিক' কার্নেল নেই
  • আপনি কার্নেল বিকাশকারী এবং আপনি কার্নেল বিকাশ করেছেন
  • খুব সীমিত হার্ড ড্রাইভ সহ এম্বেডড ডিভাইসের জন্য উদাহরণস্বরূপ আপনাকে কার্নেলটি কাস্টমাইজ করতে হবে
  • কিছু ড্রাইভার সংকলিত হয় না (খুব বিরল ক্ষেত্রে)
  • আপনি কার্নেল প্যাচ করতে চান এবং আপনি কী করছেন তা আপনি জানেন
  • আপনি কীভাবে কার্নেলটি কম্পাইল করবেন তা শিখতে চান

যদি আমি উত্স-ভিত্তিক ডিস্ট্রো ব্যবহার না করতাম তবে আমি কার্নেলটি মোটেই সংকলন করব না।


1

কাস্টম সংকলিত কার্নেল থাকার জন্য এখানে বর্ণিত অনেকগুলি ছাড়াও অন্য একটি ক্ষেত্রে বিশেষায়িত নেটওয়ার্ক বুট এনভায়রনমেন্ট স্থাপন করা হচ্ছে যেখানে মডিউল লোড করা সম্ভব হয় না এবং আপনাকে নির্দিষ্ট কাজের জন্য সম্পূর্ণরূপে কার্যকারী কার্নেলগুলি নির্দিষ্ট মেশিনে প্রেরণ করতে হবে।


1

আমি অবাক হয়েছি যে কাস্টম কার্নেল সংকলনের জন্য কেউ এই কারণটির উল্লেখ করেনি:

কারণ আপনি একটি ভিন্ন সি / সি ++ সংকলক ব্যবহার করতে চান। লিনাক্স কার্নেল সংকলনের জন্য জিসিসি বেশ ভাল। তবে সেখানে বাইরে রয়েছে আরও উন্নত সংকলক! জিসিসির অপ্টিমাইজেশানগুলি ইনটেলের সি / সি ++ সংকলক থেকে কিছুটা পিছনে। এবং ইন্টেল পারফরম্যান্স আদিম গ্রন্থাগারগুলি এবং ভিটিউন সরঞ্জাম সরবরাহ করে, উভয়ই উচ্চ-পারফরম্যান্স লিনাক্স কার্নেল তৈরির জন্য অপরিহার্য। আপনি কেবলমাত্র জিসিসি এবং জি ++ দিয়ে পেতে পারেন। ব্যবহারিকভাবে আপনি ফলাফলটি যা কিছু করেন তা কম্পাইলার দ্বারা সীমাবদ্ধ থাকবে। সুতরাং, আমি ইন্টেল সংকলক এবং পারফরম্যান্স লাইব্রেরি ব্যবহার করি এটি কিছুটা বড় - 1.5 জিবি ডাউনলোড, তবে এটি একটি ভাল সংকলকটিতে কী কী রয়েছে তার একটি ধারণা দেয়।

ইনটেলের সি / সি ++ সংকলক অ বাণিজ্যিক ব্যবহারের জন্য বিনামূল্যে উপলভ্য। তবে ইন্টেলের ওয়েবসাইট অনুসন্ধান করার জন্য অ-বাণিজ্যিক লাইসেন্স ইন্টেল সি ++ সংকলক ডাউনলোড পৃষ্ঠাটি গুগল করা সহজ। আমি সাধারণত কোনও কিছুর জন্য GCC / G ++ ব্যবহার করি না। এবং আপনার প্রোগ্রামার হওয়ার দরকার নেই। আপনি কেবল আপনার পরিবেশ সেট করেছেন এবং মেক ফাইলটিতে দুটি লাইন পরিবর্তন করে ইন্টেলের সংকলকটি নির্দেশ করেছেন।

তাহলে আপনি কিছু মারাত্মক গতি পেতে পারেন!


-1

আপনি যদি খুব নির্দিষ্ট হার্ডওয়্যারে লিনাক্স ইনস্টল করতে চান তবে ডিএসের চেয়ে আরও বেশি বিদেশী বলুন , আপনাকে নিজের কার্নেলটি ক্রস-কম্পাইল করতে হবে।

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