উবুন্টু থেকে উইন্ডোজে পুনরায় বুট করবেন কীভাবে?


35

আমি 10.10 / ভিস্তার দ্বৈত বুট সিস্টেমে উবুন্টু থেকে উইন্ডোজ পুনরায় বুট করার একটি উপায় খুঁজছি। নির্দিষ্ট ব্যবহারের ক্ষেত্রেটি হ'ল আমি আমার চলমান উবুন্টু দৃষ্টান্তটি অনুসন্ধান করতে সক্ষম হতে চাই এবং একটি কমান্ড জারি করতে পারি যা সরাসরি উইন্ডোজে রিবুট শুরু করে।

আমি একটি প্রতিশ্রুতিবদ্ধ ব্লগ পোস্ট পেয়েছি , তবে যে স্ক্রিপ্টটি এটির পরামর্শ দেয় তা কাজ করছে না:

#!/bin/bash

WINDOWS_ENTRY=`grep menuentry /boot/grub/grub.cfg  | grep --line-number Windows`
MENU_NUMBER=$(( `echo $WINDOWS_ENTRY | sed -e "s/:.*//"` - 1 ))
sudo grub-reboot $MENU_NUMBER
sudo reboot

man grub-reboot খুব একটা সহায়তা নয়, তবে মনে হচ্ছে এটি আমাকে সঠিক দিকে নিয়ে যাচ্ছে:

GRUB- র জন্য কেবলমাত্র পরবর্তী বুটের জন্য ডিফল্ট বুট এন্ট্রি সেট করুন

WINDOWS_ENTRY=`grep menuentry /boot/grub/grub.cfg  | grep --line-number Windows`
MENU_NUMBER=$(( `echo $WINDOWS_ENTRY | sed -e "s/:.*//"` - 1 ))
echo $MENU_NUMBER

এটি প্রত্যাশিত মানটি ফেরত দেয় তবে পুনরায় বুট করার সময় প্রথম মেনু এন্ট্রিটি হাইলাইট হয়। এটি কেন কাজ করছে না এমন কোনও ধারণা বা অন্যান্য সমাধানের জন্য পরামর্শ?


আপনি যদি গ্রাব মেনুতে তালিকার শীর্ষে উইন্ডোজ গ্রাব বুট লাইনটি অনুলিপি করেন তবে প্রতিটি বুট উইন্ডোতে ডিফল্ট লোড হবে .. আপনি যদি উবুন্টুতে থাকেন এবং এরপরে এটি ssh করেন। sudo reboot nowগ্রাব তালিকার প্রথম আইটেমটিতে মেশিনটিকে পুনরায় বুট করা উচিত।
karthick87

অবশ্যই, তবে আমি খুব কমই সেই উইন্ডোজ বিভাজনে বুট করি। আমি এটি ডিফল্ট এন্ট্রি করতে চাই না।
অ্যান্ড্রুসোমথিং 21

উত্তর:


43
  • আপনাকে প্রথমে আপনার গ্রাবটি সম্পাদনা করতে হবে।

    sudo gedit /etc/default/grub
    
  • GRUB_DEFAULT = 0 লাইনটি অনুসন্ধান করুন এবং এটিকে GRUB_DEFAULT = এ সংরক্ষিত করুন saved বিকল্প পাঠ

  • নিম্নলিখিত কমান্ডটি ব্যবহার করে আপনার গ্রাব আপডেট করুন।

    sudo update-grub  
    
  • এখন একটি স্ক্রিপ্ট ফাইল তৈরি করুন,

    sudo gedit switch-to-windows.sh
    
  • তারপরে এই লাইনগুলি যুক্ত করুন।

    #!/bin/bash
    WINDOWS_ENTRY=`grep menuentry /boot/grub/grub.cfg  | grep --line-number Windows`
    MENU_NUMBER=$(( `echo $WINDOWS_ENTRY | sed -e "s/:.*//"` - 1 ))
    sudo grub-reboot $MENU_NUMBER
    sudo reboot
    
  • স্ক্রিপ্টটি কার্যকর করা যায় Make

    sudo chmod +x switch-to-windows.sh
    
  • এবং এখন আপনি এই স্ক্রিপ্টটি উইন্ডোতে পুনরায় বুট করতে টার্মিনাল থেকে চালাতে পারেন।

    ./switch-to-windows.sh
    
  • অথবা আপনি আপনার টার্মিনালে নিম্নলিখিত কমান্ডটি কার্যকর করতে পারেন

    sudo grub-reboot X  
    
  • আপনি যেখানে GRUB মেনু থেকে পুনরায় আরম্ভ করতে চান সেই OS এর মেনুয়েণ্ট্রি অবস্থানটি যেখানে X (প্রথম এন্ট্রি হিসাবে 0 দিয়ে শুরু)

উদাহরণ স্বরূপ:

  • এটি যদি আপনার গ্রাব মেনু হয় এবং আপনি উইন্ডোতে বুট করতে চান তবে আপনাকে এক্স এর মান 5 হিসাবে দেওয়া উচিত।
  • sudo grub-reboot 5

    বিকল্প পাঠ

  • উপরের কমান্ডের জন্য আপনি একটি লঞ্চারও তৈরি করতে পারেন, যাতে লঞ্চারটিতে ডাবল ক্লিক করা উইন্ডোতে পুনরায় বুট হবে।

আমি একবার এটি কাজ করতে পারেন। এর পরে আপনাকে পাসওয়ার্ড লিখতে হবে।

7
আপনি দেখতে দেখতে কীভাবে পেলেন?
ম্যান্ডি

উপরে প্রশ্ন অনুসরণ? আপনি কীভাবে এত ঝাঁকুনিতে লাগছেন?
দিয়েগো

5
সমাধানটি সত্যিই দুর্দান্ত তবে আমার যেমন এন্ট্রিগুলির আগে ট্যাব সহ 14 টি মেনু প্রবেশ রয়েছে, মেনু প্রবেশের শিরোনামের ইনস্টহেডটি আরও ভালভাবে কাজ করেছে। সুতরাং আপনি #! / বিন / ব্যাশ দিয়ে আপনার কোডটি পরিবর্তন করতে পারেন WINDOWS_TITLE = grep -i 'windows' /boot/grub/grub.cfg|cut -d"'" -f2sudo গ্রাব-রিবুট "$ WINDOWS_TITLE" সুডো রিবুট
ফিলিপ গাচৌদ

ফিলিপ গাছুদ, দয়া করে আপনার একটি উত্তর দিন! এটি একমাত্র কাজ করে!
হনি

12

কেবল এটি করার জন্য একটি গ্রাব কমান্ড রয়েছে, এটি grub-reboot

এটি কেবলমাত্র তখনই কাজ হবে যখন আপনি সর্বশেষ সংরক্ষিত এন্ট্রি দিয়ে শুরু করার জন্য গ্রাব কনফিগার করেছেন। সুতরাং আপনি যদি ইতিমধ্যে এটি না করে থাকেন তবে পরিবর্তন করুন /etc/default/grubএবং সেট করুন

GRUB_DEFAULT=saved

তারপরে গ্রাব কনফিগারেশন ফাইল আপডেট করুন:

sudo update-grub

এখন থেকে প্রতিটি বুট গ্রাবের সর্বশেষ ব্যবহৃত প্রবেশ শুরু হবে।

এখন, আপনি যদি আগাম সেট করতে চান তবে পরবর্তী সময় বুট করার জন্য সিস্টেমটি কী হওয়া উচিত, ব্যবহার করুন

sudo grub-reboot ENTRY

যেখানে ENTRYমেনু এন্ট্রি (0 থেকে শুরু করে সংখ্যাযুক্ত), বা একটি সঠিক মেনু প্রবেশ শিরোনাম, উদাহরণস্বরূপ কোনও নম্বর হতে পারে

sudo grub-reboot "Microsoft Windows XP Professional (on /dev/sda1)"

এই কমান্ডটি লঞ্চ হিসাবে সহজেই উপলব্ধ করা যায়

#!/usr/bin/env xdg-open
#
# save as ~/Desktop/reboot-into-windows.desktop
#

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Exec=sh -c 'gksu "grub-reboot 2" && gnome-session-save --shutdown-dialog'
Name=Reboot into Windows
Icon=gnome-panel-launcher

তবে কীভাবে এটি সিস্টেম মেনুতে সংহত হতে পারে তা আমি জানি না।

আপনি এর সাথে উপলভ্য মেনু এন্ট্রি শিরোনাম পেতে পারেন

sed -n '/menuentry/s/.*\(["'\''].*["'\'']\).*/\1/p' /boot/grub/grub.cfg 

সেট করার কোনও কারণ নেই GRUB_DEFAULT=saved, এটি আপনার কনফিগারেশনটিকে বিশৃঙ্খলা করবে। কি grub-রিবুট করে লিখতে হয় next_entry=ENTRYথেকে /boot/grub/grubenv। তা নয় saved_entry=ENTRY। পরবর্তী পুনরায় বুট করা ঠিক হবে, গ্রাব পড়ে next_entrysaved-entry=ENTRYগ্রুবেনভের মতো কোনও এন্ট্রি সংরক্ষণ না করা থাকলে নিম্নলিখিত বুটগুলি ব্যর্থ হতে পারে ।
mook765

4

আমি মনে করি যে লোকেরা ssh ছাড়াই স্থানীয়ভাবে তাদের পিসিতে একইভাবে চান তাদের জন্য আমি আরও সুন্দর উপায় খুঁজে পেয়েছি।

একটি ইউনিট লঞ্চারের মাধ্যমে একটি নির্দিষ্ট সিস্টেম চয়নে পুনরায় বুট করার সমাধান সবেমাত্র ওয়েবআপড 8 এ পোস্ট করা হয়েছিল। Http://www.webupd8.org/2011/05/custom-unity-launcher-to-reboot-in.html দেখুন

আমি জানি এই প্রশ্নটি ঠিক কী নয় তবে যদি কারও ক্ষেত্রে একইরকম প্রশ্ন পরে আসে তবে এটি সহায়ক হতে পারে।


3

যতদূর আমি বুঝতে পেরেছিলাম এটি আপনি যা চান ঠিক তা হবেনা তবে আমার ধারণা খুব কাছাকাছি। কেবল ওয়েবআপডেট নিবন্ধটি লিঙ্কটি অনুসরণ করুন ।


3
যতক্ষণ এই তাত্ত্বিক প্রশ্নের উত্তর হতে পারে, এটা বাঞ্ছনীয় হবে উত্তর অপরিহার্য অংশের এখানে অন্তর্ভুক্ত করা, এবং রেফারেন্স এর জন্য লিঙ্ক প্রদান।
মার্কো Ceppi

2

সুতরাং আমার জন্য সবচেয়ে ভাল ছিল grub-rebootকমান্ড সহ নিম্নলিখিত স্ক্রিপ্ট তৈরি করা

#!/bin/bash 
WINDOWS_TITLE=$(grep -i 'windows' /boot/grub/grub.cfg|grep "^[^#;]"|cut -d"'" -f2) 
sudo grub-reboot "$WINDOWS_TITLE" 
echo "Your computer will reboot on ${WINDOWS_TITLE} in 3 seconds, press Ctrl+C if you want to abord it"
sleep 3 && sudo reboot

0

প্রত্যেকের তথ্য আমার জন্য সহায়ক কিন্তু শেষ পর্যন্ত আমি গ্রাবের ডিফল্ট পরিবর্তন এবং তারপরে একটি ক্লিকে পুনরায় আরম্ভ করতে সক্ষম হতে পারি না। 2 ঘন্টা দূরে সরে যাওয়ার পরে আমি এই প্রোগ্রামটি আবিষ্কার করি যা হুবহু একই জিনিসটি আমরা সকলেই তৈরির চেষ্টা করছি এবং 5 মিনিটের মধ্যে আমি উইন্ডোতে পুনরায় চালু করছি। ধন্যবাদ সবাইকে ধন্যবাদ যে এখানে ছেড়ে দেয় তাদের জন্য দাবা লিঙ্ক। http://www.webupd8.org/2013/01/unity-reboot-launcher-to-quickly-reboot.html


-1

আমি নিশ্চিত না যে এটি 100% উবুন্টুতেও কাজ করবে কিনা তবে আমি একবার সেন্টো মেশিনে এই কাজটি করেছি

মূলত আপনাকে গ্রুবকে বলতে হবে যে grub.conf থেকে কোন আইডি # এটি চালানো উচিত। # আইডিটি খুঁজে পাওয়া যাবে

echo `sudo grep ^title /boot/grub/grub.conf | grep -n Windows | cut -f 1 -d:`-1

সুতরাং আমার ক্ষেত্রে এটি উদাহরণস্বরূপ "4-1" আউটপুট হিসাবে আমার grub.conf এর চতুর্থ এন্ট্রি হিসাবে "উইন্ডোজ" লেখাটি থাকবে। (এটি ব্যবহার করতে চান এমন প্রকৃত প্রবেশের নামটি (আংশিকভাবে) দিয়ে প্রতিস্থাপন করুন Then তারপরে আপনি এটিকে গ্রাব করতে খাওয়ানোতে পারেন:

echo "savedefault --stage2=/boot/grub/stage2 --default=4-1 --once" | sudo /sbin/grub

এবং পরবর্তী পুনরায় বুট করার সময় এটি আপনাকে যে এনট্রি বলেছে সেটিকে স্বয়ংক্রিয়ভাবে বুট করা উচিত।

এগুলি সমস্ত নিম্নলিখিতটির মতো স্ক্রিপ্টে একসাথে রাখা যেতে পারে:

#!/bin/sh
let NEWBOOT=`sudo grep ^title /boot/grub/grub.conf | grep -n Windows | cut -f 1 -d:`-1
echo Booting $NEWBOOT - `sudo grep ^title.\*Windows /boot/grub/grub.conf`
echo "savedefault --stage2=/boot/grub/stage2 --default=$NEWBOOT --once" | sudo /sbin/grub
sudo reboot

স্ক্রিপ্টটি স্বয়ংক্রিয়ভাবে নির্ধারণ করবে যে আপনার গ্রুব.কনফ থেকে কোন এন্ট্রি "উইন্ডোজ" পাঠ্যের সাথে সামঞ্জস্য করে তা পরবর্তী বুটে লোড করা উচিত কি তা জানাতে গ্রাবকে খাওয়ানো হবে এবং আপনার পিসি পুনরায় বুট করবে।

গুইয়ের জন্য আপনি যেমন এটি অর্জন করতে ডেস্কটপে একটি শর্টকাট আইকন যুক্ত করতে পারেন।


1
গ্রাব-লেজ্যাসির জন্য কনফিগার ফাইলটি মেনু.লস্ট, গ্রুবকনফ নয়। Grub2- এর জন্য এটি grub.cfg, তবে আপনার দ্বিতীয় কমান্ড কেবল গ্রাব-লেজ্যাসির জন্য।
psusi

-4

কেবল সম্পাদনা করুন /boot/grub/grub.cfgএবং আপনি বুট করতে চান এমন এন্ট্রি নির্দেশ করতে ডিফল্ট এন্ট্রি পরিবর্তন করুন। মানটি হয় প্রবেশের অর্ডিনাল সংখ্যা (প্রথমটির জন্য শূন্য থেকে শুরু করে) হতে পারে বা আপনি প্রবেশাধিকারের পুরো শিরোনামটি উদ্ধৃতিতে রাখতে পারেন।


2
সংশোধন করার পরামর্শ boot.cfgদিবেন না, এটি প্রতিটি ম্যানুয়াল বা স্বয়ংক্রিয়ভাবে পুনরুদ্ধার করা হবে update-grub/etc/default/grubপরিবর্তে ব্যবহারকারীর পরিবর্তন করা উচিত ।
এনজোটিব

1
@ এনজোটিব, যেহেতু পরিবর্তনটি কেবলমাত্র পরবর্তী বুটের সাথে সম্পর্কিত, তাই সেভাবে করার কোনও কারণ নেই।
psusi

2
আপনি ভুলে
গেছেন

1
@ এঞ্জোটিব, সত্যই নয়; গ্রাব 2 সম্পর্কে একটি সুন্দর জিনিস হ'ল আপনি সর্বদা প্রম্পটে ম্যানুয়ালি পুনরুদ্ধার করতে পারেন। এছাড়াও ফাইলের অন্যান্য অংশগুলি স্ক্রু করার বিপদটি একটি বিশেষ যুক্তি, এবং আপনি যদি ডিফল্ট লাইনটি ভুল পেয়ে থাকেন তবে সবচেয়ে খারাপটি ঘটে তা হ'ল এটি প্রথম এন্ট্রিতে ডিফল্ট হয়।
psusi
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.