यह बग नहीं है, यह एक विशेषता है।
जैसा कि एंथनी वोंग कहते हैं, जब आप एक डीकेएमएस पैकेज स्थापित करते हैं, तो आप पैकेज को स्वयं संकलित कर रहे हैं, इस प्रकार, कैननिकल आपके लिए मॉड्यूल पर हस्ताक्षर नहीं कर सकता है।
हालाँकि, आप निश्चित रूप से सुरक्षित बूट का उपयोग कर सकते हैं, हालाँकि यह वास्तव में उपयोग का मामला है जहाँ सुरक्षित बूट आपको अपने आप से बचाने की कोशिश कर रहा है क्योंकि यह नहीं जान सकता कि आप किसी मॉड्यूल पर भरोसा करते हैं या नहीं।
डिफ़ॉल्ट रूप से , आपके UEFI मशीन पर एक प्लेटफ़ॉर्म कुंजी (PK) है, जो आपके प्रोसेसर में कोड लोड करने के लिए अंततः विश्वसनीय प्रमाणपत्र प्राधिकरण है।
GRUB, या शिम, या अन्य बूट तंत्र डिजिटल रूप से एक KEK द्वारा हस्ताक्षरित किए जा सकते हैं जो रूट CA (PK) द्वारा विश्वसनीय है, और इस प्रकार आपका कंप्यूटर बिना किसी कॉन्फ़िगरेशन के बूट सॉफ्टवेयर जैसे Ubuntu Live USB / DVD।
उबंटू 16.04 पर कर्नेल CONFIG_MODULE_SIG_FORCE = 1 के साथ बनाया गया है, जिसका मतलब है कि कर्नेल मॉड्यूल को प्लेटफॉर्म में एक विश्वसनीय कुंजी द्वारा हस्ताक्षरित करने के लिए लागू करेगा । ध्यान रखें कि डिफ़ॉल्ट रूप से UEFI प्लेटफ़ॉर्म में एक PK होता है जिस पर आपका कोई नियंत्रण नहीं होता है, और इस प्रकार आप बायनेरिज़ को अपनी मशीन द्वारा मान्यता प्राप्त कुंजी के साथ साइन नहीं कर सकते हैं।
कुछ लोग इसके खिलाफ बकवास और शेखी बघारते हैं, लेकिन वास्तव में इससे बेहतर तरीका (सुरक्षा के नजरिए से) नहीं है, बल्कि खुद से है जो आप चाहते हैं कि नई कुंजी का नामांकन करें।
यदि आपका बूट सिस्टम शिम का उपयोग करता है, तो आप मशीन मालिक के कुंजी डेटाबेस नामक किसी चीज का उपयोग कर सकते हैं, और अपनी कुंजी को MOK के रूप में नामांकित कर सकते हैं (आप ऐसा कर सकते हैं mokutil के साथ)। यदि आप नहीं करते हैं, तो आप यूईएफआई डेटाबेस में अपनी कुंजी को एक हस्ताक्षर कुंजी के रूप में भी नामांकित कर सकते हैं ।
अपनी कुंजी दर्ज करने के बाद, आप अपने MOK के साथ अपने DKMS- निर्मित पैकेज पर हस्ताक्षर कर सकते हैं (इसमें एक पर्ल स्क्रिप्ट होनी चाहिए /usr/src/kernels/$(uname -r)/scripts/sign-file
), और इसके हस्ताक्षरित होने के बाद, आप इसे कर्नेल में लोड कर सकते हैं ।
दी गई है, किसी को इस पर अधिक दृश्य निर्देश बनाने चाहिए, और संभवतया कुंजियों या एक बेहतर डीकेएमएस मानक भी बनाना चाहिए ताकि चाबियों को ध्यान में रखा जा सके, लेकिन अब हमारे पास यही है।
आप इस स्पष्टीकरण का उल्लेख अपने स्वयं के कर्नेल मॉड्यूल पर हस्ताक्षर करने के तरीके पर कर सकते हैं: https://askubuntu.com/a/768310/12049