क्या विंडोज से विंडोज में स्वचालित रूप से रिबूट करने के लिए ग्रब का एक तरीका है?


12

मेरे पास एक दोहरी बूट सेटअप है:

  1. उबंटू 16.04 एलटीएस
  2. खिड़कियाँ

वर्तमान में जब मैं rebootउबंटू से विंडोज में आना चाहता हूं तो मैं grub-rebootउचित संख्या के साथ तर्क के रूप में उपयोग करता हूं । यह अच्छा काम करता है।

हालाँकि कभी-कभी विंडोज को रिबूट की आवश्यकता होती है इसलिए एक निश्चित प्रोग्राम इंस्टॉल या अपडेट कर सकता है और मुझे मैन्युअल रूप से सही ग्रब बूट मेनू प्रविष्टि का चयन करना होगा। क्या बूट करने के लिए किस प्रविष्टि को ग्रब बताने के लिए (विंडोज यूआई से) एक समान तरीका है?

मुझे लगता है कि grub-rebootकमांड एक फाइल को तर्क देता है जो बारी-बारी से ग्रब पर पढ़ा जाता है reboot

संपादित करें (मेरे चयनित उत्तर के बारे में): मैं वर्तमान में ext4 ड्राइव को बढ़ाना चाह रहा हूं जिसमें संपादन / बूट और स्क्रिप्टिंग शामिल है। यह संभवतः काफी समय लेगा क्योंकि मैं अपने खाली समय में अपनी 40h / सप्ताह गैर-तकनीकी नौकरी के साथ ऐसा कर रहा हूं। ^^


टिप्पणियाँ विस्तारित चर्चा के लिए नहीं हैं; इस वार्तालाप को बातचीत में स्थानांतरित कर दिया गया है ।
टेराडो

कृपया भविष्य में अपने सवाल को अपडेट करें कि आपने विंडोज में रिबूट करने के लिए क्या किया है। मैं यह जानने के लिए उत्सुक हूं कि आपके लिए किस विधि ने काम किया है और विंडो की स्क्रिप्ट (यदि कोई है) आपने देखी है। मुझे यकीन है कि कई अन्य लोग भी रुचि रखते हैं।
विनयुनुच्स

@ WinEunuuchs2Unix वर्तमान में मैं इस पर काम कर रहा हूँ। जैसा कि ओली ने कहा - खिड़कियों में स्क्रिप्टिंग एक शाही PITA है।
आमोन सान

@amonsan मैंने reboot-to-windowsफ़ंक्शन के साथ अपने उत्तर को अपडेट किया है जो ext2fsd का उपयोग करने पर एक समझौता है जो ext4 सुपरब्लॉक को भ्रष्ट करता है
विनयुनुच्स 2 यूनिक्स

@amonsan क्या आपके पास अपना सिस्टम सेटअप है अब विंडोज अपडेट के लिए स्वतः विंडोज में वापस जाने के लिए रिबूट करना है?
विनयुनुच्स 2 यूनिक्स

जवाबों:


19

सबसे आसान तरीका ग्रब के साथ है

यह grubविंडोज से बोझिल नियंत्रण है। विंडोज से उबंटू तक पहुंचने के लिए एक तृतीय पक्ष एप्लिकेशन और कुछ हैकिंग की आवश्यकता है। हालांकि इस पोस्ट के शीर्ष भाग से: मेरे दोहरे बूटिंग डिस्ट्रोस पर ऑर्डर कैसे बदलें , आप grubस्वचालित रूप से अंतिम मेनू विकल्प में रिबूट करने के लिए सेटअप कर सकते हैं । इसलिए जब आप शुरू में विंडोज़ के साथ बूट होते हैं, और यह अपडेट चलाने के लिए सुबह 2 बजे उठता है, grubतो विंडोज को फिर से लोड करेगा ताकि यह अपडेट को ख़ुशी से समाप्त कर सके।

जब आप मैन्युअल रूप से रिबूट करते हैं और grubअपने सभी अगले रिबूट से उबंटू को उठाते हैं तो स्वचालित रूप से उबंटू लोड होता है। यह सुविधा समान रूप से अच्छी तरह से काम करती है यदि आपके पास वर्तमान कर्नेल में बग हैं और grubआपके द्वारा चयनित पुराने कर्नेल संस्करण में स्वचालित रूप से रीबूट करना चाहते हैं ।

पिछले बूट चयन को दोहराने के लिए ग्रब कैसे प्राप्त करें

यह काफी सीधा है। sudoशक्तियों का उपयोग करके /etc/default/grubनिम्नलिखित को संपादित करें और बदलें:

#GRUB_DEFAULT=0 # Rather than option #1, we'll always default to last boot choice.
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true

पहली पंक्ति जिस पर आप टिप्पणी करेंगे और उसके ठीक नीचे अगली दो पंक्तियाँ डालेंगी।

फ़ाइल को सहेजें और टर्मिनल में टाइप करें:

sudo update-grub

विंडोज में रिबूट करने के लिए उबंटू कमांड लाइन

वर्तमान में आप कुछ इस तरह का उपयोग करते हैं:

sudo grub-reboot x # Where x is Windows zero-based grub menu number
sudo reboot now

इस संशोधित स्टैक एक्सचेंज उत्तर से आप विंडोज में रिबूट करने के लिए ग्रब डिफॉल्ट का उपयोग कर सकते हैं। इस कोड को अपनी ~/.bashrcफ़ाइल में कॉपी करें :

function reboot-to-windows {
    WINDOWS_TITLE=`grep -i "^menuentry 'Windows" /boot/grub/grub.cfg|head -n 1|cut -d"'" -f2`
    sudo grub-set-default "$WINDOWS_TITLE"
    sudo reboot
}
  • ~/.bashrcनए reboot-to-windowsफ़ंक्शन के साथ फ़ाइल सहेजें ।
  • अपना वर्तमान टर्मिनल सत्र बंद करें।
  • ~/.bashrcलोड किए जाने के लिए नया टर्मिनल सत्र खोलें ।
  • आप : ~/.bashrcइसे मौजूदा टर्मिनल सत्र में पुनः लोड करने के लिए टाइप कर सकते हैं, लेकिन कुछ लोग ऐसा करने के खिलाफ सलाह देते हैं।

कमांड लाइन के उपयोग से विंडोज में रिबूट करने के लिए:

reboot-to-windows

यदि Windows स्वचालित रूप से पुनरारंभ होता है जब आप नहीं देख रहे हैं, तो विंडोज को रिबूट किया गया है। यह विंडोज ऑटोमैटिक अपडेट को कई बार रिबूट होने वाले कई चक्रों पर सामान्य रूप से प्रोसेस करने की अनुमति देता है।


1
इस सवाल का बूट ऑर्डर से कोई लेना-देना नहीं है।
जेनिफर

2
@ जेनिफर सवाल यह है कि XY समस्या का एक उदाहरण है। तो यह उत्तर उपयोगी है। साथ ही, यह वास्तव में बूट ऑर्डर के बारे में है क्योंकि यह विंडोज यूआई से बूट ऑर्डर को अस्थायी रूप से बदलने का तरीका पूछ रहा है।
wizzwizz4

वर्तमान में यह वही है जिसके साथ मैं छड़ी करता हूं और यह मेरे उपयोग के 90% मामलों में मेरे लिए ठीक काम करता है
amon san

@ मानसन आप 10 प्रतिशत पर विस्तृत कर सकते हैं जहां यह काम नहीं करता है?
WinEunuuchs2Unix

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

8

आप दोहरा सकते हैं कि क्या grub-rebootकरता है। यह सिर्फ एक स्क्रिप्ट है जो अंततः कॉल करती है:

grub-editenv /boot/grub/grubenv set next_entry="Windows"

Windowsआपके ग्रब मेनू प्रविष्टि का नाम कहां है हो सकता है कि ऐसा न हो

मैंने उसे दौड़ाया। सभी इसे सम्मिलित next_entry=Windowsकरते हैं /boot/grub/grubenv। ऑन लाइन 2. तो अगर यह सिर्फ एक फाइल है, एक फाइलसिस्टम पर, तो आप विंडोज के भीतर से बिल्कुल वही काम कर सकते हैं । यह एक Windows समस्या को हल करने के लिए है, लेकिन यहां उच्च-स्तरीय अवलोकन है:

  • उस डिस्क को माउंट करें जहां बूट रहता है। यह शायद सबसे कठिन बिट है क्योंकि यह शायद ext4 है। यह मदद कर सकता है लेकिन यह अविश्वसनीय नहीं है कि आपको इसे संपादित करने के लिए विंडोज के साथ लिनक्स चलाने की आवश्यकता हो सकती है।

    जैसा कि मुरू बताते हैं, यह मुश्किल नहीं है। आप /bootअपने FAT32 पार्टीशन पर जा सकते हैं । यह विंडोज में माउंट करने के लिए तुच्छ बनाता है।

  • next_entry=Windowsटिप्पणी के बाद फ़ाइल में (या जो भी) डालें , हैश से पहले।

  • अनमाउंट।
  • रीबूट।

स्क्रिप्टिंग कि विंडोज मेरे कम्फर्ट जोन से बाहर है और वास्तव में हम यहां क्या करते हैं। लेकिन वह सब आपको करना चाहिए।


1
इस पद्धति में, जैसा कि मैंने कहा कि एक टिप्पणी में अब चैट करने के लिए चले गए हैं, एक अलग /bootविभाजन में जाना सबसे अच्छा है , और यह FAT32 या NTFS के लिए स्वरूपित है, तो आराम से उन्हें विंडोज पर संपादित करें। इसमें कुछ भी नहीं /bootहै विशेष रूप से यूनिक्स-वाई सुविधाओं की आवश्यकता है। Powershell का उपयोग करके इसे स्क्रिप्ट करना तब आसान होना चाहिए।
मुरु

2

grub-set-defaultग्रब-रिबूट के समान करना चाहिए, लेकिन सेटिंग को स्थायी बनाएं। यह विंडोज यूआई से बिल्कुल नहीं है, जैसा कि आपने पूछा, लेकिन शायद यह आपके लिए काम करता है।


इस सवाल का बूट ऑर्डर से कोई लेना-देना नहीं है।
जेनिफर

मुझे उस टिप्पणी से आपका क्या मतलब है, क्या आप समझा सकते हैं?
सेबस्टियन स्टार्क

आमोन सैन यह नहीं पूछ रहा है कि मुझे विंडोज़ के लिए डिफ़ॉल्ट रूप से ग्रब कैसे मिलता है - ज़ी पूछ रहा है, अगर विंडोज़ पहले से ही बूट हो गया है, तो अब रिबूट कैसे पैदा किया जाए, और किस ओएस को बूट करने के लिए चुनें।
जेनिफर

@ जेनिफर ओपी "विंडोज में अब रिबूट कैसे करें" नहीं पूछ रहा है। यदि ऐसा है तो ओपी केवल विंडोज रिस्टार्ट का चयन कर सकता है और फिर ग्रब मेनू में विंडोज का चयन कर सकता है। ओपी पूछ रहा है "जब विंडोज़ स्वचालित रूप से रिबूट होती है जब मैं वहां नहीं होता हूं, तो मैं यह कैसे सुनिश्चित कर सकता हूं कि यह विंडोज में वापस आए, न कि डिफ़ॉल्ट ग्रब मेनू विकल्प"। कम से कम मैं जिस तरह से मुख्य समस्या देखता हूं ।
विनयुनुच्स 2 यूनिक्स

हां, ओपी सिर्फ विंडोज रिस्टार्ट का चयन कर सकता है और फिर ग्रब मेनू में विंडोज का चयन कर सकता है। लेकिन ओपी विशेष रूप से पूछ रहा है कि बूट मेनू में विंडोज का चयन किए बिना मैं अपने आप विंडोज में कैसे वापस आ सकता हूं - दूसरे शब्दों में, मेरे हस्तक्षेप के बिना यह कैसे हो सकता है? बहुत एक्स यिंग!
जेनिफर

1

आपने यह नहीं कहा है कि विंडोज का कौन सा संस्करण या आप यूईएफआई पर हैं।

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

अपने स्वयं के सेटअप में, जो आर्क लिनक्स (कर्नेल ईएफआई शिम, बिना GRUB) का उपयोग करता है, और विंडोज 10, यह इस तरह दिखता है, शुरू स्क्रीन पर "मैनेज ईएफआई बूट विकल्प" चुनने के बाद:

एक समय बूट विकल्प दिखा छवि

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


1
धन्यवाद, लेकिन मेरे स्वाद के लिए हर बार बहुत अधिक मैन्युअल इंटरैक्शन की आवश्यकता होती है।
आमोन सान

1
श्रग। किसी भी दर पर आपको /bootइसे ext4 के रूप में संपादित करने के बजाय NTFS या FAT32 में ले जाना चाहिए । Windows में ext4 के लिए समर्थन लिखें iffy, आप इस तरह से बहुत अधिक जोखिम कर रहे हैं।
मुरु
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.