दोहरे बूट सिस्टम में, BIOS किस बूटलोडर को चलाने के लिए चुनता है?


24

मेरे पास विंडोज और उबंटू का ड्यूल बूट है। जब मैं मशीन पर स्विच करता हूं, तो BIOS POST करता है और उसके बाद बूटलोडर शुरू होता है।

मैं यह समझना चाहता हूं कि BIOS किस बूट लोडर को चुनता है। मैं दोहरी बूट कंप्यूटर में BIOS और बूटलोडर के बीच चल रही प्रक्रिया को जानना चाहता हूं।


जवाबों:


40

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

यूईएफआई फर्मवेयर वास्तव में विभाजन और फाइल सिस्टम को समझता है, और यूईएफआई सिस्टम विभाजन प्रकार के लिए ड्राइव को स्कैन करता है। चूंकि यह एक फाइल सिस्टम है, इसलिए यहां कई बूट लोडर रखे जा सकते हैं। UEFI फर्मवेयर आपके लिए एक मेनू या अन्य तरीका प्रदान करने वाला है जो यह चुनने के लिए है कि कौन सा बूटलोडर प्रयोग किया जाता है।

कई यूईएफआई सिस्टम "लिगेसी मोड" में बूट हो रहे हैं - जहां यूईएफआई एक "कम्पेटिबिलिटी सर्विस मॉड्यूल" लोड करता है - ऐसा कुछ जो इसे BIOS की तरह दिखता है - और वास्तव में BIOS की तरह काम करता है।

GRUB एक सामान्य ओपन-सोर्स बूटलोडर है जो या तो लिनक्स या "चेनलोड" को बूट कर सकता है (विंडोज कंट्रोल को बूट के फोल्डर में आमतौर पर winload.exe)। GRUB आपको निर्णय लेने की क्षमता प्रदान करता है। GRUB कॉन्फ़िगरेशन फ़ाइलों को पढ़ सकता है और उनसे डिफ़ॉल्ट विकल्प ले सकता है।

यह पढ़ें यदि आप प्रचुर, गोर विवरण चाहते हैं।


यह एक कारण है कि, उबंटू पर, आपको sudoअनमाउंट डिस्क पर कुछ भी लिखने के लिए या रूट की आवश्यकता है ; यदि कोई प्रोग्राम या दुर्भावनापूर्ण उपयोगकर्ता बूट विभाजन के लिए मैलवेयर लिखता है ...
wizzwizz4

धन्यवाद लॉरेंस आपकी व्याख्या ने मेरी समझ को और अधिक स्पष्ट कर दिया है। धन्यवाद एक बार फिर से
प्रशांत सिंह

13

यह आरेख दिखाता है कि फर्मवेयर फर्मवेयर (BIOS या UEFI) से बूटलोडर तक और बूटलोडर से उबंटू में ऑपरेटिंग सिस्टम तक कैसे नियंत्रित होता है।

यहाँ छवि विवरण दर्ज करें
          BIOS बनाम UEFI

यदि OS को अलग-अलग मोड (BIOS और UEFI) में स्थापित किया गया था, तो डुअल बूटिंग विंडोज और उबंटू काम नहीं कर सकते हैं।


यूईएफआई मोड में उबंटू को परिवर्तित करना

  1. बूट-मरम्मत शुरू करें, और उन्नत विकल्प चुनें -> GRUB स्थान टैब।
  2. यदि आपको एक अलग / बूट / एफ़आईआई विभाजन विकल्प नहीं दिखता है , तो इसका मतलब है कि आपके पीसी में कोई यूईएफआई विभाजन नहीं है।
  3. यदि आपको एक अलग / बूट / एफ़आईआई विभाजन विकल्प दिखाई देता है, तो उसके बाईं ओर चेकबॉक्स में एक चेकमार्क डालें, फिर निचले दाएं कोने में स्थित लागू करें बटन पर क्लिक करें

    यूईएफआई मोड में उबंटू को परिवर्तित करना

  4. अपने BIOS को सेट करें ताकि वह UEFI मोड में हार्ड ड्राइव को बूट करे। इस सेटिंग को समायोजित करने का तरीका कंप्यूटर के विशिष्ट मॉडल पर निर्भर करता है, लेकिन आम तौर पर यह सेटिंग BIOS / UEFI सेटअप उपयोगिता के बूट टैब के तहत बूट प्राथमिकता सेटिंग्स में स्थित है ।


7

विरासत मोड में (BIOS बूट और UEFI नहीं) BIOS ड्राइव ऑर्डर को नियंत्रित करता है। एक समय यह केबलों द्वारा नियंत्रित किया जाता था; लेकिन एक BIOS सेटिंग को बदलने से बॉक्स और केबल को बदलते हुए धड़कता है।

पहली डिस्क (या BIOS द्वारा नियंत्रित ड्राइव क्रम) के पहले सेक्टर (512 एमबी डिस्क जिसे एमबीआर या मास्टर बूट रिकॉर्ड कहा जाता है) में BIOS लोड (स्मृति में) और फिर इस 'बूटलोडर' पर नियंत्रण (सीपीयू) पास करता है। इस प्रकार BIOS ने अपना काम पूरा कर लिया है और पहले सेक्टर में कोड चलता है।


SORRY सर, लेकिन मैं थोड़ा भ्रमित हूं क्योंकि bios बूट लोडर और विंडो को कंट्रोल देता है और linux में अलग बूट लोडर होता है जिससे बूट लोडर इसे नियंत्रित करता है। प्रक्रिया बायोस बूट लोडर का चयन करने के लिए गुजरता है
प्रशांत

2
आपके सिस्टम में प्रति डिस्क में केवल एक बूट लोडर हो सकता है (और केवल एक कभी सक्रिय होता है)। आमतौर पर, यदि आपके पास अपने सिस्टम पर दो ऑपरेटिंग सिस्टम हैं, तो दूसरा स्थापित बूट-लोडर का मालिक है क्योंकि उसने एमबीआर में अपना कोड लिखा था। यही कारण है कि GNU / Linux (Ubuntu) GRUB का उपयोग करता है; इसका मल्टी-स्टेप सिस्टम (स्टेप 1 MBR है, स्टेप 1.5 & 2 / बूट में पाए जाते हैं) जो मेन्यू पूछते हैं कि आप किस ओएस को लोड / रन करना चाहते हैं (वैसे भी ग्रब के बारे में जानते हैं, साथ ही जो भी आईएसओ आपके पास है) इसमें जोड़ा गया)। यदि आपके पास दो डिस्क ड्राइव हैं; आपके पास प्रत्येक ड्राइव पर एक बूट लोडर हो सकता है, लेकिन BIOS यह निर्धारित करेगा कि कौन चलेगा।
11

इसलिए अगर मेरे कंप्यूटर में 2 ऑपरेटिंग सिस्टम है तो क्या यह जरूरी है कि GRUB मेन्यू पूछेगा कि मैं किस ओएस को लोड करना चाहता हूं, क्यों नहीं विंडो का बूट लोडर उस मेन्यू को डालें क्योंकि मेरे कंप्यूटर में दोनों ओएस हैं।
प्रशांत सिंह

विंडोज़ में बूट लोडर भी है (वैसे भी विस्टा तक); लेकिन यह उतना स्मार्ट नहीं है जितना कि ग्रब है। विंडोज संस्करण गैर-एमएसएफटी उत्पादों की खोज नहीं करता है (और ext / reiserfs / xfs / zfs / btrfs / ... नहीं पढ़ सकता है) इस प्रकार आपको अपने आप को * nix जोड़ना होगा; और अगला अपडेट ..... विंडोज वर्जन उपयोग करने लायक नहीं है क्योंकि ग्रब इतना बेहतर है। अगर विंडोज एक ड्राइव पर था, तो उबंटू दूसरे पर आप BIOS द्वारा बूट को बदल सकते थे; लेकिन ग्रब तेज़ / आसान है। (यदि मेरे उत्तर से खुश हैं, तो इसे प्रश्न को स्वीकार करने के लिए स्वीकार करें)
गूलर

3
@ राष्ट्रसिंह: विंडोज बूट लोडर ऐसा करने का सबसे बुनियादी कारण (या जब मुझे विंडोज के बारे में कुछ पता था तो वापस नहीं आया) यह है कि माइक्रो सॉफ्ट आपको अन्य ऑपरेटिंग सिस्टम चलाने की अनुमति नहीं देता है।
jamesqf
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.