क्या आपके द्वारा बूट किए गए अंतिम OS को याद रखने के लिए ग्रब को कॉन्फ़िगर किया जा सकता है?


17

मेरे बूट मेनू में आमतौर पर 2-3 OS हैं:

  • उबंटू 10.04
  • विंडोज 7
  • [कभी-कभी, एक तीसरा विकल्प, जैसे कि Ubuntu 10.04 नेटबुक]

यदि मैं डिफ़ॉल्ट विकल्प (इस मामले में विंडोज 7) के अलावा एक ओएस में हूं, और मैं रिबूट करता हूं, तो उबंटू 10.04 में बूट करता है। ऐसा नहीं होना चाहिए - जब मैं विंडोज 7 में रीबूट करता हूं, तो मैं विंडोज 7 में रहना चाहता हूं। क्या मेरी आखिरी पसंद, और बूट करने के लिए ग्रब को कॉन्फ़िगर करने का कोई तरीका है?

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

जवाबों:


20

मूल Grub में, आप /boot/grub/menu.lst में , डिफ़ॉल्ट कीवर्ड को "सहेजे गए" और फिर प्रत्येक बूट मेनू प्रविष्टि में saveefault कीवर्ड का उपयोग करके सेटिंग करेंगे


अपडेट किया गया :
Grub2 थोड़ा और अधिक जटिल है। यह अभी भी विकसित हो रहा है, इसलिए भले ही उबंटू 9.10 और 10.04 दोनों ग्रब 2 का उपयोग करते हैं, लेकिन चीजों को दिलचस्प बनाने के लिए चीजों को कैसे पैक और कॉन्फ़िगर किया गया है, इसमें पर्याप्त अंतर हैं।

यहां बताया गया है कि दोनों में सेवफॉल्ट ट्रिक कैसे करें :

  • उबंटू 10.04:
    9.10 दिशाएं एक चाल हैं; स्पष्ट बहुत सरल है। देखें उबंटू की मदद अधिक रक्तमय जानकारी के लिए। आपको / etc / default / grub में दो बदलाव करने होंगे :

    1. वह रेखा बदलें जो पढ़ता GRUB_DEFAULT=0हैGRUB_DEFAULT=saved

    2. के साथ एक पंक्ति जोड़ें GRUB_SAVEDEFAULT=true

    बस। वास्तव में यह बुरा नहीं है, क्या यह है? भागना मत भूलना sudo update-grub

  • उबंटू 9.10:
    इसे काम करने के लिए उबंटू मंचों पर कई हैक हैं; जाहिरा तौर पर savefault कीवर्ड ग्रब v1.97 में छोटी गाड़ी थी। उबंटू फ़ोरम पर यह पोस्ट एक विधि प्रदान करती है। एक और पोस्ट थोड़ा सरल तरीका सुझाती है:

    1. सेट GRUB_DEFAULT बचाया = में / etc / default / grub

    2. इन दो पंक्तियों को /etc/grub.d/40_custom ( "निष्पादन पूंछ" पंक्ति के बाद नीचे के पास ) में रखें:

      saved_entry=${chosen}
      save_env saved_entry
      

    मैंने उबंटू 9.10 में इस विधि का परीक्षण किया है और यह काम करता है; अगला बूट स्वचालित रूप से चुने गए अंतिम प्रविष्टि को उजागर करेगा। टाइमआउट के साथ संयुक्त, यह आपके द्वारा बूट किए गए अंतिम OS में स्वतः बूट हो जाएगा।

और चलाने के लिए मत भूलना sudo update-grub। अपने परिवर्तनों के साथ समाप्त होने के बाद। यह महत्वपूर्ण है और शर्मनाक रूप से भूलना आसान है ...।


ग्रब के पास एक बूट बूट से रिबूट को अलग करने का कोई तरीका नहीं है , इसलिए ग्रब खुद से रिबूट पर ऐसा नहीं कर सकता है। हालाँकि, यदि आपको लिनक्स में बूट किया जाता है, तो आप एंट्री एन को अगले बूट पर (जो भी प्रविष्टि बचाई गई थी) चुने जाने के लिए सेट कर सकते हैं (जहाँ N एक बूट मेनू प्रविष्टि की संख्या है, 0 से शुरू) का उपयोग कर सकते हैं । sudo grub-set-default N

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

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


समाधान # 2 मेरे लिए काम नहीं करता है। मैंने / etc / default / grub, /etc/grub.d/40_custom को संपादित किया, और चलाया sudo update-grub। मैंने विंडोज 7 में बूटिंग करके परीक्षण किया, शट डाउन किया, फिर अपने कंप्यूटर को चालू किया। Ubuntu 10.04 (डिफ़ॉल्ट) अभी भी चुना गया था। मैंने "सहेजी गई" (यह सुनिश्चित करने के लिए कि ग्रब कॉन्फिग स्क्रिप्ट कैसे काम करती है) के बजाय, "etc_entry" को / etc / default / grub में डालने की कोशिश की, लेकिन इससे कोई मदद नहीं मिली। मैंने अभी तक # 1 समाधान का प्रयास नहीं किया है।
मैथ्यू

@ मैथ्यू: डबल-चेक करें कि /etc/grub.d/40_custom निष्पादन योग्य है (sudo chmod + x यदि यह नहीं है)। लेकिन हाँ, मैं सिर्फ अपने Ubuntu 10.04 मशीन पर कोशिश की और यह वहाँ भी काम नहीं करता है। चेक इन क्यों ...
क्वैक क्विक्सोट

@ मैथ्यू: ठीक है, लगा। मुझे खेद है, मुझे पता होना चाहिए कि ल्यूसिड और कार्मिक अलग होंगे। (ओह। और सुनिश्चित करें कि आप चलाते हैं sudo update-grub।)
क्वैक क्विक्सोट

3

यह पोस्ट शायद आपके काम की होगी, यह बहुत ही आत्म-व्याख्यात्मक है। ध्यान दें कि 10.04 और 9.10 एक ही GRUB संस्करण का उपयोग करते हैं, इसलिए चीजें आपके लिए बिल्कुल समान होनी चाहिए।

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