15.10 -> 16.04 एलटीएस उन्नयन के बाद लॉगिन टूट गया, जो कि NVIDIA ड्राइवर से संबंधित है


10

मैंने अभी-अभी अपने सिस्टम को 15.10 से 16.04 तक अपडेट किया है sudo do-release-upgrade। इस प्रक्रिया के दौरान, यह निम्नलिखित संदेश के साथ एक स्क्रीन प्रदर्शित करता है:

आपके सिस्टम में UEFI सिक्योर बूट सक्षम है। यूईएफआई सुरक्षित बूट तीसरे पक्ष के ड्राइवरों के उपयोग के साथ संगत नहीं है।

(...) उबंटू अभी भी आपके सिस्टम पर बूट करने में सक्षम होगा लेकिन ये तृतीय-पक्ष ड्राइवर आपके हार्डवेयर के लिए उपलब्ध नहीं होंगे।

UEFI सुरक्षित बूट अक्षम करें? (हाँ | नहीं)

चूंकि मैं केवल तीसरे पक्ष के ड्राइवरों का उपयोग कर रहा हूं जो कि NVIDIA ग्राफिक्स ड्राइवर हैं, और चूंकि वे Ubuntu 15.10 और सिक्योर बूट के साथ ठीक काम कर रहे हैं, इसलिए मैंने यहां "नहीं" विकल्प चुना। मुझे नहीं लगता कि मुझे बिना किसी अच्छे कारण के इसे अक्षम करना चाहिए, और मुझे लगा कि मैं अपडेट के बाद सिस्टम सेटिंग्स GUI के माध्यम से केवल तृतीय-पक्ष ड्राइवर को पुनर्स्थापित कर सकता हूं।

काश, नहीं। रिबूट होने पर, मेरी लॉगिन स्क्रीन बहुत कम रिज़ॉल्यूशन में दिखाई दी। जब इसमें लॉग इन करने की कोशिश की जाती है, तो तुरंत मुझे लॉगिन स्क्रीन पर वापस फेंक देता है।

मैंने स्थिति को ठीक करने के लिए निम्नलिखित प्रयास किए हैं:

sudo apt-get purge nvidia*
sudo reboot

यह बैंगनी स्क्रीन की ओर जाता है और Ctrl-Alt-F1 की कोई प्रतिक्रिया नहीं होती है। SSH के माध्यम से प्रवेश करना, मैंने तब किया:

sudo apt-get install nvidia-current
sudo reboot

जो फिर से मुझे एक बहुत कम-रेज लॉग स्क्रीन के साथ पूर्व परिदृश्य में लाता है, और लॉग ऑन करने का कोई तरीका नहीं है।

यह एक बहुत बुरा अपग्रेड अनुभव है। क्या किसी और के पास यह था, और मैं इसे ठीक करने के लिए क्या कर सकता हूं? (UEFI सिक्योर बूट को सक्षम रखते हुए) धन्यवाद।



वाह, यह बुरा है। अब तक मुझे पड़ा है: पीपीए के माध्यम से एनवीडिया -364 स्थापित करें, और सिक्योर बूट को अक्षम करें। अब चीजें काम करने लगती हैं, लेकिन न तो ड्राइवर ऑटो-अपडेट करेगा (यदि मैं गलत नहीं हूं), और न ही मैं सिक्योर बूट को फिर से सक्षम कर सकता हूं ...
kmhofmann

हाँ दुर्भाग्य से इस समय कोई अन्य विकल्प नहीं है। आप बुरा मत मानना ​​कि मैं इस प्रश्न को डुप्लिकेट के रूप में चिह्नित करता हूं।
१०:२

नहीं, मुझे कोई आपत्ति नहीं है।
किमीहॉमन

यह डुप्लिकेट नहीं है - कम से कम, पूरी तरह से नहीं। यह प्रश्न सुरक्षित बूट के नए मोड़ को जोड़ता है, जो "डुप्लिकेट" प्रश्न का हिस्सा नहीं है (हालांकि यह कुछ टिप्पणियों और उत्तरों में उल्लिखित है), और जो आगे ध्यान आकर्षित करता है।
रॉड स्मिथ

जवाबों:


8

उबंटू 15.10 के माध्यम से, उबंटू के सिक्योर बूट की हैंडलिंग GRUB पर बंद हो गई - अर्थात्, शिमोन के उबंटू संस्करण उबंटू को GRUB के संस्करण को लॉन्च करेगा, जो किसी भी लिनक्स कर्नेल को लॉन्च करेगा , चाहे वह हस्ताक्षरित हो या नहीं। यह सुरक्षित बूट के लिए समर्थन का एक बहुत ही कम बार था। तुलना के लिए, फ़ेडोरा का GRUB केवल हस्ताक्षरित लिनक्स कर्नेल लॉन्च करेगा, और फेडोरा की गुठली, जब उन्होंने पाया कि सिक्योर बूट सक्रिय था, केवल हस्ताक्षरित कर्नेल बायनेरिज़ को लोड करेगा। फेडोरा के अधिक मजबूत सिक्योर बूट सपोर्ट का उद्देश्य "दुष्ट" कर्नेल मॉड्यूल के खिलाफ सिस्टम की रक्षा करना था, जो सिद्धांत रूप में, कंप्यूटर को बहुत कम स्तर पर ले सकता था। Ubuntu 15.10 और पहले इस तरह की सुरक्षा का अभाव था।

16.04 से शुरू होकर, उबंटू एक सख्त सिक्योर बूट मॉड्यूल का अनुसरण करता है, फेडोरा काफी समय से क्या कर रहा है। इसके सुरक्षा लाभ हैं, लेकिन जैसा कि आपने देखा है, इसमें समस्याएं भी हैं। यदि किसी तृतीय-पक्ष ड्राइवर को क्रिप्टोग्राफ़िक कुंजी के साथ हस्ताक्षरित नहीं किया गया है जो लिनक्स कर्नेल का उबंटू संस्करण मान्य है, तो यह लोड नहीं होगा। यह ज्यादातर बंद-स्रोत एनवीडिया और एएमडी / एटीआई वीडियो ड्राइवरों को प्रभावित करता है, लेकिन ऐसे अन्य ड्राइवर हैं जो प्रभावित हो सकते हैं, भी।

इस समस्या के कई वर्कअराउंड हैं (या हो सकते हैं):

  • सुरक्षित बूट अक्षम करें - यह सबसे आसान समाधान है। आप शिम सेटिंग्स को एडजस्ट करके अपनी फर्मवेयर सेटिंग्स या (मुझे लगता है) के साथ मैकिंग करके इसे कर सकते हैं। (मुझे यकीन नहीं है कि यह शिम की सेटिंग्स को ट्विक करके कैसे किया जा सकता है, लेकिन मुझे पूरा यकीन है कि यह संभव है।)
  • तृतीय-पक्ष कर्नेल मॉड्यूल का उपयोग न करें - यदि आप अपने आप को उबंटू के मानक लिनक्स कर्नेल में शामिल स्रोत ड्राइवरों को खोलने के लिए प्रतिबंधित करते हैं, तो आपको ठीक होना चाहिए, क्योंकि Canonical ऐसे सभी ड्राइवरों (AFAIK) को संकेत देता है। ध्यान दें कि ऐसे ड्राइवरों का उपयोग करके बहुत अच्छा एनवीडिया समर्थन होना चाहिए; आपका सिस्टम शायद उप-इष्टतम ड्राइवरों पर वापस गिर गया क्योंकि यह सोचा था कि बंद-स्रोत ड्राइवर उपलब्ध थे। मुझे पता नहीं है कि एक से दूसरे में कैसे स्विच किया जाए, लेकिन यह सवाल एएमडी / एटीआई ड्राइवरों के साथ ऐसा करने के बारे में है, इसलिए यह एक उपयोगी शुरुआती बिंदु हो सकता है।
  • संबंधित मॉड्यूल पर हस्ताक्षर करें - सिद्धांत रूप में, वाणिज्यिक मॉड्यूल पर हस्ताक्षर करना खुद को उन्हें काम करना चाहिए। दुर्भाग्य से, मेरे पास यह करने के लिए निर्देशों के लिए कोई संकेतक नहीं है, और वास्तव में मुझे पूरी तरह से यकीन भी नहीं है कि यह स्टॉक उबंटू कर्नेल के साथ ऐसा करना संभव है; ऐसा कर्नेल केवल उन मॉड्यूल को सम्मानित कर सकता है जो कैन्यन की कुंजी के साथ हस्ताक्षरित हैं, जो निश्चित रूप से आपके पास नहीं है।
  • अपने कर्नेल को संकलित करें - यदि आप अपने स्वयं के कर्नेल को संकलित करते हैं, तो आप इसके विकल्प सेट कर सकते हैं जैसे कि आप फिट देखते हैं, जिसमें अहस्ताक्षरित मॉड्यूल लोड करने पर प्रतिबंध ढीला करना शामिल है। फिर आपको अपनी EFI कुंजी के साथ कर्नेल पर हस्ताक्षर करना होगा और उस कुंजी के सार्वजनिक संस्करण को अपनी MOK सूची में जोड़ना होगा। यहां एक प्रश्न और उत्तर के बारे में अपनी खुद की गिरी संकलन है।
  • पुराने GRUB पर स्विच करें - क्योंकि एक पुराना GRUB अहस्ताक्षरित गुठली लॉन्च करेगा, आप इस तरह के GRUB (Ubuntu 15.10 या उससे पहले) को स्थापित कर सकते हैं और इसे एक अहस्ताक्षरित कर्नेल लॉन्च कर सकते हैं। ध्यान दें कि पुराने GRUB को बनाए रखने के लिए दर्द होने की संभावना होगी।
  • एक बूट लोडर पर स्विच करें जो सुरक्षित बूट का सम्मान नहीं करता है - यदि आप अपनी खुद की कुंजी के साथ SYSLINUX या ELILO जैसे बूट लोडर पर हस्ताक्षर करना चाहते थे और उस कुंजी के सार्वजनिक संस्करण को अपनी MOK सूची में जोड़ते हैं, तो वह बूट लोडर सुरक्षित को अनदेखा कर देगा। बूट सेटिंग्स, GRUB के पुराने संस्करण की तरह। फिर आप एक अहस्ताक्षरित कर्नेल लॉन्च कर सकते हैं।

ध्यान दें कि इनमें से केवल दो विकल्प जो कि मैं 100% निश्चित हूं, सुरक्षित बूट को अक्षम करने या तृतीय-पक्ष कर्नेल मॉड्यूल से बचने के लिए काम करेंगे। मैं प्लेग जैसे तीसरे पक्ष के कर्नेल मॉड्यूल से बचता हूं, इसलिए मुझे एक सुरक्षित बूट वातावरण में उनका उपयोग करने के साथ कोई व्यक्तिगत अनुभव नहीं है। सुरक्षित बूट को अक्षम करने के अलावा, अपने स्वयं के कर्नेल का निर्माण कार्य के लिए सबसे अधिक संभावना हो सकती है, इसके बाद एक पुराने GRUB का उपयोग करके या एक बूट लोडर का उपयोग करके सुरक्षित बूट का सम्मान नहीं करता है। अपनी खुद की गिरी बनाना एक बार आम था, लेकिन कुछ लोग ऐसा करते हैं कि कोई और, और आधुनिक गुठली के साथ, एक कर्नेल को कॉन्फ़िगर करने का तरीका जानने के लिए समय निवेश, वास्तव में ऐसा करने का उल्लेख नहीं करना महत्वपूर्ण हो सकता है। एक पुराने GRUB या किसी अन्य बूट लोडर का उपयोग करना आसान हो सकता है, लेकिन आपको इसे स्थापित करने में सक्षम होने के लिए पर्याप्त जानना होगा।


2
* Ubuntu 14.04 का उपयोग करें जब तक कि यह समस्या ठीक न हो जाए। डेस्कटॉप पर लिनक्स अभी भी दृष्टि में नहीं होने के कई कारण हैं। इस तरह की बात वास्तव में लोगों को लिनक्स को अपनाने के लिए अधिक दर्दनाक बनाती है।
अंडर

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