Dual boot z automatycznym przełączaniem systemu przy restarcie

Zaczęty przez TJM, 10 Wrzesień 2009, 14:58

TJM

Potrzebuję przygotować maszynkę z Ubuntu (prawopodobnie najnowszym) w celu zabawy z CUDA. Nie jestem jednak w stanie poświęcić jakiejś maszyny całkowicie na ten system, musi on zostać doinstalowany jako drugi. Niby nie jest to problem, do momentu kiedy od sprzętu odłączy się klawiaturę i monitor. No a niestety sprzęt na którym mam zamiar postawić drugi system klawiatury i monitora na codzień nie posiada.
Potrzebuję więc wykminić jakiś sposób na automatyczne przełączanie systemów. Najbardziej pasowałaby jedna z tych opcji:
- uruchamianie na przemian - raz Windows, raz Linux
- uruchamianie domyślnie linuksa, ale po uruchomieniu możliwość wklepania czegoś w konsoli (środowiska graficznego na linuksie nie będzie), żeby przy następnym uruchomieniu (jednokrotnie) wystartował Windows.

Chętnie zapoznałbym się z jakimiś sugestiami jak można takie coś wykonać, dziś wieczorem prawdopodobnie zainstaluję drugi system i będę musiał coś wykombinować.

Od razu mówię, że żadne wirtualne maszyny nie wchodzą w grę - wiem, że byłoby to w miarę sensowne rozwiązanie, ale maszynka na której mam zamiar to instalować po prostu nie ma na to zasobów.

Karlik

Jedyne co mi przychodzi do głowy tak na szybko to zrobić partycję /boot, zainstalować na windowsie sterowniki do obsługi ext3 (lub innego), podmontować patycję i za każdym razem zmieniać konfigurację domyślnie uruchamianego systemu :P

Rysiu

Edit.

Ajj... Nie wziąłem jednego faktu pod uwagę :/ Za bardzo pomysłu nie mam [a stary to bubel]

Karlik

Dobra, można prościej, grub.conf
default=0                                                                               
timeout=1                                       
hiddenmenu
title Linux
        root (hd0,2)
        kernel ...
        initrd ....
savedefault 1
title Windows
        rootnoverify (hd0,0)
        chainloader +1
savedefault 0

I teraz będą się uruchamiać na zmianę. Nie testowałem, ale tak mniej więcej chyba powinno być.

Troll81

KVM :D 8 portowe compaqi można już za 100 na allegro kupić :D ja 4 portówkę kupiłem za jakieś 40 zł. A 2 portowe można już w okolicy 20 kupić :D

TJM

Cytat: Karlik w 10 Wrzesień 2009, 15:18
Dobra, można prościej, grub.conf
default=0                                                                               
timeout=1                                       
hiddenmenu
title Linux
        root (hd0,2)
        kernel ...
        initrd ....
savedefault 1
title Windows
        rootnoverify (hd0,0)
        chainloader +1
savedefault 0

I teraz będą się uruchamiać na zmianę. Nie testowałem, ale tak mniej więcej chyba powinno być.

Rzeczywiście może to zadziałać, w takim wypadku nawet wrzuciłbym drugi HDD żeby nie mieszać w partycjach na pierwszym.

X X X

Ja z czymś podobnym...

Na starcie mam GNU GRUB, który daje do wyboru ze dwa Linuksy Ubuntu i dodatkowo Win7/64 (nazwany Vista). Domyślnie po 3 sekundach startuje Linuks i z braku sterownika do karty idzie w ciemno. Repair Win7 niestety nie usunął GNU GRUB.

Jak zrobić, aby domyślnie startował Windows7? Względnie wywalić tego GRUBa? Proszę o info dla osoby kompletnie nie znającej Linuksa - dzięki!

TJM

Gruba powinien szlag trafić po wykonaniu fdisk /mbr chociażby z konsoli naprawczej płyty instalacyjnej Windows.
Jeśli to nie zatrybi, to jest jeszcze narzędzie fixboot (tak chyba się zwie, nie pamiętam dokładnie) też dostępne z tej konsoli.

TJM

Podany wyżej sposób prawie działa.

default 0 należy zastąpić przez default saved - inaczej nie działa zapisywanie.
savedefault <x> należy policzyć po prostu w menu od góry, zaczynając od zera. Liczą się nawet puste wpisy, więc jeśli mam u góry 3 linuksy (dwa kernele + recovery mode), niżej linijkę 'other operating systems' i dopiero Windows (tak jest domyślnie w Ubuntu), to windows ma numer 4.

Ze sposobem tym wiąże się jednak pewien bug. Od czasu do czasu z update systemu ściągają się nowe kernele, które pojawiają się na liście systemów operacyjnych. Zakłóca to niestety automatyczne przełączanie systemów, więc widząc zasysany kernel należy koniecznie przed rebootem otworzyć menu.lst i wywalić któryś z poprzednich, tak żeby liczba wpisów się zgadzała. Inaczej nie mając monitora przy pierwszym restarcie traci się zwykle kontrolę nad kompem.