[resolu] probléme avec grub et le CD(DVD)

Pour booter sur une clé USB, il ne suffit pas de copier le contenu du CD, il y a quelques manips à faire.
pendrivelinux.com/ contient de nombreux howto pour de nombreuses distribs.

Exemple pour Damn Small Linux :

[code]* Mount USB drive, with e.g. mount /dev/sdx1 /flash - can be either FAT16 or FAT32!

  • Mount ISO image, with e.g. mount /tmp/dsl-3.2.iso /tmp/iso -o loop
  • Copy all contents from ISO to USB drive: cp -vr /tmp/iso/* /flash/
  • Rename and move syslinux files to root directory: mv /flash/boot/isolinux/* /flash/
  • Rename isolinux.cfg: mv /flash/isolinux.cfg /flash/syslinux.cfg
  • Unmount USB drive: umount /flash
  • Install syslinux: syslinux /dev/sdx1 and eventually set the MBR boot flag for this partition (with fdisk).[/code]

merci bcp :smiley:
mais tu peux me donner un nom exacte d’un bon LiveCD base sur debian

j’ai trouvé ce site live.debian.net/
il y a des LiveCd base sur debian
mais il y a une difference sur la taille ? un CD de 640Mb et le meme qu’un CD de 85 Mb ?
grub se trouve t il sur les 2 ?

Un CD de 640 Mb contiendra plus de logiciels qu’un CD de 85 Mb.
Dans ton cas, tu as juste besoin de récupérer grub donc pas besoin d’une usine à gaz.
Le LiveCD va te permettre de démarrer ta machine sur un système Linux.
C’est tout ce dont tu as besoin.
Car une fois que tu as accès à une console :

Cette commande permet de monter ta partition où se trouve le répertoire racine / et le /boot de ta debian dans le répertoire /mnt. Ce qui veut dire que depuis le LiveCD, tu pourras lire le contenu de ton disque dur en te rendant dans le répertoire /mnt. C’est une commande linux de base, elle se trouve sur tous les liveCD

La commande chroot va te “déplacer” dans ton installation Debian. C’est à dire que toutes les commandes que tu vas exécuter ensuite seront interprétées comme si tu étais dans ta Debian. Tu ne dépends plus des logiciels inclus dans le CD. chroot est également une commande de base Linux.

Donc peu importe le LiveCD. Même un vieux LiveCD Linux d’il y a 3 ans devrait faire l’affaire. Car peu importe si il y a grub sur le liveCD

Sinon je prendrais DSL : ftp://ftp.oss.cc.gatech.edu/pub/linux/d … -4.2.5.iso

Car c’est une des plus petites distrib donc vite téléchargée, vite gravée, et vite lancée.

quand j’execute # chroot /mnt
il m’affiche une erreure sur le /bin/bash

Quel message exactement ?

j’ai essayer encors une fois et il m’affiche apres le chroot
Fatal : kernel too old
(j’ai verifi ma partition racine avec le fdisk -l et c’est hda8)

Grub est présent sur la plupart des LiveCD, le chroot est donc inutile.
En root :

grub --batch find /boot/grub/stage1 root (hdX,X) <- tu mets la réponse donnée par la commande précédente. setup (hd0) <- pour installer stage1 sur le MBR du 1er disque de boot, (hd0,0) si tu veux l'installer dans le BS de la 1ère partition du 1er disque, etc... quit

avec un autre cd quand je fai grub-install /dev/hda il m’affiche :
hda not found or not a blok device

et quand j’execute le : find /boot/grub/stage1
il me dit que ce fichier n’existe pas

Évite grub-install c’est un script qui n’est pas toujours très fiable, la doc officielle de Grub ne recommande d’ailleurs pas son utilisation.

Si tu as une partition /boot séparée ce n’est pas find /boot/grub/stage1 qu’il faut faire mais find /grub/stage1 dans la procédure de récupération donnée dans mon précédent message.

Voir ici pour une démonstration en image avec les explications.

voila mon log :

1er méthode :

[b]grub> find /boot/grub/stage1

Error 15: File not found

grub> find /grub/stage1

Error 15: File not found

grub> find /media/disk-1/boot/grub/stage1

Error 15: File not found[/b]

2eme méthode :

root@ubuntu:~# fdisk -l

Disque /dev/sda: 80.0 Go, 80026361856 octets
255 heads, 63 sectors/track, 9729 cylinders
Units = cylindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x26d726d7

Périphérique Amorce Début Fin Blocs Id Système
/dev/sda1 * 1 2971 23864526 7 HPFS/NTFS
/dev/sda2 2972 9728 54275602+ f W95 Etendu (LBA)
/dev/sda5 2972 3824 6851691 83 Linux
/dev/sda6 3825 5404 12691318+ 7 HPFS/NTFS
/dev/sda7 5405 5526 979933+ 82 Linux swap / Solaris
/dev/sda8 5537 7648 16964608+ 83 Linux
/dev/sda9 7649 9728 16707568+ b W95 FAT32

Disque /dev/sdb: 1000 Mo, 1000341504 octets
16 heads, 32 sectors/track, 3816 cylinders
Units = cylindres of 512 * 512 = 262144 bytes
Disk identifier: 0x00000000

Périphérique Amorce Début Fin Blocs Id Système
/dev/sdb1 1 3816 976880 b W95 FAT32

Disque /dev/sdc: 1027 Mo, 1027604480 octets
18 heads, 49 sectors/track, 2275 cylinders
Units = cylindres of 882 * 512 = 451584 bytes
Disk identifier: 0x04030201

Périphérique Amorce Début Fin Blocs Id Système
/dev/sdc1 1 2276 1003400 b W95 FAT32

root@ubuntu:~# mount /dev/sda8 /mnt/
root@ubuntu:~# chroot /mnt/
root@ubuntu:/# grub-install /dev/hda
/dev/hda: Not found or not a block device.
root@ubuntu:/# grub-install /dev/sda
/dev/sda: Not found or not a block device.
root@ubuntu:/# cp /proc/mounts /etc/mtab
cp: ne peut évaluer `/proc/mounts’: Aucun fichier ou répertoire de ce type

Tu as vérifié que les fichiers de grub existaient bien sur sda8 ?

ls -l /ton_point_de_montage/boot/grub ls -l /ton_point_de_montage/boot

Si ce n’est pas la bonne partition, essais avec sda5

[quote="…"]Tu as vérifié que les fichiers de grub existaient bien sur sda8 ?

ls -l /ton_point_de_montage/boot/grub ls -l /ton_point_de_montage/boot

Si ce n’est pas la bonne partition, essais avec sda5[/quote]

oui ils s’y trouvent,il y a sda8/boot/grub et sda8/grub
sda5 c’est le \home
avec le livecd de ubuntu je suis allé sur systeme fichier
puis /boot mais le repertoire de grub ne se trouve pas !!!

[quote=“yous18”]oui ils s’y trouvent,il y a sda8/boot/grub et sda8/grub
sda5 c’est le \home[/quote]
OK, mais j’aurais quand même préféré le retour des commandes histoire de n’avoir aucun doute.

[quote=“yous18”]avec le livecd de ubuntu je suis allé sur systeme fichier
puis /boot mais le repertoire de grub ne se trouve pas !!![/quote]
Si tu parle bien de la /racine du LiveCD s’est normal : il n’a pas besoin de Grub pour démarrer lui.

Dans le batch de Grub, pour être sûr que hd0 == sda sur ta machine :

Si c’est bien le cas tu peux tenter une installation directe :

Au cas où il y a un LiveCD spécialisé qui pourrait t’intéresser : Super Grub Disk, je n’ai jamais essayé mais il parait qu’il est très simple et efficace…

ok je vais essayer avec le sper grub disk
et il m’afficher

grub> setup (hd0) (hd0,7)
Checking if “/boot/grub/stage1” exists… no
Checking if “/grub/stage1” exists… no

Error 2: Bad file or directory type

puisque tu m’a dis que le livecd n’a pas besoin de grub et ne contient pas la repertoire grub
alors /boot/grub/stage1 ne va jamais exister !! pourquoi aalors ils cite cette méthode dans la doc !!

[quote=“yous18”]puisque tu m’a dis que le livecd n’a pas besoin de grub et ne contient pas la repertoire grub…
[/quote]
Le LiveCD n’a pas besoin de dossier /boot/grub/ puisqu’il ne se sert pas de Grub pour démarrer. Mais les exécutables sont bien présents puisque puisque tu peux lancer le batch (ls -s /usr/sbin/grub*).

:slightly_smiling: D’où l’intérêt d’avoir le retour des commandes car ton système a besoin des fichiers de configuration et autres de Grub lui.

C’est normalement inutile mais tu peux toujours réessayer après avoir monté sda8 :

mkdir /mnt/system mount -t ext3 -o rw /dev/sda8 /mnt/system

voilà ce que j’ai fai

ubuntu@ubuntu:~$ sudo -s
root@ubuntu:~# mount /dev/sda8 /mnt/
root@ubuntu:~# mount -o bind /dev /mnt/dev
root@ubuntu:~# chroot /mnt/
root@ubuntu:/# grub-install /dev/sda
/dev/sda does not have any corresponding BIOS drive.

mais ce qui est intéressant
aprs j’ai fai grub

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/stage1
(hd0,7)
// avant c’etait Error 15: File not found

[b]grub> setup (hd0)

Error 12: Invalid device requested

grub> setup (hd7)

Error 12: Invalid device requested

grub> setup (hd0)

Error 12: Invalid device requested[/b] /// mais pourquoi ce message j’ai cru que enfin ça marche

avant quand je faisait find il ne trouver rien
meme message quand j’ai booter avec super Grub Disk avec grub=> ibm & linux : Auto
il m’ecrivait
findf /boot/grub/stage1 /grub/stage1
Error 15: File not found

Hello,
d’après le lien que t’a donné … vers le site de cepcasa, ne faudrait-il pas faire dans ta console grub :

:question:

merci ça a marché mais avec un petit probléme
alors apres avoir fai ceci
ubuntu@ubuntu:~$ sudo -s
root@ubuntu:~# mount /dev/sda8 /mnt/
root@ubuntu:~# mount -o bind /dev /mnt/dev
root@ubuntu:~# chroot /mnt/
root@ubuntu:/# grub-install /dev/sda
/dev/sda does not have any corresponding BIOS drive.
root@ubuntu:/# grub
grub> find /boot/grub/stage1
(hd0,7)
grub> setup (hd0) (hd0,7)

il m’a ecrit succeced et done

alors au demarrage il y avait grub mais quand j’ai séléctionné debian il m’afficher ceci :

root (hda,8)
Filesystem type is Fat , partition type 0xb
kernel /boot/… root=/dev/hda9 ro quiet
error 15 : File not found

La procédure t’avait été donné plusieurs fois pourtant… :wink:

Apparemment tu as fait plus que formater… Il te faut donc éditer ton /boot/grub/menu.lst et vérifier aussi /etc/fstab pour y renseigner correctement les partitions.

Tu peux le faire à partir d’un LiveCD.

mkdir /mnt/system mount -t ext3 -o rw /dev/sda8 /mnt/system gksudo gedit /mnt/system/boot/grub/menu.lst gksudo gedit /mnt/system/etc/fstab

Mets les ici si tu n’y arrives pas ainsi que le retour d’un sudo parted -s /dev/sda print