[grub] Grub refuse de s'installer (résolu)

Questions et astuces concernant l'installation et la configuration d'archlinux
Fractal
newbie
Messages : 9
Inscription : lun. 19 janv. 2009, 15:24

[grub] Grub refuse de s'installer (résolu)

Message par Fractal »

Bonjour :)

Je suis actuellement sous Ubuntu, et j'ai décidé d'installer ArchLinux à côté pour tester.
J'ai suivi la doc sur l'installation d'ArchLinux en chroot depuis une distribution existante, et j'ai quelques soucis pour l'installation de GRUB.

Le partitionnement de mon disque dur est essentiellement le suivant :

/dev/sda1 : partition primaire de swap
/dev/sda3 : partition primaire /home/fractal/Documents
/dev/sda2 : partition étendue contenant plusieurs partitions logiques dont
/dev/sda5 : racine Ubuntu
/dev/sda7 : racine ArchLinux
/dev/sda9 : racine Gentoo

Pour la configuration de GRUB, j'ai dans le MBR un grub-gfx qui prend son menu.lst dans ma partition de Documents (/dev/sda3), pour me permettre de choisir la distribution Linux que je veux démarrer, et qui chainloade sur les partitions / de chacune de ces distributions (ie /dev/sda5, 7 et 9) (un grub étant présent sur chacune de ces partitions)

Pour l'installation de Grub sous ArchLinux, j'ai déjà remarqué que les fichiers stage1, stage2, etc. n'étaient pas présents dans /boot/grub, ce qui est un peu étrange. J'ai eu beau faire (en chroot depuis Ubuntu) 'pacman -S grub', ou 'pacman -S grub-gfx', je n'ai pas réussi à faire en sorte qu'ils s'installent.
De plus, mon Grub sous Ubuntu ne semble pas détecter la partition /dev/sda7.

Code : Tout sélectionner

$ sudo mount /dev/sda7 /mnt/arch/
[sudo] password for fractal: 

$ ls /mnt/arch/boot/grub/
menu.lst

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


    GNU GRUB  version 0.97  (640K lower / 3072K upper memory)

 [ Minimal BASH-like line editing is supported.  For the first word, TAB
   lists possible command completions.  Anywhere else TAB lists the possible
   completions of a device/filename. ]
grub> find /boot/grub/menu.lst
find /boot/grub/menu.lst
 (hd0,2)
 (hd0,4)
 (hd0,8)
Comme vous-le voyez, le fichier "menu.lst" est bien présent dans (hd0,6)/boot/grub, mais Grub ne le détecte pas, il ne détecte que celui dans /home/fractal/Documents ainsi que les deux menu.lst pour Ubuntu et Gentoo.

Au démarrage de l'ordinateur, quand je choisis ArchLinux je tombe également sur le shell GRUB, et impossible de lui faire voir quoi que ce soit sur la partition (hd0,6). Il détecte le système de fichiers, mais ne semblerait y voir aucun fichier.

Qu'est-ce que j'ai mal fait? / Que faire pour que cela marche?
Merci de votre aide.
N'hésitez pas à me demander des précisions si je n'ai pas été clair.

Fractal ;)
Dernière modification par Fractal le lun. 19 janv. 2009, 23:41, modifié 1 fois.
Avatar de l’utilisateur
FenDanT
Elfe
Messages : 502
Inscription : mer. 25 avr. 2007, 09:04
Localisation : Chamoson VS/CH

Message par FenDanT »

Coucoux :P

A ta place, j'installerais un grub depuis Archlinux dans le MBR... Ca serait ton grub principal, qui te permettrait de lancer les autres distributions.

La commande est en root

Code : Tout sélectionner

grub-install /dev/sda
Pour Ubuntu et Gentoo, tu installes leur grub directement à leur /.

Ensuite tu lances tes autres distros en chainloader...

Voilà ce que ça donne chez moi :
# Config file for GRUB - The GNU GRand Unified Bootloader
# /boot/grub/menu.lst

# DEVICE NAME CONVERSIONS
#
# Linux Grub
# -------------------------
# /dev/fd0 (fd0)
# /dev/hda (hd0)
# /dev/hdb2 (hd1,1)
# /dev/hda3 (hd0,2)
#

# FRAMEBUFFER RESOLUTION SETTINGS
# +-------------------------------------------------+
# | 640x480 800x600 1024x768 1280x1024
# ----+--------------------------------------------
# 256 | 0x301=769 0x303=771 0x305=773 0x307=775
# 32K | 0x310=784 0x313=787 0x316=790 0x319=793
# 64K | 0x311=785 0x314=788 0x317=791 0x31A=794
# 16M | 0x312=786 0x315=789 0x318=792 0x31B=795
# +-------------------------------------------------+

# general configuration:
timeout 5
default 0
color light-blue/black light-cyan/blue

# boot sections follow
# each is implicitly numbered from 0 in the order of appearance below
#
# TIP: If you want a 1024x768 framebuffer, add "vga=773" to your kernel line.
#
#-*

# (0) Arch Linux
title Arch Linux
root (hd0,4)
kernel /boot/vmlinuz26 root=/dev/sda5 ro
initrd /boot/kernel26.img

title OpenSuse 11.1
root (hd0,6)
chainloader +1

title Frugalware 1.0
root (hd0,7)
chainloader +1

title Ubuntu 8.10 II
root (hd0,8)
chainloader +1


title Zenwalk 5.4 Beta
root (hd0,9)
chainloader +1

title Fedora 10
root (hd0,10)
chainloader +1

title Elive 1.9.21-2 Compiz
root (hd0,11)
chainloader +1

title Mandriva One 2009
root (hd0,12)
chainloader +1

title Sabayon 4.0
root (hd0,1)
chainloader +1

title Debian Lenny
root (hd0,13)
chainloader +1

title Linux Mint 5.0
root (hd0,14)
chainloader +1

# (1) Windows XP Professional
title Windows XP Professional
rootnoverify (hd0,0)
makeactive
chainloader +1
:lol:
Windows à des pépins ? Linux a un noyau ! :)
Fractal
newbie
Messages : 9
Inscription : lun. 19 janv. 2009, 15:24

Message par Fractal »

Je préfère quand même que le Grub dans le MBR ne dépende d'aucune distribution, parce que si par exemple il se trouvait que je veuille désinstaller ArchLinux, ça ne casserait pas mon boot.

Mais là, en fait, le principal problème pour l'instant est que Grub ne semblerait pas détecter ma partition /dev/sda7.
J'ai eu beau chercher dans la doc de Grub, ils ne disent pas que la commande 'find' pourrait dans certains cas ne pas trouver le fichier qu'on lui demande. Je tiens aussi à préciser que j'avais une autre distribution Linux à cet endroit là avant d'y installer ArchLinux, et que le boot marchait très bien.
Depuis que je l'ai reformatée, Grub ne la trouve plus.

Fractal ;)
nowahn
archer de cavalerie
Messages : 172
Inscription : lun. 04 août 2008, 19:03
Localisation : ailleurs

Message par nowahn »

bonjour
Fractal a écrit :j'ai déjà remarqué que les fichiers stage1, stage2, etc. n'étaient pas présents dans /boot/grub
il faut les copier depuis /usr/lib/grub/i386-pc/ (à faire manuellement, ne me demande pas pourquoi, je sais pas :wink: )

ensuite, il te faut refaire j'installation de grub (la commande grub-install en chroot depuis ubuntu) car la commande échoue si les fichiers ne sont pas présents dans /boot/grub

quel système de fichier utilises-tu pour ubuntu et arch ?
le grub installé sur le MBR ne pouvant supporter qu'un seul système de fichier à la fois, si celui de arch est différent, il ne pourra pas le lire. ce n'est pas gênant, puisque tu lance archlinux par son propre grub (par chainloading) qui sera spécifique au système de fichier d'archlinux

PS : je vois que l'info pour la copie des fichiers grub manque sur le wiki, je m'en vais la rajouter
Prends le temps de rêvasser, l'inspiration viendra ...
Fractal
newbie
Messages : 9
Inscription : lun. 19 janv. 2009, 15:24

Message par Fractal »

Bonjour
il faut les copier depuis /usr/lib/grub/i386-pc/ (à faire manuellement, ne me demande pas pourquoi, je sais pas)
Oki, ça c'est fait.
quel système de fichier utilises-tu pour ubuntu et arch ?
J'utilise du ext3 sur toutes mes partitions (sauf la swap...), donc le problème ne doit pas venir de là.

Je viens de réessayer d'installer Grub après avoir copié les fichiers, et cette fois ça semblerait avoir marché. C'est bizarre, parce que j'avais essayé de copier les stage1, 2, etc. depuis Ubuntu et ça ne marchait pas mieux.
Je reboote, et je te dis si ça marche :)

Fractal ;)
Fractal
newbie
Messages : 9
Inscription : lun. 19 janv. 2009, 15:24

Message par Fractal »

Ça marche ! :) C'était donc juste dû au fait que je n'avais pas copié les fichiers stage dans /boot/grub.
(bon, par contre j'ai pas internet, mais ça c'est un autre problème, en tout cas ArchLinux démarre)

Merci beaucoup :)

Fratal ;)
Répondre