Ubuntu i Windows w dual boocie - niestety problem

Witam,

mam w komputerze 2 HDD - starszy, z partycją systemową Win XP SP1 (40 GB) i nowszy, 140 GB - postanowiłem zainstalować na nowszym Ubuntu (9.04). Normalna instalka z LiveCD, wybieram cały dysk 140 GB, normalnie idzie…aż do próby włączenia. Ku mojemu zdziweniu po wybraniu w menu przy boocie Ubuntu wywala mi błąd…windowsa, brakujący lub uszkodzony hal.dll . Co ciekawe, Win XP ucurhamia się normalnie i bezproblemowo (!). Googlowanie nic nie daje, bo zwykle błąd ten jest odwrotny - win nie działa, za to u mnie nie działa Ubuntu. Dodam, że po odpaleniu z liveCD i wybraniu partition managera partycje ubuntu są normalne - swap, 138 gb na home i partycję systemową ext3 - partycji nfts nie widać wcale. Sam win natomiast w oknie mój komputer nie widzi już 2giego HDD.

Wie ktoś jak naprawić problem, aby można było normalnie dual bootować?Z góry dziękuję.

Nie wiem czy to pomoże, ale możesz spróbowac zainstalowac na nowo Ubuntu tworząc samemu 3 partycje - 2 ext4 (/ i /home) i 1 swap.

Grub oczywiscie na głównej partycji czyli tej z XP

=)

Osobiście bardziej polecam GParted do formatowania/edytowania partycji :slight_smile:

Ponieważ musisz się przełączać między dyskami, jeśli się nie mylę instalator Ubuntu wykorzystuje do partycjonowania GParted, w górnym rogu jak zobaczysz coś w stylu /dev/sda, kliknij na to i tam masz listę dysków, jeśli masz dwa, będą dwa dyski i na tym pierwszym masz partycje Windowsa.

Windows nie rozpoznaje partycji linuksowych, aby XP je widział musisz doinstalować sterownik dla ext2/3/4 czy jaki tam masz, nazwy nie pamiętam, poszukaj na Googlach.

Natomiast linuksowy bootloader zapewne zainstalowałeś w mbr drugiego dysku, stąd może wynikać komplikacja, jesłi ten dysk jest jako slave, ustaw w biosie na rozruch z tego dysku, na którym masz Ubuntu albo zainstaluj Gruba w mbr na master tam gdzie masz Windowsa.

Pozdrawiam!

W pliku boot.ini (oraz tym nieszczęsnym hall.dll) poza xp w entry Ubunciaka jest ściezka zaczynająca się od C:/ , więc wygląda że mbr jest na dysku windy.

Co do boota z drugiego HDD…spróbuję.ale czy (przepraszam że na logikę biorę, ale jestem mało zaawansowany) nie zablokuje mi to z kolei dostępu do windy?

Zablokować nie ale nie będzie bootował z pierwszego dysku, czyli jakby będzie zablokowany. Ok, w takim razie nie zmieniaj nic w biosie, podczas uruchomienia kompa użyj menu szybkiego wybierania, czyli wciśnij któryś z klawiszy F, np. F11 w zależności jaki masz ustawiony w biosie i wybierz z listy dysk drugi.

Pozdrawiam!

Niestety brak efektu (w zasadzie-dysku, w opcjach bootu jest tylko floppy, hd i cd oraz usb - brak drugiego hdd) - przyuważyłem za to że w boot.ini i hal.dll zamiast normalnego mbra Ubuntu jest plik zaczynający się od słów “wubi” - swego czasu miałem takowa instalkę (usunąłem), i wygląda to tak, że w hal.dll i boot.ini zwyczajnie nie ma gruba normalnego, nowego ubuntu (tj.jest xp i stary, nieistniejący wubi). Prawdopodobnie jest on więc na 2gim dysku - jak to sprawdzić?

Odpal Ubuntu w LiveCD, odpal terminal wklep tam mniej więcej to:

sudo su

mount /dev/sdb1 /mnt #zakładam, że drugi hhd, jest rozpoznawany jako sdb, wrazie wu sprawdź poleceniem fdisk -l

mount -t proc none /mnt/proc

mount -o bind /dev /mnt/dev

chroot /mnt /bin/bash

grub

root (hd1,0) #przy założeniu jak wyżej oraz że katalog root jest na pierwszej partycji

setup (hd1)

quit

exit

cd

umount /mnt/dev /mnt/proc /mnt

reboot

Jeśli wyskoczy /mnt busy zignoruj i przejdź dalej. Można chyba też zrobić krócej:

sudo grub-install /dev/sdb

Pozdrawiam!

ubuntu@ubuntu:~$ sudo fdisk -l


Disk /dev/sda: 160.0 GB, 160041885696 bytes

255 heads, 63 sectors/track, 19457 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Disk identifier: 0x51a33299


   Device Boot Start End Blocks Id System

/dev/sda1 * 1 19083 153284166 83 Linux

/dev/sda2 19084 19457 3004155 5 Extended

/dev/sda5 19084 19457 3004123+ 82 Linux swap / Solaris


Disk /dev/sdb: 40.0 GB, 40020664320 bytes

255 heads, 63 sectors/track, 4865 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Disk identifier: 0x2fc6a8bc


   Device Boot Start End Blocks Id System

/dev/sdb1 * 1 4864 39070048+ 7 HPFS/NTFS

ubuntu@ubuntu:~$

/dev/sda to dysk z linem - na nim sda1 jako partycja systemowa i sda2 (extended) mająca w sobie tylko swapa (sda5)

/dev/sdb to dysk z win xp

Podane wyżej komendy wywalają tylko błędy w postaci “no such device” i tym podobnych.

Co ciekawe, lin 3krotnie nie odpalił z liveCD (odpalił, tylko czarny ekran i terminal) - po czym zaskoczył w trybie graficznym :?

Wkleiłem, enter, reboot…nie działa.

ubuntu@ubuntu:~$ sudo su

root@ubuntu:/home/ubuntu# mount /dev/sda1 /mnt

root@ubuntu:/home/ubuntu# mount -t proc none /mnt/proc

root@ubuntu:/home/ubuntu# mount -o bind /dev /mnt/dev

root@ubuntu:/home/ubuntu# chroot /mnt /bin/bash

root@ubuntu:/# grub

Probing devices to guess BIOS drives. This may take a long time.

root@ubuntu:/# exit

exit

root@ubuntu:/home/ubuntu# cd

root@ubuntu:~# umount /mnt/dev /mnt/proc /mnt

root@ubuntu:~# reboot

w boot.ini poza xp jest:

[boot loader]

timeout=30

default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)WINDOWS=“Microsoft Win Xp Pro” /fastdetect

C:\wubildr.mbr=“Ubuntu”