UEFI लैपटॉप से ​​GRUB की स्थापना रद्द करना


9

मैंने विंडोज 8 के साथ उबंटू स्थापित किया, हालांकि उबंटू को अनइंस्टॉल करने का फैसला किया है।

पहले मैंने पार्टेड मैजिक में बूट किया और, GParted का उपयोग करके सभी ext4 और स्वैप विभाजन को हटा दिया।

इससे पहले कि मैं उबंटू स्थापित करता हूं, उसी विभाजन के साथ मुझे छोड़ देता है:

/dev/sda1 ntfs WINRE_DRV
/dev/sda2 fat32 SYSTEM_DRV (my UEFI partition)
/dev/sda3 fat32 LRS_ESP
/dev/sda4 unknown Microsoft Reserved Partition
/dev/sda5 ntfs Windows8_OS
/dev/sda6 ntfs LENOVO
/dev/sda7 ntfs PBR_DRV

मुझे उम्मीद थी कि उबटन को हटाने के लिए विभाजन हटाने के लिए पर्याप्त होगा और मुझे विंडोज 8 में वापस बूट करने की अनुमति देगा, लेकिन जब भी मैं बूट करता हूं मुझे निम्नलिखित त्रुटि मिलती है:

error: no such partition.

जिसके बाद GRUB बचाव:

grub rescue>

मेरे यूईएफआई विभाजन में, दो निर्देशिकाएं हैं BOOTऔर EFI। में BOOTएक एकल फाइल है - boot.sdi। में EFIनिर्देशिका एक और दो निर्देशिकाओं कर रहे हैं, BOOTऔर Microsoft। अंदर BOOTदो फाइलें हैं, bkpbootx64.efiऔर bootx64.efiMicrosoftनिर्देशिका एक निर्देशिका में यह नाम दिया है Boot। इसके अंदर सामान्य Microsoft EFI फाइलें हैं (जहाँ तक मैं बता सकता हूँ)।

यह सोचकर कि अभी भी GRUB फाइलें बची हैं, मैं भाग गया find . -iname "*grb*"और find . -iname "*grub*"UEFI विभाजन में, हालांकि केवल एक खाली फाइल मिली, bootx64.efi.grb(जिसे मैंने हटा दिया)।

GRUB अभी भी कैसे स्थापित है, और मैं इसे कैसे अनइंस्टॉल कर सकता हूं?

मैं यूईएफआई के लिए बहुत नया हूं और इसलिए चीजों को विस्तार से बताया जा सकता है। कंप्यूटर एक Lenovo IdeaPad Z580 है।

संपादित करें: मैं उल्लेख करना भूल गया, मैंने ubuntuUEFI विभाजन में फ़ोल्डर को हटा दिया ।

संपादन 2: मैं लैपटॉप की BIOS सेटिंग्स में "सिस्टम रिकवरी" विकल्प के माध्यम से विंडोज में वापस आने में कामयाब रहा। यह समस्या हल हो भी सकती है और नहीं भी।

संपादन 3: ठीक है, मैं अब लगभग सामान्य रूप से बूट कर सकता हूं। जब मैं बूट करता हूं, तो मैं No partition activeकुछ सेकंड के लिए देखता हूं फिर विंडोज बूट। मैं उसे कैसे हटा सकता हूं?

जवाबों:


28

मुझे लगता है कि आपने समस्या को ठीक कर लिया है, लेकिन मैं यह बताना चाहता हूं कि क्या गलत हुआ और इसे कैसे ठीक किया जाना चाहिए (दोनों अंत उपयोगकर्ताओं और उबंटू के डेवलपर्स द्वारा)।

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

दूसरा, आपके द्वारा उल्लिखित फ़ाइलनामों के आधार पर, आपको लगता है कि कुछ बिंदु पर उबंटू का बूट रिपेयर टूल है। यह उपकरण स्वचालित रूप से विंडोज बूट लोडर का नाम बदल देता है EFI/Microsoft/Boot/bootmgfw.efi, और इसके स्थान पर GRUB की एक प्रति लगाता है। यह EFI फ़ॉलबैक बूट लोडर के साथ एक ही काम करता है EFI/BOOT/bootx64.efi, और GRUB की एक और प्रति को EFI/Microsoft/Boot/bootx64.efiउन कारणों से छोड़ता है, जिन कारणों से मैं थाह का दावा नहीं करता। यह मुट्ठी भर EFI में बग के लिए एक समाधान के रूप में किया जाता है। परेशानी यह है कि बूट रिपेयर डिफ़ॉल्ट रूप से ऐसा करता है अधिकांश कंप्यूटरों पर, यह नहीं हैज़रूरी। जब यह बूट कॉन्फ़िगरेशन में परिवर्तन करने के लिए बाद में वांछनीय होता है, तो GRUB का यह नाम बदलना और प्रतिकृति एक जटिलता बन जाता है, क्योंकि उपयोगकर्ताओं को यह अनुमान लगाने के लिए छोड़ दिया जाता है कि क्या चल रहा है। इसलिए, बूट रिपेयर के डेवलपर्स को उनकी मरम्मत के बारे में जानकारी के लिए शर्मिंदा होना चाहिए। (उनके बचाव में, हालांकि, बूट रिपेयर के लिए मज़बूती से यह पता लगाना बहुत मुश्किल होगा कि उन कंप्यूटरों में बग्स हैं जिनके लिए डिफ़ॉल्ट रूप से बूट फ़ाइलों को स्थानांतरित करने की आवश्यकता होती है।)

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

इन सभी कारकों को जोड़ दें, और मूल समस्या का सबसे सरल समाधान बन जाता है:

  1. बूट रिपेयर टूल के परिवर्तनों को पूर्ववत करें। यह बूट मरम्मत उपकरण का उपयोग करके किया जा सकता है; इसमें एक उन्नत विकल्प मेनू है जिसमें "पुनर्स्थापना ईएफआई बैकअप" नामक एक चेक-बॉक्स है। उस का उपयोग करें और GRUB की कई प्रतियां हटा दी जाएंगी और विंडोज के बूट लोडर को बहाल कर दिया जाएगा। वैकल्पिक रूप से, यह मैन्युअल रूप से किया जा सकता है। सबसे महत्वपूर्ण बात, ईएसपी पर बूट रिपेयर के कुछ संस्करणों को bootmgfw.efi(शायद कहा जाता है bkpbootmgfw.efi, हालांकि बूट रिपेयर के कुछ संस्करणों ने अन्य नामों का उपयोग किया है) को कॉपी किया जाना चाहिए EFI/Microsoft/Boot/bootmgfw.efi
  2. अपने आधिकारिक / उचित स्थान पर GRUB को हटाएं - EFI/ubuntu/grubx64.efiउबंटू के लिए। यदि सुरक्षित बूट सक्रिय था, EFI/ubuntu/shimx64.efiतो इसके बजाय हटाना आवश्यक होगा। वास्तव में, पूरी EFI/ubuntuनिर्देशिका को हटाना , या कम से कम इसका नाम बदलकर किसी भी मामले में काम करना होगा।

बस। उन दो चीजों को पूरा करने के साथ, EFI उबंटू बूट विकल्प को छोड़ देगा क्योंकि यह अब मान्य नहीं है और बूट विंडोज पर जाता है। कुछ EFI अपने बूट प्रबंधकों के मेनू से स्वचालित रूप से उबंटू बूट विकल्प को भी हटा देंगे, हालांकि यह अभ्यास सार्वभौमिक नहीं है।

ध्यान दें कि आपके मामले में, मैथ्यू, मैं इन चीजों को करने की सलाह नहीं देता; आपको एक वर्किंग कॉन्फ़िगरेशन मिला है, और जैसा कि वे कहते हैं, "अगर यह टूट नहीं गया है, तो इसे ठीक न करें।" आपके पास अपने ईएसपी पर कुछ आवारा फाइलें रह सकती हैं, लेकिन वे कोई नुकसान नहीं कर रहे हैं, इसलिए इसे केवल अकेले छोड़ना सबसे अच्छा है। मैंने अपना उत्तर इस उम्मीद में प्रस्तुत किया है कि कोई और इसे उपयोगी समझेगा।


संपादित करें: जब मैंने पहली बार इसे लिखा था तो उपरोक्त सही था, और सिद्धांत समान हैं; हालाँकि, बूट रिपेयर स्वतः Windows बूट लोडर का नाम नहीं देता है और इसे GRUB की दूसरी प्रति से बदल देता है। (बूट मरम्मत यह वैकल्पिक रूप से कर सकता है , लेकिन विकल्प को एक उन्नत विकल्प मेनू पर दफन किया जाता है, इसलिए यह अब डिफ़ॉल्ट रूप से नहीं किया जाता है।) यह तथ्य इस समस्या से उबरना आज 2013 की तुलना में आसान बनाता है। ज्यादातर मामलों में, आपको केवल आवश्यकता है EFI/ubuntuESP पर डायरेक्ट्री को डिलीट करके सिस्टम बूट को सीधे विंडोज में करें। यदि GRUB आपके ऐसा करने के बाद भी दिखाई देता है, तो आपने बूट रिपेयर विकल्प का उपयोग बूट फ़ाइलों के बैकअप और नाम बदलने के लिए किया होगा, जिस स्थिति में इसका उपयोग उन कार्यों को पूर्ववत करने के लिए किया जाता है, जैसा कि पहले उल्लेख किया गया है।

एक अन्य विकल्प कंप्यूटर के अंतर्निहित बूट प्रबंधक का उपयोग करना है (आमतौर पर कंप्यूटर को चालू करने के बाद एक फ़ंक्शन कुंजी, Esc, या जल्द ही दर्ज करें) को GRUB और बूट को Windows से बायपास करने के लिए एक्सेस किया जाता है। फिर आप बूट ऑर्डर को समायोजित करने और / या बूट सूची से प्रविष्टि को हटाने के लिए EasyUEFI का उपयोग कर सकते हैं ubuntu। यह क्रिया GRUB को ESP से नहीं हटाएगी, लेकिन यह GRUB को बायपास कर देगी।


इस उत्तर के लिए धन्यवाद! यह समस्या को बहुत अच्छी तरह से समझाता है। मैं वास्तव में बूट मरम्मत चला गया था, लेकिन इस सवाल में शामिल करना भूल गया। मैंने इसे उत्तर के रूप में चिह्नित किया है क्योंकि यह निश्चित रूप से भविष्य में किसी की मदद कर सकता है और समस्या को ठीक करने का एक बहुत साफ तरीका है।
टॉरवो

मुझे देर हो रही है, लेकिन मैं वैसे भी पूछूंगा; आपने कहा कि यह GRUB के साथ डिफ़ॉल्ट EFI बूटलोडर को भी बदलता है। क्या इसे पुनर्प्राप्त करने का कोई तरीका है, यह मानते हुए कि यह अभी भी उबंटू 18.04 इंस्टॉलर के साथ बदल दिया गया है?
ज़ो

3

मुझे पता है कि यह धागा पुराना है, लेकिन मैं अपनी खोज में इस समस्या को हल करने की कोशिश में आया था, और मुझे एक ऐसा समाधान मिला, जो मेरे लिए काम करता था जब अन्य उत्तरों में से कोई भी ऐसा नहीं था जिसे मुझे साझा करने की आवश्यकता थी!

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

लेकिन सभी मैंने किया था F12 जब कंप्यूटर बूट विकल्प में जाने के लिए बूट कर रहा था । और अन्य विकल्पों के तहत मैंने BIOS सेटअप का चयन किया । बाईं ओर मैंने बूट अनुक्रम का चयन किया और वहीं पर इसने मेरे विभिन्न बूट विकल्पों को सूचीबद्ध किया, और मैं उनका क्रम बदलने के लिए या उन्हें हटाने या जो भी मैं चाहता था, उन्हें चुन सकता था। मुझे बस इतना करना था कि केवल "उबंटू" चिह्नित किया गया था, और फिर मैंने डिलीट बूट पर क्लिक किया और बाहर निकल गया। यह लॉग-इन स्क्रीन के लिए जारी रहा और मैंने अपने लैपटॉप को दोबारा जांचने के लिए फिर से शुरू किया, इससे मेरी समस्या हल हो गई और यह हो गया!


लगता है कि इंटरनेट नॉन-यूफ़ी के समाधान से भरा है, लेकिन यह सिर्फ काम करता है!
पीटर लेहेंहर्ट

1

ठीक है, इसलिए यह मेरे द्वारा मान लिए गए प्रत्येक कंप्यूटर के लिए काम नहीं करेगा, लेकिन यह वही है जो मेरे लिए तय किया गया है

सबसे पहले, मैंने अपने लैपटॉप पर BIOS विकल्पों के माध्यम से "सिस्टम रिकवरी" को बूट किया। इसने मुझे विंडोज में आने की अनुमति दी, हालाँकि जब भी मैंने उसके बाद बूट किया तो मुझे एक संदेश मिला जो No partition activeकि विंडोज़ बूट होने से पहले एक सेकंड के लिए कह रहा था । मैंने निम्नलिखित कार्य करके इससे छुटकारा पाया:

  1. विंडोज में बूटिंग
  2. SHIFT + "पुनः प्रारंभ करें" क्लिक करना
  3. समस्या निवारण
  4. उन्नत
  5. सही कमाण्ड
  6. चल रहा है bootrec.exe /fixmbr

और रिबूट करना। अब संदेश दिखाई नहीं देता है और सब कुछ सामान्य लगता है।


1

मैंने जो किया वह यह है कि उबंटू को अनइंस्टॉल करने के बाद आप कुछ अनइंस्टॉलर्स के साथ ऐसा कर सकते हैं, या केवल उबंटू लाइव सीडी या यूएसबी स्टिक में बूट करके और GParted के साथ लिनक्स विभाजन प्रारूपित कर सकते हैं- मैंने EFI विभाजन को भी स्वरूपित किया (FAT32) और फिर किया विंडोज इंस्टॉलेशन डिस्क से विंडोज बूट रिकवरी।

मुझे उल्लेख करना है कि मैंने दर्जनों सलाह और ट्यूटोरियल पढ़े और काम न करने वाले तरीकों के साथ समय गंवा दिया। अंत में मैंने वही किया जो मुझे लगता है कि मेरे लिए be4 को फिर से इंस्टॉल करना विंडोज़ के लिए तर्कसंगत था और यह एक आकर्षण की तरह काम करता था।


1

सरफेस प्रो पर, यूईएफआई मेनू से "री-इंस्टॉल सेफ़ बूट कीज़" विकल्प का चयन करके ग्रब 2 को दरकिनार करना संभव है।


आपको इससे आगे के विकल्पों के साथ थोड़ा फील करना पड़ सकता है - मुझे लगता है कि मुझे "केवल विंडोज़ कीज़ की अनुमति दें" जैसा कुछ कहना था। मुझे अभी भी अमान्य बूट कॉन्फिग के बारे में एक संदेश मिलता है, लेकिन यह बाद में बूट करना जारी रखेगा।
bbarker
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.