Skocz do zawartości

Kilka Dystrybucji W Jednym Grub`ie


InIrudeBwoy

Rekomendowane odpowiedzi

Hej.

Zainstalowane mam dwie Fedory (9 i rawhide) oraz Ubuntu. Za pierwszym razem korzystałem z gruba Fedory, po zamonotwaniu partycji boot z F9 w rawhide wszystko było ok. Rawhide przy instalacji nowych kerneli poprawiał grub.conf i było fajnie. Próbowałem tej samej sztuczki z ubuntu, nie działało.

POstanowiłem postawić na gruba z Ubuntu, słyszałem że wykrywa automatycznie systemy, myślałem, że skoro wykrywa to może po zamontowaniu jego partycji boot będzie ok. Niestety tym razem tylko Ubuntu uaktualnia grub`a. Co robię źle? Jaka jest na to metoda.

Wiem że Ubuntu korzysta z menu.lst a Fedora z grub.conf ale menu.lst jest też w katalogu grub Fedory. Katalogi /home mam różne dla wszystkich systemów, są to prawie całkowicie odrębne isntalacje, poza grubem który chciałbym dzielić.

Odnośnik do komentarza
Udostępnij na innych stronach

Polecam chainloading. Redukuje ból głowy związany z GRUBciem do zera :D

 

[root@fedora ~]# fdisk -l /dev/sdd

Disk /dev/sdd: 60.0 GB, 60021399040 bytes
255 heads, 63 sectors/track, 7297 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

  Device Boot      Start         End      Blocks   Id  System
/dev/sdd1   *           1         981     7879851   83  Linux
/dev/sdd2             982        1107     1012095   82  Linux swap / Solaris
/dev/sdd3            1108        1887     6265350   a6  OpenBSD
/dev/sdd4            1888        7296    43447792+   5  Extended
/dev/sdd5            1888        2488     4827501   83  Linux
/dev/sdd6            2489        3089     4827501   83  Linux
/dev/sdd7            3090        3690     4827501   83  Linux
/dev/sdd8            3691        4291     4827501   83  Linux
/dev/sdd9            4292        4892     4827501   83  Linux
/dev/sdd10           4893        5493     4827501   83  Linux
/dev/sdd11           5494        6094     4827501   83  Linux
/dev/sdd12           6095        6695     4827501   83  Linux
/dev/sdd13           6696        7296     4827501   83  Linux

 

[root@fedora ~]# mount /dev/sdd1 /mnt/temp && cat /mnt/temp/boot/grub/menu.lst && umount /mnt/temp
default         0
timeout         10

title           Ubuntu, kernel 2.6.15-27-386
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.15-27-386 root=/dev/hda1 ro
initrd          /boot/initrd.img-2.6.15-27-386

title           /dev/hda3, OpenBSD 4.2
rootnoverify    (hd0,2)
chainloader     +1

title           /dev/hda5, Dreamlinux 3.2
rootnoverify     (hd0,4)
chainloader     +1

title           /dev/hda6, Kororaa 0.2
rootnoverify     (hd0,5)
chainloader     +1

title           /dev/hda7, Fedora 9
rootnoverify    (hd0,6)
chainloader     +1

title           /dev/hda8, Debian 4 / Lenny
rootnoverify    (hd0,7)
chainloader     +1

title           /dev/hda9, Network Security Toolkit 1.8.1
rootnoverify    (hd0,8)
chainloader     +1

 

Nie wiem czy muszę to pisać, ale napiszę ;)

 

Bootloader pierwszego systemu siedzi w MBR, a pozostałych na ich partycjach.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 8 months later...

Próbowałem waszymi sposobami i nadal mam problem. Przy wyborze Ubuntu wyskakuje "Error 13".

 

Moje menu.lst z Fedory

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You do not have a /boot partition.  This means that
#		  all kernel and initrd paths are relative to /, eg.
#		  root (hd0,5)
#		  kernel /boot/vmlinuz-version ro root=/dev/sda6
#		  initrd /boot/initrd-version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,5)/boot/grub/splash.xpm.gz
hiddenmenu
title Fedora (2.6.27.19-170.2.35.fc10.x86_64)
root (hd0,5)
kernel /boot/vmlinuz-2.6.27.19-170.2.35.fc10.x86_64 ro root=UUID=15442a1b-a124-4c27-a125-a87f89723463 rhgb quiet
initrd /boot/initrd-2.6.27.19-170.2.35.fc10.x86_64.img
title Fedora (2.6.27.5-117.fc10.x86_64)
root (hd0,5)
kernel /boot/vmlinuz-2.6.27.5-117.fc10.x86_64 ro root=UUID=15442a1b-a124-4c27-a125-a87f89723463 rhgb quiet
initrd /boot/initrd-2.6.27.5-117.fc10.x86_64.img

title Ubuntu
rootnoverify (hd0,0)
chainloader +1

title Windows XP
rootnoverify (hd0,1)
chainloader +1

 

A tutaj wynik fdisk -l

Disk /dev/sda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x696385ff

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1        2623    21069216   83  Linux
/dev/sda2            2624        4570    15639277+   7  HPFS/NTFS
/dev/sda3            4571        4831     2096482+  82  Linux swap / Solaris
/dev/sda4            4832       14592    78405232+   f  W95 Ext'd (LBA)
/dev/sda5            4832       13500    69632000    7  HPFS/NTFS
/dev/sda6   *       13501       14592     8771458+  83  Linux

 

Dodam tylko, że sda1 - Ubu, sda2 - WinXp, sda 6 - Fedora. Wiem, że można ręcznie wskazać sćieżke jadra danej dystrybucji ale takie coś mnie nie satysfakcjonuje, bo nie chcę przy każdej aktualizacji jądra robić nowe wpisy.

Edytowane przez WalDo
zmiana tagów code → codebox
Odnośnik do komentarza
Udostępnij na innych stronach

@mr.dD czy jesteś pewien, że boot loader Ubuntu instalowałeś na urządzeniu /dev/sda1 a nie w MBR? Bo ten sposób działa tylko wtedy, gdy w Ubuntu GRUB jest zainstalowany w boot sectorze partycji a nie w MBR. W innym wypadku tzn. jeśli był na MBR, to został nadpisany przez GRUB Fedory.

W przypadku gdyb GRUB Ubuntu był instalowany w MBR musisz sięgnąć do Ubuntu i z pliku /boot/grub/menu.lst odczytać wpis startujący i - prawdopodobnie nieco zmodyfikowany - wpisać do /boot/grub/grub.conf na Fedorze.

 

Trochę chyba to zamotałem, ale sprawa jest w sumie prosta.

 

P.S. Mam nadzieję, ze nie pomyliłem nazw i struktury katalogów na Ubuntu, ale dawno tego już nie widziałem na swoim dysku :)

P.S2. Listingi dłuższe niz 15 linii umieszczaj między tagami [codebox][/codebox] zamiast [code][/code]

Odnośnik do komentarza
Udostępnij na innych stronach

Dzięki za uwagę WalDo z tym "codebox" ;) Dobrze wiedzieć, że tak można i trzeba.

 

Co do Ubuntu i MBR. Program instalacyjny Ubuntu nadpisuje MBR, tak jak robi to Fedora. Wiem, że można dodać wpis z Ubuntu powiedzmy w postaci:

 

title Ubuntu
    root (hd0,0)
    kernel /boot/vmlinuz-........ 
    initrd /boot/initrd-..........img

 

Tak mam teraz i wiem, że działa :) Ale czy taki wpis powoduje, że przy aktualizacji kernela przez system, wpis będzie się automatycznie modyfikował?

Czyli powinienem pod Ubuntu zainstalować Gruba tylko bez modyfikacji MBR, wtedy zostanie tam wpis z Fedory i powinno śmigać na zasadzie:

Odpala się Grub Fedory a po wybraniu Ubuntu uruchamia się Grub Ubu? Tylko nie wiem jak to dokładnie zrealizować. Zaraz spróbuje pokombinować.

 

Edit:

Wszystko śmiga. Nie wpadłem na to, by Gruba od Ubunciaka zainstalować na jego partycji a nie w MBR. Dzięki za naprowadzenie.

Odnośnik do komentarza
Udostępnij na innych stronach

Co do Ubuntu i MBR. Program instalacyjny Ubuntu nadpisuje MBR, tak jak robi to Fedora.
Nie pamiętam jak w Ubuntu, ale w Fedorze mozesz wybrać czy chcesz mieć w MBR czy w boot sektorze partycji. Trzeba w czasie intsalacji wybrać chyba "własny układ partycji" i można potem umieścić w MBR albo w boot sectorze.

Wiem, że można dodać wpis z Ubuntu powiedzmy w postaci:

 

Ale czy taki wpis powoduje, że przy aktualizacji kernela przez system, wpis będzie się automatycznie modyfikował?
No, niestety nie.

 

Odpala się Grub Fedory a po wybraniu Ubuntu uruchamia się Grub Ubu? Tylko nie wiem jak to dokładnie zrealizować. Zaraz spróbuje pokombinować.
To jest dokładnie to o czym powyżej w tym wątku. Musisz tylko przekonać Ubuntu do zainstalowania GRUB w boot sectorze partycji Ubuntu a nie w MBR. Wtedy prawdopodobnie zadziała również ten wpis z "chainloader +1". Ja mam tak zrobione z F11, że odpalam GRUB w F11 z GRUBa w F10.

 

Powodzenia.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...