विंडोज़ सहित अधिकांश OS इंस्टॉलेशन एक बूट मोड (BIOS / CSM / विरासत या EFI / UEFI) में किए जाते हैं। दूसरे बूट मोड पर स्विच करने के लिए एक नया बूट लोडर स्थापित करने की आवश्यकता होती है, और अक्सर विभाजन तालिका प्रकार (एमबीआर को जीपीटी या इसके विपरीत) में बदलना होता है। एक बूट मोड से दूसरे में जल्दी से स्विच करना लिनक्स के साथ संभव है, जो बहुत लचीला है; लेकिन मैंने विंडोज के साथ सफल डायनामिक बूट-मोड स्विचिंग के बारे में कभी नहीं सुना है।
विचार करने के लिए एक दूसरा मुद्दा यह है कि ओएस के पार बूट मोड को समन्वयित करना लगभग हमेशा सबसे अच्छा होता है। यही है, अगर विंडोज को ईएफआई मोड में बूट करने के लिए कॉन्फ़िगर किया गया है, तो आपको ईएफआई मोड में भी लिनक्स स्थापित करना चाहिए; और अगर विंडोज BIOS मोड में है, तो आपको लिनक्स को BIOS मोड में भी इंस्टॉल करना चाहिए। अन्यथा करना संभव है, लेकिन अतिरिक्त घेरा-कूद की आवश्यकता है।
ज्यादातर मामलों में, विंडोज कंप्यूटर पर स्थापित पहला ओएस है। इस प्रकार, आपको विंडोज बूट मोड का निर्धारण करना चाहिए। यह आम तौर पर विभाजन तालिका प्रकार से जुड़ा होता है: Windows BIOS- मोड बूट लोडर MBR को समझता है लेकिन GPT को नहीं, और Windows EFI- मोड बूट लोडर GPT को देखना पसंद करता है। आप आसानी से लिनक्स में अपने विभाजन तालिका प्रकार की जांच कर सकते हैं:
$ sudo parted -l | grep Table
Partition Table: gpt
यदि आपको आउटपुट की कई लाइनें मिलती हैं, तो इसका मतलब है कि आपको कई डिस्क मिल गई हैं। (रिमूवेबल डिस्क काउंट, इसलिए उन्हें पहले हटा दें।) एक GPT डिस्क प्रकार के रूप में दिखाई देती है gpt
और एक MBR डिस्क प्रकार के रूप में दिखाई देती है msdos
। इस जानकारी का उपयोग करते हुए, आपको पता होना चाहिए कि विंडोज को बूट कैसे किया जाना चाहिए। यदि आपको कई डिस्क मिल गए हैं और वे अलग-अलग प्रकार के हैं, तो आपको विंडोज बूट डिस्क के प्रकार का पता लगाना होगा ।
यदि आपने लिनक्स को गलत मोड में स्थापित किया है, तो समाधान लिनक्स के लिए एक उपयुक्त बूट लोडर स्थापित करना है। ऐसा लगता है कि आपको एक BIOS-मोड विंडोज इंस्टॉल मिल गया है लेकिन आप Ubuntu को EFI मोड में स्थापित करने के लिए मनाने में कामयाब रहे हैं। (इसके लिए कुछ तप की आवश्यकता होती है, लेकिन किया जा सकता है।) यदि हां, तो आपको grub-pc
पैकेज स्थापित करना चाहिए , जो प्रतिस्थापित करेगा grub-efi
, फिर sudo grub-install /dev/sda
GRUB को स्थापित करने के लिए चलाएं । तुम भी एक करने की आवश्यकता हो सकती है update-grub
। वैकल्पिक रूप से, बूट रिपेयर प्रोग्राम को यह सब स्वचालित रूप से करना चाहिए, लेकिन आपको इसे उचित बूट मोड से चलाना चाहिए, जिसका अर्थ हो सकता है कि राइट बूट मोड में आपातकालीन डिस्क को बूट करना।
यदि आप चलाते हैं parted
और पाते हैं कि आपका विभाजन तालिका प्रकार MBR के बजाय GPT है, तो कुछ और चल रहा है - संभावना है कि GRUB ने आपके विंडोज बूट लोडर को गलत पहचान दिया है। इस मामले में, मरम्मत के लिए एक विशिष्ट सुझाव देने के लिए मुझे और जानकारी की आवश्यकता होगी। RESULTS.txt
द्वारा उत्पन्न फ़ाइल बूट जानकारी स्क्रिप्ट उपयोगी होगा। इसे एक पास्टबिन साइट पर पोस्ट करें और अपने दस्तावेज़ में URL यहाँ पोस्ट करें।
संपादित करें:
आपके बूट इन्फो स्क्रिप्ट आउटपुट के आधार पर, आपको एक जीपीटी डिस्क मिली है, और आपके किसी भी विभाजन पर या आपके एमबीआर में स्थापित किसी भी BIOS-मोड विंडोज बूट लोडर का कोई सबूत नहीं है। इसके अलावा, विभाजन लेआउट एक एफआईआई मोड में पहले से इंस्टॉल किए गए विंडोज के साथ क्या करता है, इसके अनुरूप है। इस प्रकार, यह संभावना नहीं है कि विंडोज BIOS / CSM / विरासत मोड में बूट हो रहा है, जैसा कि आप अपने प्रश्न की शुरुआत में बताते हैं। मुझे संदेह है कि आपने CSM को अपने फर्मवेयर और विंडोज बूट में सक्षम किया है, इसलिए आपने गलती से मान लिया है कि विंडोज BIOS मोड में बूट हो रहा है। यह एक अनुचित निष्कर्ष है, जिन कारणों से मैं इस वेब पेज पर व्याख्या करता हूं ।बूट प्रक्रिया को सरल बनाने के लिए, मैं आपको अपने फर्मवेयर में CSM (उर्फ "विरासत समर्थन" या कुछ इसी तरह) को अक्षम करने की सलाह देता हूं, कम से कम परीक्षण के लिए। जब भी आप एक नया डिवाइस बूट करते हैं (OS इंस्टॉलर की तरह), तो आप बूट मोड के लिए पासा फेंक देते हैं।
OTOH, बूट इन्फो स्क्रिप्ट भी EFI- मोड विंडोज बूट लोडर के साक्ष्य को चालू करने में विफल रहा है। कभी-कभी यह इस कार्य में असफल हो जाता है, जिन कारणों से मुझे समझ में नहीं आता है; लेकिन यह भी संभव है कि फाइलें गायब हैं। आप उन्हें "हाथ से देखना" चाह सकते हैं। सबसे महत्वपूर्ण फ़ाइल EFI/Microsoft/Boot/bootmgfw.efi
ईएसपी पर है - अर्थात्, /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi
उबंटू से।
आपका बूट जानकारी स्क्रिप्ट आउटपुट इंगित करता है कि GRUB के EFI- मोड और BIOS-मोड दोनों संस्करण स्थापित हैं, और आपकी GRUB कॉन्फ़िगरेशन फ़ाइल (संभवतः गैर-मौजूद) EFI- मोड विंडोज बूट लोडर को चेनलोड करने के लिए सेट है।
कुल मिलाकर, मेरा सुझाव है कि आप यह कोशिश करें:
- विंडोज में बूट करें जो भी आप कर सकते हैं और विंडोज (फर्मवेयर नहीं) को अक्षम कर सकते हैं जिसे "फास्ट स्टार्टअप" कहा जाता है, जैसा कि यहां वर्णित है। यह सुविधा, यदि सक्षम है, दोहरे बूट कॉन्फ़िगरेशन पर परेशानी के अलावा कुछ नहीं करता है, और यह कम से कम आपकी कुछ समस्याओं का कारण हो सकता है।
- ऐसा होने के बाद, एक दो बार विंडोज को रिबूट करें और सफाई से बंद करें। यह डिस्क को ठीक से अनमाउंट होना चाहिए।
- GRUB के माध्यम से विंडोज को बूट करने की कोशिश करें। यह इस बिंदु पर काम करना शुरू कर सकता है, लेकिन मैं कोई वादा नहीं कर सकता।
- यदि GRUB अभी भी विंडोज को बूट नहीं कर सकता है, तो मेरे rEFInd बूट मैनेजर का USB फ्लैश ड्राइव या CD-R संस्करण डाउनलोड करें और एक बूट माध्यम तैयार करें।
- REFInd माध्यम को बूट करें। यह विंडोज और उबंटू दोनों को बूट करने के लिए विकल्प दिखाना चाहिए। उन दोनों की कोशिश करो।
- यदि rEFInd आपके दोनों OS को बूट करता है, तो उसका PPA या डेबियन पैकेज संस्करण स्थापित करें। rEFInd को तब आपके प्राथमिक बूट प्रबंधक के रूप में GRUB से पदभार संभालना चाहिए।
- यदि यह विफल रहता है, तो आप बूट मरम्मत की कोशिश कर सकते हैं , लेकिन मुझे संदेह है कि यह मदद करेगा, क्योंकि मुझे GRUB कॉन्फ़िगरेशन के साथ स्पष्ट रूप से कुछ भी गलत नहीं दिखता है, आपके बूट जानकारी स्क्रिप्ट आउटपुट के आधार पर, संभवतः एक लापता विंडोज बूट लोडर फ़ाइल के अलावा । बाते कर रहे हैं जिससे कि....
- यदि आप पाते हैं कि
bootmgfw.efi
गायब है, तो आप चरण # 1 के बाद उपरोक्त सभी को छोड़ सकते हैं। इसके बजाय, आपको विंडोज बूट लोडर को फिर से स्थापित करना होगा, जिसे आपको विंडोज रिकवरी मीडिया का उपयोग करना चाहिए। ऐसा करने के बाद, आपको शायद EasyUEFI का उपयोग करना होगा या bcdedit
डिफ़ॉल्ट बूट प्रबंधक के रूप में GRUB को रीसेट करना होगा।