एक EFI सिस्टम विभाजन पर कई बूट लोडर कैसे काम करते हैं


14

मेरा ईएसपी इस तरह दिखता है

Boot Dell fedora Microsoft

बूट डायरेक्टरी में, उनका बूट-लोडर है bootx64.efiजिसे मैं समझता हूं कि डिफ़ॉल्ट बूट लोडर है जो पहले शुरू हो जाता है। लेकिन फेडोरा निर्देशिका में नाम का एक और बूट-लोडर (ग्रब 2) है grubx64.efi

इनमें से प्रत्येक बूट-लोडर का कार्य क्या है? कौन सा प्रदान करता है boot-menu?



क्या इसका सुरक्षित बूट से कोई लेना-देना नहीं है?
user3247608

यह विंडोज़ 8 लाइसेंस से संबंधित है।
PersianGulf

शायद मुझे सवाल में यह स्पष्ट करना चाहिए था - मशीन पर सुरक्षित बूट अक्षम है। प्रश्न का विंडोज़ 8. से कोई लेना-देना नहीं है
user3247608

जब win8 और सुरक्षित बूट कहानी बोल्ड थी, तो ग्रब और कुछ बूट लोडर में कुछ फाइलें होती हैं।
फारसी सल्फ

जवाबों:


17

bootx64.efiपहले शुरू नहीं होता है। ज्यादातर समय, यह बिल्कुल भी शुरू नहीं होता है।

EFI फर्मवेयर का अपना "बूट मेनू" है, जो GRUB द्वारा प्रस्तुत मेनू के अनुरूप है लेकिन बूट प्रक्रिया में पहले चरण में है। जिस प्रकार GRUB आपको लिनक्स को चलाने के लिए चुनने की सुविधा देता है, EFI बूट मेन्यू आपको चुनने देता है कि कौन सा EFI बूट प्रोग्राम चलाना है - GRUB जैसी चीजों या Windows बूटलोडर के विकल्प। (और, GRUB के मेनू की तरह, EFI बूट मेनू आमतौर पर डिफ़ॉल्ट रूप से नहीं दिखाया जाता है; आपको इसे देखने के लिए स्टार्टअप के दौरान एक हॉटकी दबाना होगा।)

EFI बूट मेनू में प्रविष्टियां कॉन्फ़िगरेशन डेटा द्वारा परिभाषित की जाती हैं जो मदरबोर्ड के NVRAM ("BIOS सेटिंग्स" मेमोरी) में संग्रहीत होती हैं। यह कॉन्फ़िगरेशन किसी फ़ाइल में संग्रहीत नहीं है, लेकिन फेडोरा में आपको efibootmgrप्रोग्राम का उपयोग करके इसे देखने में सक्षम होना चाहिए । प्रत्येक प्रविष्टि एक मानव पठनीय नाम (मेनू में दिखाने के लिए) और एक EFI सिस्टम विभाजन में बूट प्रोग्राम के लिए एक पथ, साथ ही एक प्राथमिकता संख्या निर्धारित करती है कि कौन सा प्रविष्टि डिफ़ॉल्ट रूप से बूट किया जाता है जब आप हॉटकी नहीं दबाते हैं मेनू देखने के लिए।

ये NVRAM बूट प्रविष्टियाँ (आमतौर पर) ऑपरेटिंग सिस्टम इंस्टॉलरों द्वारा बनाई गई हैं। जब आप एक OS स्थापित करते हैं और यह EFI सिस्टम विभाजन में एक बूटलोडर फ़ाइल रखता है, तो यह NVRAM कॉन्फ़िगरेशन में एक प्रविष्टि भी जोड़ता है, ताकि नया बूटलोडर EFI बूट मेनू में उपलब्ध होगा। (कई मामलों में, यह उस नई प्रविष्टि को भी डिफ़ॉल्ट बनाता है, जिससे आपके द्वारा अभी स्थापित किया गया OS बिना EFI बूट मेनू को खोलने और मैन्युअल रूप से इसे चुनने की आवश्यकता के बिना अपने आप बूट हो जाएगा।)

Boot/bootx64.efiजब EFI डिस्क पर अन्य बूट प्रोग्राम को संदर्भित करता है किसी भी NVRAM बूट प्रविष्टियों के साथ कॉन्फ़िगर नहीं किया गया है, तो यह प्रोग्राम एक गिरावट है। यह बूट करने योग्य सीडी और यूएसबी ड्राइव जैसे हटाने योग्य मीडिया के लिए महत्वपूर्ण है, लेकिन हार्ड ड्राइव पर, इसका आमतौर पर उपयोग नहीं किया जाता है। विंडोज इंस्टॉलर Boot/bootx64.efiएक असफल-सुरक्षित बनाता है ; यह सिर्फ एक प्रति है Microsoft/Boot/bootmgfw.efi(कम से कम विंडोज 7 में; मुझे अन्य संस्करणों के बारे में पता नहीं है)।

अपने सिस्टम पर, मैंने उस Microsoft bootx64.efiको EFI शेल की एक प्रति के साथ बदल दिया है , ताकि अगर मैं किसी तरह से बिना किसी NVRAM बूट प्रविष्टियों के खुद को ढूंढ लूं और वास्तव में फॉलबैक बूटलोडर पर निर्भर रहूं, तो मैं एक शेल में गिरा हूं जहां मैं स्थिति की जांच कर सकता हूं और सिस्टम को स्वचालित रूप से बूट करने के बजाय अन्य बूट प्रोग्रामों में से एक को मैन्युअल रूप से चलाएं। (मैंने GRUB मेनू में इसके लिए एक प्रविष्टि भी जोड़ी है ताकि मेरे पास सिस्टम ठीक से काम न करने पर भी EFI शेल को शुरू करने का विकल्प हो।)

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