Domyślne uruchamianie Windowsa za pomocą GRUB boot loadera

Podziel się z innymi!

    Jakiś czas temu kupiłem nowego kompa i stary w schedzie przypadł mojej żonie. Mimo moich usilnych działań uświadamiających nadal przedkłada ona Windowsa ponad Linuxa więc jak tylko dostała laptopa w swoje władanie wierciła mi dziurę w brzuchu aby usunąć z dysku Ubuntu, a przynajmniej sprawić aby domyślnie uruchamiał się Windows 7.

    Zmiana kolejności uruchamiania w GRUB boot loaderze jest dość prostą czynnością wielokrotnie opisywaną w necie. Należy jednak zwrócić uwagę na wersję GRUB-a, gdyż w przypadku np. najnowszego Ubuntu używany jest GRUB2, w którym zmianę kolejności bootowania robi się nieco inaczej.

    Przede wszystkim należy wyedytować odpowiedni plik

    sudo /etc/default/grub

    i odnaleźć w nim opcję GRUB_DEFAULT domyślnie ustawioną na 0

    GRUB_DEFAULT=0

    Liczba odnosi się do pozycji w menu bootowania. Taka lista wpisów może wyglądać następująco:

    Ubuntu, Linux 3.0.0-17-generic
    Ubuntu, Linux 3.0.0-17-generic (recovery mode)
    memory test (memtest86+)
    memory test (memtest86+, serial console 115200)
    Windows 7 (loader) (on /dev/sda1)

    Tak więc aby ustawić Windowsa jako domyślnie uruchamiany system należało by opcji GRUB_DEFAULT przypisać 4

    GRUB_DEFAULT=4

    Na koniec niezbędnym jest jeszcze aktualizacja ustawień GRUBA2 poprzez wykonanie polecenia

    sudo update-grub

    To wystarcza by zmienić kolejność bootowania. Jednak jest mały problem. Polega na tym, że przy aktualizacji kernela do nowej wersji do menu dodawane są nowe linie i wpis dotyczący Windowsa przesuwa się na dalszą pozycję. Można oczywiście każdorazowo aktualizować ustawienia GRUB2-a jednak jest lepsze rozwiązanie.

    W pliku /boot/grub/grub.cfg odszukujemy sekcję odpowiedzialną za uruchamianie Windowsa

    menuentry "Windows 7 (loader) (on /dev/sda1)" --class windows --class os {
    	insmod part_msdos
    	insmod ntfs
    	set root='(hd0,msdos1)'
    	search --no-floppy --fs-uuid --set=root 24B2367EB2365510
    	chainloader +1
    }

    i do opcji GRUB_DEFAULT przypisujemy tytuł wpisu zamiast jego numeru

    GRUB_DEFAULT="Windows 7 (loader) (on /dev/sda1)"

    W ten sposób co prawda pozycja wpisu w menu się nie zmieni, ale za to przy inicjalizacji domyślnie zaznaczona będzie pozycja w menu dotycząca Windowsa i jeżeli nie zareagujemy to po czasie określonym w opcji GRUB_TIMEOUT uruchomi się Windows.

    Jak już pisałem aktualizację ustawień GRUB2 kończy polecenie sudo update-grub. Bez jego wykonania zmiany w ustawieniach nie zostaną uwzględnione.

    Podziel się z innymi!

      Parse error: syntax error, unexpected '[', expecting ')' in /home/bigweb/public_html/heintze/blog/wp-content/themes/fanoe/comments.php on line 49