Zenedith's dev blog

Dałem się namówić.., szatanowi chyba..

Dual boot : Linux i Windows

Przez ostatnie miesiące nie używałem systemu linux na tyle, żeby mieć go jako pełnoprawny drugi system. W zupełności wystarczało mi rozwiązanie emulacji przez virtualbox. Na ten temat można bardzo dużo napisać, ale mogę spróbować podsumować to tak:

  • możemy w nim zainstalować większość znanych systemów operacyjnych (windows, linux),
  • tworzony jest plik, który symuluje partycję z systemem i tam zapisywane są wszystkie dane,
  • jeśli nasz komputer jest podłączony do internetu (lan, usb) to połączenie jest dostępne bez żadnej konfiguracji w zainstalowanym systemie (sprawdzone na podstawie debian’a),
  • zainstalowany w virtualbox system można rozbudowywać jak normalnie zainstalowany system (instalacja bibliotek, pakietów),
  • można bardzo łatwo przełączać się pomiędzy systemami (specjalne skróty klawiaturowe),
  • można odpalić w trybie „pełnego ekranu”,
  • można wymieniać pliki pomiędzy systemami przez „katalog współdzielony”.

Niestety, czym więcej obciążymy nasz „emulowany system”, tym bardziej odczuje to nasz system podstawowy. Udało mi się dość dobrze pracować na tak zainstalowanym debiani’e, o profilu programistycznych na komputerze jedno rdzeniowym 2,8 GHz z 2 GB RAM, ale muszę przyznać, że czasem było ciężko.

Jest to dobre rozwiązanie tymczasowe, kiedy tylko sporadycznie chcemy coś zrobić pod innym systemem, bez „straty” partycji. Tak zainstalowany system można też łatwo archiwizować lub przenosić na inne komputery.

Dla mnie jednak istotne stało się posiadanie normalnie pracującej dystrybucji, więc postanowiłem to uczynić.

Teraz przechodzimy do sedna – jak ładnie rozwiązać boot’owanie się do jednego czy drugiego systemu. Przeważnie jest tak, że system windows mamy zainstalowany i dodajmy nowy system linux’owy do systemu. Są one bardzo sprytne i potrafią wykryć system windowsa na posiadanych dyskach, co niekoniecznie działa w kierunku przeciwnym.

Moim zamierzeniem było zmienić boot loader pod windows, który możne odpalić system linux (lub dowolny inny). Można zajrzeć pod dość pomocny artykuł na tej stronie, który tłumaczy wszystko po kolei. Dla mnie jednak ważna była jedna zmiana w tym opisie – nie chciałem mieć osobnej partycji \boot. Dlatego też musiałem zainstalować grub do MBR dysku, a potem odzyskać stary loader dla windows. Sprawa jest bardzo prosta i całą operację można wykonać w następujących krokach:

  1. Instalacja systemu linux – partycja root (\) i swap,
  2. Zapisanie grub w MBR głównego dysku (lub ręczne użycie grub-install z docelową partycją),
  3. Skopiowanie zainstalowanego „obrazu boot’a grub” poleceniem dd if=/dev/??dysk?? of=/mnt/floppy/linux.bin bs=512 count=1, gdzie ??dysk?? odpowiada MBR dysku głównego lub ręcznie wybranej partycji, a of(output file) oznacza miejscu, gdzie ten „blok” zostanie zapisany – ja użyłem pendrive’a i u mnie całe polecenie wyglądało tak: dd if=/dev/hda of=/media/disk/linux.bin bs=512 count=1.
    Ważne jest, że jest tam /dev/hda bez żadnej cyfry.
  4. Jeśli nie masz systemu windows zainstalowanego, to go zainstaluj (niszczy się zapisany w MBR grub ale mamy go skopiowanego) w przeciwnym przypadk mamy zainstalowany grub, z którego możemy odpalić windows i linux..ale nie o to nam chodziło.
    Musimy przywrócić wcześniejszy MBR lub go na nowo ustawić. W tym celu potrzebujemy konsolę odzyskiwania. Można się do niej dostać na dwa sposoby – można ją mieć zainstalowaną w systemie lub włączyć z płyty instalacyjnej windowsa. Ponieważ nie miałem jej zainstalowanej w systemie (jak zapewne 98% użytkowników), powiem jak należy postąpić w tym przypadku. Wkładamy płytę do czytnika, w biosie sprawdzamy, czy mamy sprawdzanie boot’owania dla cd/dvd przed boot’owania dla dysków twardych.
    Następnie czekamy aż załaduje się pierwszy ekran z wyborem, gdzie jedną z możliwości będzie opcja Napraw (klawisz R) co też uczynimy. Należy jeszcze potwierdzić ustawienia językowe i wybrać katalog windows, dla któego chcemy odpalić konsolę odzyskiwania (jeśli mamy więcej niż jeden windows).
    Po załadowaniu się konsoli wydajemy dwa polecenia:

    • fixmbr \Device\HardDisk0
    • fixboot c:

    W tym momencie mamy naprawiony MBR pod windows, musimy jeszcze sprawić, żeby można było odpalić linuxa.

  5. Logujemy się do Windows i wybieramy panel sterowania/system, zakładka zaawanosowane, w kategorii urchamianie i odzyskiwanie klikamy Ustawienia, klikamy przycisk Edytuj i możemy edytować boot loader’a windowsa.
    Należy na końcu dopisać linię: c:\linux.bin=”Nowy System”, oraz skopiować plik linux.bin (z miejsca gdzie go zapisaliśmy podczas kroku 3) i mamy gotowy loader.
  6. Po ponownym uruchomieniu komputera będziemy mieli ekran wyboru systemu – naszego windowa oraz wpisanego systemu „Nowy System”. Wybór tej dodanej opcji przeniesie nas do..boot’a grub, gdzie będziemy mogli wybrać start linuxa lub..powrót do loadera Windows.
Reklamy

13 Grudzień, 2008 - Posted by | debian, Uncategorized | ,

Brak komentarzy.

Skomentuj

Proszę zalogować się jedną z tych metod aby dodawać swoje komentarze:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj / Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj / Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj / Zmień )

Zdjęcie na Google+

Komentujesz korzystając z konta Google+. Wyloguj / Zmień )

Connecting to %s

%d blogerów lubi to: