তৃতীয় পক্ষের কার্নেল মডিউল ইনস্টল করার পরে বা কার্নেল আপগ্রেড করার পরে কেন আমি "প্রয়োজনীয় কী উপলব্ধ নেই"?


79

এই সমস্যাটি কেবলমাত্র সিকিউর বুটযুক্ত ইউইএফআই সিস্টেমে ঘটে।

আমি যখন ভার্চুয়ালবক্স, এনভিডিয়া, বা ব্রডকোম ড্রাইভারগুলির মতো ডি কেএমএস মডিউলগুলি ইনস্টল করার চেষ্টা করি তখন সেগুলি ইনস্টল হয় না এবং আমি Required key not availableযখন modprobeতাদের চেষ্টা করি তখনই পাই ।

VirtualBox অভিযোগ যে vboxdrvলোড হয় না।

ব্রডকম wlড্রাইভারকে lspci -kকার্নেল মডিউল হিসাবে দেখানো হয়েছে তবে ব্যবহৃত হচ্ছে না। sudo modprobe wlছোঁড়ার Required key not available

এছাড়াও এই সমস্যাটি ঘটতে পারে যখন আমি গিট উত্স থেকে কিছু কার্নেল মডিউল ইনস্টল করি।

এই সমস্যাটি কার্নেল আপডেট হওয়ার পরে অক্ষম ওয়্যারলেস অ্যাডাপ্টার, একটি রিবুটের পরে কালো পর্দা ইত্যাদি হিসাবে প্রদর্শিত হতে পারে etc.

আমি কীভাবে এটি ঠিক করতে পারি?


উত্তর:


85

উবুন্টু কার্নেল ৪.৪.০-২০১০ EFI_SECURE_BOOT_SIG_ENFORCEকার্নেল কনফিগারেশন সক্ষম করা হয়েছে। এটি যদি ইউইএফআই সিকিউর বুট সক্ষম করে থাকে তবে স্বাক্ষরযুক্ত তৃতীয় পক্ষের মডিউলগুলি লোড করা থেকে বাধা দেয়।

এই সমস্যাটি সমাধানের সবচেয়ে সহজ উপায় হ'ল ইউইএফআই (বিআইওএস) সেটিংসে সিকিউর বুট অক্ষম করা

বেশিরভাগ ক্ষেত্রে গ্রাব মেনু ব্যবহার করে আপনি ইউইএফআই সেটিংসে যেতে পারেন। ESCবুট করার জন্য বোতাম টিপুন , গ্রাব মেনুতে যান এবং সিস্টেম সেটআপ নির্বাচন করুন। সুরক্ষিত বুট বিকল্পটি ইউইএফআইয়ের "সুরক্ষা" বা "বুট" বিভাগে থাকা উচিত।

আপনি সরাসরি ইউইএফআইতে যেতে পারেন, তবে এটি আপনার হার্ডওয়্যারের উপর নির্ভর করে। কীভাবে সেখানে যাবেন তা দেখতে আপনার কম্পিউটার ম্যানুয়ালটি পড়ুন। এটি Del, বা F2বুটে বা অন্য কিছু হতে পারে।

বিকল্প উপায় হ'ল সুরক্ষিত বুট ব্যবহার করে অক্ষম করা mokutil

যেহেতু উবুন্টু কার্নেল ৪.৪.০-২১.৩7 তৈরি করে এটি চালিয়ে ঠিক করা যায়

sudo apt install mokutil
sudo mokutil --disable-validation

এটি একটি পাসওয়ার্ড তৈরি করতে হবে। পাসওয়ার্ডটি কমপক্ষে 8 টি অক্ষরের দীর্ঘ হওয়া উচিত। আপনি রিবুট করার পরে, ইউইএফআই জিজ্ঞাসা করবে আপনি সুরক্ষা সেটিংস পরিবর্তন করতে চান কিনা। "হ্যাঁ" চয়ন করুন।

তারপরে আপনাকে পূর্বের তৈরি পাসওয়ার্ড লিখতে বলা হবে। কিছু ইউইএফআই ফার্মওয়্যার পুরো পাসওয়ার্ডের জন্য নয়, তবে এর কিছু অক্ষর যেমন 1 ম, 3 য় ইত্যাদি প্রবেশ করানোর জন্য জিজ্ঞাসা করে careful কিছু লোক এটি বুঝতে পারে না। আমি প্রথম চেষ্টা থেকে এটি পেলাম না ;-)

আপডেট: এখন এই কার্নেল কনফিগারেশনটি সমস্ত সমর্থিত উবুন্টু কার্নেলগুলিতে সক্ষম করা আছে। উবুন্টু 16.04, 15.10 এবং 14.04 প্রভাবিত।


এটি আমার পক্ষে কাজ করে না। @ সপ্তনিক উত্তর দেয়। তবে তবুও, আমি জানতে চাই কেন মকুটিল আমাকে পাসওয়ার্ড জিজ্ঞাসা করছে এবং আমার কখন এটির প্রয়োজন হবে?
আলউইন কেসলার

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

@ পাইলট:: কিছু প্রযুক্তিগত সমস্যার কারণে আমি এখনও উবুন্টু 14.04 এলটিএসে আছি। উত্তর আপডেট করার জন্য অনেক ধন্যবাদ।
রবি জোশী

3
উবুন্টু 18.04 এ আমার জন্য কাজ করেছেন। এনভিডিয়া ড্রাইভারগুলি কেন কোনও উপায়েই কাজ করছে না, এমনকি ১ 16.০৪ এ ফিরে যাওয়ার কারণেও আমার জীবনটি খুঁজে বের করতে পারিনি। গাহ! এটি এটি স্থির করে। এত সময় নষ্ট।
Nate

1
আমার উবুন্টু সিস্টেমটি সত্যই পিছিয়ে ছিল। এটি একেবারে নতুন ল্যাপটপ হওয়ায় কোনও অর্থবোধ করা হয়নি। এখন আমি বুঝতে পারি যে সিপিইউ সব কিছু করছে এবং আমার ভিডিও কার্ড পুরোটা সময় অলস অবস্থায় বসেছিল। এই লিঙ্কটিও
পিটার ড্রিনান

32

ব্যবহারকারীর @ zwets এর পরামর্শ অনুসারে, আমি এখানে একটি উত্তর কপি করছি (সম্পাদনা সহ) :

কার্নেল সংস্করণ ৪.৪.০-২০২০ সাল থেকে, এটি প্রয়োগ করা হয়েছিল যে স্বাক্ষরযুক্ত কর্নেল মডিউলগুলিকে সিকিউর বুট সক্ষম থাকলে চলতে দেওয়া হবে না। আপনি যদি সিকিউর বুট রাখতে চান এবং এই মডিউলগুলি চালাতে চান তবে পরবর্তী যৌক্তিক পদক্ষেপটি সেই মডিউলগুলিতে স্বাক্ষর করা উচিত

সুতরাং এটি চেষ্টা করা যাক।

  1. স্বাক্ষর কীগুলি তৈরি করুন

    openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=Descriptive name/"
    
  2. মডিউলটিতে স্বাক্ষর করুন

    sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der /path/to/module
    

উল্লেখ্য 1 : সেখানে একাধিক ফাইল একটি একক চালক / মডিউলের জন্য সাইন ইন করা হতে পারে, তাই /path/to/moduleদিয়ে প্রতিস্থাপিত করা প্রয়োজন হতে পারে $(modinfo -n <modulename>), যেমন$(modinfo -n vboxdrv)

নোট 2 : sudo kmodsign sha512 ./MOK.priv ./MOK.der /path/to/moduleযদি sign-fileনা পাওয়া যায় তবে একটি বিকল্প ।

  1. সুরক্ষিত বুটের কীগুলি নিবন্ধ করুন

    sudo mokutil --import MOK.der
    

    পুনরায় বুটের পরে ব্যবহারের জন্য একটি পাসওয়ার্ড সরবরাহ করুন Supply

  2. Rebootএবং এমওকে (মেশিনের মালিক কী) নিবন্ধনের নির্দেশাবলী অনুসরণ করুন। এখানে ছবি সহ একটি নমুনা দেওয়া হয়েছে । সিস্টেমটি আরও একবার পুনরায় বুট করবে।

কীটি যদি সঠিকভাবে তালিকাভুক্ত করা হয় তবে এটি নীচে প্রদর্শিত হবে sudo mokutil --list-enrolled

আপনার মডিউলগুলি উবুন্টু 16.04 (কর্নেল ৪.৪.০-২১ তে, আমি বিশ্বাস করি) এইভাবে চালিত হয় তা দয়া করে আমাকে জানান।

সংস্থানসমূহ: মডিউল সাইন ইন ফেডোরা এবং উবুন্টু বাস্তবায়নের জন্য বিশদ ওয়েবসাইট নিবন্ধ । (তারা এটিতে কাজ করে যাচ্ছেন) ;-)

অতিরিক্ত সংস্থান: আমি প্রতিবার virtualbox-dkmsআপগ্রেড করে নিজের ব্যবহারের জন্য ব্যাশ স্ক্রিপ্ট তৈরি করেছি এবং এভাবে স্বাক্ষরিত মডিউলগুলি ওভাররাইট করে। আমার vboxsignমূলত গিটহাবটিতে দেখুন

সুরক্ষার জন্য অতিরিক্ত নোট (অতিরিক্ত-) সচেতন: ;-)

যেহেতু আপনার তৈরি করা ব্যক্তিগত কীটি ( MOK.privএই উদাহরণে) এর অ্যাক্সেস থাকতে পারে এমন যে কেউ ব্যবহার করতে পারেন, তাই এটি সুরক্ষিত রাখা ভাল অনুশীলন। আপনি chmodএটি, এনক্রিপ্ট ( gpg) করতে পারেন বা এটি অন্য কোথাও নিরাপদ (r) রাখতে পারেন। অথবা, এই মন্তব্যে উল্লিখিত হিসাবে , -nodesপদক্ষেপ নম্বর 1-এ বিকল্পটি সরান This এটি পাসফ্রেজের সাহায্যে কীটি এনক্রিপ্ট করবে।


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

1
এটি ভার্চুয়ালবক্স এবং উবুন্টু 16.04 এর জন্য আমার পক্ষে কাজ করেছে।
YtvwlD

1
পদক্ষেপ 3 এ আমি নিম্নলিখিত ত্রুটিটি পেয়েছি: "EFI ভেরিয়েবলগুলি এই সিস্টেমে সমর্থিত নয়"। "dmesg" এর কোন efi এন্ট্রি নেই ("dmesg | grep efi" এর কোনও ফলাফল নেই) আমি আর কী করতে পারি? ধন্যবাদ
মুসবাচ

আপনি $ (modinfo -n মডিউলনাম) এর সাথে বিকল্পটি প্রতিস্থাপন করতে পারেন
শেন

উবুন্টু ১৮.০৪-তে, তালপা_সাইককলহুক.কো মডিউলের জন্য ইনসোড বলছে "প্রয়োজনীয় কী পাওয়া যায় না" যদিও আমি সেই মডিউলটিতে স্বাক্ষর করেছি এবং ঠিক একই ক্ষেত্রে সোফোস এভি-তে একই ডিরেক্টরিতে থাকা সমস্ত অন্যান্য মডিউল। কীটি সফলভাবে নিবন্ধিত হয়েছে কারণ আমি যখন সমস্ত মোক কীগুলি তালিকাভুক্ত করি তখন এটি দেখতে পাচ্ছি। কীভাবে এগিয়ে যেতে হবে?
ফ্রান মারজোয়া

6

আপনি নিম্নলিখিত পদক্ষেপগুলি সহ BIOS এ সুরক্ষিত বুট (UEFI) অক্ষম করতে পারেন:

  1. আপনার মেশিনটি পুনরায় বুট করুন এবং BIOS মেনুতে প্রবেশ করুন (আমার ক্ষেত্রে F2 টিপুন)

  2. সুরক্ষিত বুট অনুসন্ধান করুন এবং উত্তরাধিকারে পরিবর্তন করুন

একটি ASUS মাদারবোর্ডে:

  • উন্নত মোডে যান (F7)
  • বুট বিভাগের অধীনে সুরক্ষিত বুট বিকল্পে যান
  • "অন্যান্য ওএস" এর সাথে "উইন্ডোজ ইউইএফআই মোড" পরিবর্তন করুন
  • সেটিংস প্রয়োগ করার জন্য সংরক্ষণ করুন এবং পুনরায় চালু করুন (F10)

2
সিকিউর বুট এবং "লিগ্যাসি" আলাদা সেটিংস।
পাইলট 6

তবে আপনি যদি ইউইএফআই এর পরিবর্তে "লিগ্যাসি বুট" সক্ষম করে থাকেন তবে তাতে কি সুরক্ষিত বুট সক্ষম হয় না?
অতিপ্রাকৃত

@ সুপর্ণমাল, হ্যাঁ, এটি আমি বুঝতে পেরেছি।
স্পুটনিক

3

আপনি শিম-সাইন ইন চলমান সুরক্ষিত বুট অক্ষম করতে পারেন sudo update-secureboot-policy। এই উইকি পৃষ্ঠাতে এই পদ্ধতিটি ব্যাখ্যা করা হয়েছে:

  • একটি টার্মিনাল খুলুন (Ctrl + Alt + T), এবং sudo আপডেট-সুরক্ষিত বুট-নীতি কার্যকর করুন এবং তারপরে হ্যাঁ নির্বাচন করুন।
  • 8 থেকে 16 ডিজিটের মধ্যে একটি অস্থায়ী পাসওয়ার্ড লিখুন। (উদাহরণস্বরূপ, 12345678, আমরা এই পাসওয়ার্ডটি পরে ব্যবহার করব
  • নিশ্চিত করতে আবার একই পাসওয়ার্ডটি প্রবেশ করান।
  • সিস্টেমটি পুনরায় বুট করুন এবং যখন আপনি নীল পর্দা দেখতে পাবেন তখন কোনও কী টিপুন (এমওকে পরিচালনা)
  • নিরাপদ বুট অবস্থা পরিবর্তন করুন নির্বাচন করুন
  • দ্বিতীয় ধাপে আপনি নির্বাচিত পাসওয়ার্ডটি প্রবেশ করান এবং এন্টার টিপুন।
  • শিম-স্বাক্ষরে সুরক্ষিত বুট অক্ষম করতে হ্যাঁ নির্বাচন করুন।
  • পুরো প্রক্রিয়াটি শেষ করতে এন্টার টিপুন।

আপনি এখনও শিম-সাইন ইন সিকিউর বুট সক্ষম করতে পারেন। শুধু মৃত্যুদন্ড কার্যকর করা

sudo আপডেট-নিরাপদ বুট-নীতি - সক্ষম এবং তারপরে উপরের পদক্ষেপগুলি অনুসরণ করুন

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