Grub 2 : comment ajouter l'entrée Windows ?

Bonjour,

suite à un problème d’affichage, je dois remettre mon pc portable au SAV pour l’échanger contre un autre. Mais il faut d’abord que je remette l’entrée Windows 7 dans grub parce qu’étant linuxien comme vous, je l’avais viré :laughing: . Donc je fais appel à votre aide.

Mon Windows 7 se trouve dans la partition /dev/sda4. Voici les partitions de mon disque dur unique /dev/sda :

root@localhost:/# lsblk -l NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 931,5G 0 disk sda1 8:1 0 450M 0 part sda2 8:2 0 260M 0 part sda3 8:3 0 128M 0 part sda4 8:4 0 50,9G 0 part sda5 8:5 0 11,7G 0 part sda6 8:6 0 1M 0 part sda7 8:7 0 55,9G 0 part / sda8 8:8 0 16,8G 0 part [SWAP] sda9 8:9 0 795,5G 0 part /home sr0 11:0 1 1024M 0 rom

Et voici ce que donne la commande update-grub :

root@localhost:/boot/grub# update-grub Generating grub.cfg ... Found background image: /usr/share/images/desktop-base/desktop-grub.png Found linux image: /boot/vmlinuz-3.2.0-4-amd64 Found initrd image: /boot/initrd.img-3.2.0-4-amd64 Found memtest86+ image: /boot/memtest86+.bin Found memtest86+ multiboot image: /boot/memtest86+_multiboot.bin No volume groups found done root@localhost:/boot/grub#
=> le “No volume groups found” montre que grub n’a pas trouvé la partition Windows 7. Je suis sur Wheezy.

Une idée ?

Merci d’avance, cordialement.

bonsoir.

vous installera les entrées pour vos systèmes présents sur votre machine.

Non, rien à voir. Cela concerne LVM, pas Windows.

[mono]os-prober[/mono] est-il installé (a priori oui puisque memtest est détecté) ? Qu’affiche son exécution ?
La sortie de [mono]lsblk[/mono] n’est pas très informative, je préfèrerais la sortie de [mono]parted -l[/mono] ou à la limite [mono]fdisk -l[/mono] et [mono]blkid[/mono].

Spéculations
Je ne vois rien qui ressemble à une partition étendue dans les 4 premières partitions, donc j’en déduis que le disque a une table de partition GPT. Windows 7 ne pouvant démarrer qu’en mode EFI sur un disque au format GPT, cela implique qu’il y a une partition système EFI contenant le chargeur EFI de Windows.
Une partition système EFI étant normalement montée sur /boot/efi lorsque Debian est installé pour démarrer en EFI, j’en déduis que Debian ne démarre pas en EFI 32 bits avec grub-efi-ia32 ou 64 bits avec grub-efi-amd64 mais en legacy avec [mono]grub-pc[/mono].
Par conséquent os-prober ne peut pas détecter les chargeurs EFI présents dans une éventuelle partition système EFI.
Je soupçonne également que tu as soit désactivé le boot natif EFI dans le firmware, soit forcé le boot en legacy en priorité car le boot EFI est prioritaire par défaut. Dans ce cas, réactiver le boot EFI devrait relancer Windows. A moins que tu n’ais carrément supprimé ou reformaté la partition système EFI.

[quote=“avram”]#update-grub
vous installera les entrées pour vos systèmes présents sur votre machine.[/quote]
Tu es sûr d’avoir lu complètement le message auquel tu réponds ?

Merci beaucoup pour vos réponses, je vous répondrai demain.

@Pascal:

je crois que je vais aller me coucher,je n’ai plus bien les yeux en face des trous.

Merci PascalHambourg,

voici les réponses des commandes :

[code]root@localhost:/home/guest# parted -l
Model: ATA HGST HTS541010A9 (scsi)
Disk /dev/sda: 1000GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number Start End Size File system Name Flags
1 1049kB 473MB 472MB fat16 Basic data partition hidden, diag
2 473MB 746MB 273MB fat32 Basic data partition boot
3 746MB 880MB 134MB ntfs Basic data partition msftres
4 880MB 55,5GB 54,6GB ntfs Basic data partition
6 55,5GB 55,5GB 1049kB bios_grub
7 55,5GB 116GB 60,0GB ext4
8 116GB 134GB 18,0GB linux-swap(v1)
9 134GB 988GB 854GB ext4
5 988GB 1000GB 12,5GB ntfs Basic data partition hidden, diag

root@localhost:/home/guest# [/code]
=>/dev/sda4 correspond au Windows 7, et /dev/sda5 correspond au Recovery du Windows 7

[code]root@localhost:/home/guest# fdisk -l

Attention : identifiant de table de partitions GPT (GUID) détecté sur « /dev/sda » ! L’utilitaire sfdisk ne prend pas GPT en charge. Utilisez GNU Parted.

Disque /dev/sda : 1000.2 Go, 1000204886016 octets
255 têtes, 63 secteurs/piste, 121601 cylindres, total 1953525168 secteurs
Unités = secteurs de 1 * 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 4096 octets
taille d’E/S (minimale / optimale) : 4096 octets / 4096 octets
Identifiant de disque : 0x00000000

Périphérique Amorce Début Fin Blocs Id Système
/dev/sda1 1 1953525167 976762583+ ee GPT
La partition 1 ne commence pas sur une frontière de cylindre physique.
root@localhost:/home/guest#[/code]

root@localhost:/home/guest# blkid /dev/sda1: SEC_TYPE="msdos" UUID="EE01-AA09" TYPE="vfat" /dev/sda2: UUID="8E23-AC4D" TYPE="vfat" /dev/sda3: UUID="EAF0255DF02530ED" TYPE="ntfs" /dev/sda4: LABEL="TI31085000A" UUID="2888278A8827559A" TYPE="ntfs" /dev/sda5: LABEL="Recovery" UUID="2A943FA4943F7185" TYPE="ntfs" /dev/sda8: UUID="c52c74ac-13bb-44bf-bb9c-1d42c57fdb26" TYPE="swap" /dev/sda7: UUID="acf8f627-c5a7-4643-a5d5-523f2fa7ff15" TYPE="ext4" /dev/sda9: UUID="036d73a3-080b-4ba9-92dd-6e533f8d8974" TYPE="ext4" root@localhost:/home/guest#

os-prober était déjà installé et son exécution donne ceci :

root@localhost:/home/guest# os-prober No volume groups found root@localhost:/home/guest#

Pour démarrer Debian (Wheezy 64 bits), effectivement je devais désactiver UEFI et secureboot dans le bios.

As-tu besoin d’autres informations en lignes de commande ?

Ces informations confirment globalement mes spéculations. Je n’avais pas vu que tu avais Wheezy, dont la version de [mono]fdisk[/mono] est trop ancienne pour savoir lire le format GPT. Mais [mono]parted[/mono] confirme le format GPT, et indique que la partition système EFI (notée comme flag “boot”) est /dev/sda2. Elle est formatée en FAT32 et devrait contenir les fichiers nécessaires à l’amorçage de Windows en mode EFI.

Bien que tu n’aies pas confirmé quelle variante de GRUB est installée, on voit aussi une partition notée “bios_grub” par parted dont la désignation officielle est “BIOS boot” et qui sert à l’installation du chargeur d’amorçage de GRUB BIOS (paquet grub-pc) sur un disque au format GPT.

Or il est impossible de démarrer Windows EFI depuis GRUB BIOS.

L’installateur de Wheezy est compatible EFI, alors pourquoi n’avais-tu pas installé Debian en mode EFI, juste en désactivant le secure boot ?

Selon ton objectif, je vois trois options :

a) Pour démarrer Windows, réactiver le démarrage en mode UEFI (pas besoin de secure boot) dans le firmware (c’est un firmware EFI, pas un BIOS). Mais GRUB ne démarrera plus.

b) Réinstaller Windows avec l’UEFI désactivé. Comme Windows ne peut pas s’installer et booter en mode BIOS/legacy sur un disque au format GPT, il faudra soit repartitionner le disque au format MSDOS, en détruisant ou en conservant les partitions, soit créer un “MBR hybride” avec une table de partition MSDOS ne contenant que les partitions de Windows, les partitions pour Debian n’étant visibles que dans la table de partition GPT. Les deux manipulations peuvent se faire avec [mono]gdisk[/mono], mais c’est risqué, peu fiable, pas très propre, surtout le MBR hybride et il faut savoir ce qu’on fait exactement.

c) Installer un chargeur EFI pour Debian, à condition que le firmware UEFI ne soit pas trop buggé et accepte de démarrer autre chose que Windows. Si tu veux GRUB, il faut installer la variante qui correspond au type de firmware UEFI : grub-efi-ia32 pour un firmware UEFI 32 bits (existe sur quelques machines même avec CPU 64 bits) ou grub-efi-amd64 pour un firmware UEFI 64 bits (la majorité des PC). L’ennui, c’est je ne connais pas de moyen simple de savoir quelle variante d’UEFI on a, et on ne peut pas installer plusieurs variantes de GRUB à la fois, surtout dans Wheezy (dans Jessie on ne peut pas installer plusieurs variantes de paquets grub-* mais on peut faire cohabiter leurs chargeurs).
Il y a aussi [b]elilo[b], variante EFI de LILO, que je n’ai jamais utilisé mais qui semble contenir à la fois les variantes 32 et 64 bits.

Vu le titre tu as grub2, update-grub2.

Ils vont te donné un nouveau portable ?

Si c’est le cas, sauvegarde tes fichiers voulu de ton installation linux.

Vu que tu vas rendre le portable, inutile de récupéré grub/partition linux.

Donc, met à l’état d’usine le uefi/bios.

Branches le dvd de windows, applique la “réparation du démarrage” qui doit être dans un des options “réparation” sur l’installateur windows (si c’est comme avant).

Une fois booter sur windows, formate la partition de linux.

Vérifie bien que le soucis d’affichage y est aussi sur windows, sinon tu auras des soucis économique :slightly_smiling:

Avec GRUB 2, [mono]update-grub2[/mono] et [mono]update-grub[/mono] sont équivalents.

Merci PascalHambourg et Kripteks pour vos réponses.

Pour les options proposées de PascalHambourg :

Option a) => après avoir remis l’UEFI du bios, j’ai pu accéder à Windows, mais Windows me dit qu’il ne peut pas aller plus loin car il me dit qu’il y a une erreur de type 0xc000021a

Option b) => je n’ai pas le CD de Windows 7 car le Windows 7 provient de la partition Recovery.

Option c) => voici le grub que j’utilise d’après les paquets installés :

root@localhost:/home/guest# aptitude search grub v grub - v grub:i386 - p grub-choose-default - Control Grub Default through a GUI i grub-common - gestionnaire d'amorçage GRUB - fichiers communs p grub-common:i386 - gestionnaire d'amorçage GRUB - fichiers communs p grub-coreboot - GRand Unified Bootloader, version 2 (Coreboot version) p grub-coreboot:i386 - GRand Unified Bootloader, version 2 (Coreboot version) p grub-coreboot-bin - GRand Unified Bootloader, version 2 (Coreboot binaries) p grub-coreboot-bin:i386 - GRand Unified Bootloader, version 2 (Coreboot binaries) p grub-disk - Image disque amorçable GRUB (paquet factice) p grub-doc - Documentation for GRand Unified Bootloader (dummy package p grub-efi - GRand Unified Bootloader, version 2 (dummy package) p grub-efi:i386 - GRand Unified Bootloader, version 2 (dummy package) p grub-efi-amd64 - GRand Unified Bootloader, version 2 (EFI-AMD64 version) p grub-efi-amd64:i386 - GRand Unified Bootloader, version 2 (EFI-AMD64 version) p grub-efi-amd64-bin - GRand Unified Bootloader, version 2 (EFI-AMD64 binaries) p grub-efi-amd64-bin:i386 - GRand Unified Bootloader, version 2 (EFI-AMD64 binaries) p grub-efi-ia32 - GRand Unified Bootloader, version 2 (EFI-IA32 version) p grub-efi-ia32:i386 - GRand Unified Bootloader, version 2 (EFI-IA32 version) p grub-efi-ia32-bin - GRand Unified Bootloader, version 2 (EFI-IA32 binaries) p grub-efi-ia32-bin:i386 - GRand Unified Bootloader, version 2 (EFI-IA32 binaries) p grub-emu - GRand Unified Bootloader, version 2 (emulated version) p grub-emu:i386 - GRand Unified Bootloader, version 2 (emulated version) p grub-firmware-qemu - GRUB firmware image for QEMU p grub-firmware-qemu:i386 - GRUB firmware image for QEMU p grub-ieee1275 - GRand Unified Bootloader, version 2 (Open Firmware versio p grub-ieee1275:i386 - GRand Unified Bootloader, version 2 (Open Firmware versio p grub-ieee1275-bin - GRand Unified Bootloader, version 2 (Open Firmware binari p grub-ieee1275-bin:i386 - GRand Unified Bootloader, version 2 (Open Firmware binari p grub-imageboot - boot iso, harddisk and floppy images with grub2 and sysli p grub-invaders - multiboot compliant kernel game p grub-invaders:i386 - multiboot compliant kernel game p grub-legacy - GRand Unified Bootloader (Legacy version) p grub-legacy:i386 - GRand Unified Bootloader (Legacy version) p grub-legacy-doc - Documentation for GRUB Legacy v grub-legacy-ec2 - p grub-linuxbios - GRand Unified Bootloader, version 2 (dummy package) p grub-linuxbios:i386 - GRand Unified Bootloader, version 2 (dummy package) i grub-pc - gestionnaire d'amorçage GRUB version 2 - version PC/BIOS p grub-pc:i386 - gestionnaire d'amorçage GRUB version 2 - version PC/BIOS i A grub-pc-bin - gestionnaire d'amorçage Grub, version 2 - binaires PC/BIO p grub-pc-bin:i386 - gestionnaire d'amorçage Grub, version 2 - binaires PC/BIO p grub-rescue-pc - GRUB bootable rescue images, version 2 (PC/BIOS version) p grub-rescue-pc:i386 - GRUB bootable rescue images, version 2 (PC/BIOS version) p grub-splashimages - a collection of great GRUB splashimages p grub2 - GRand Unified Bootloader, version 2 (paquet de transition p grub2:i386 - GRand Unified Bootloader, version 2 (paquet de transition i A grub2-common - gestionnaire d'ammorçage Grub, version 2 - fichiers commu p grub2-common:i386 - gestionnaire d'ammorçage Grub, version 2 - fichiers commu p grub2-splashimages - a collection of great GRUB2 splashimages p pv-grub-menu - Creates a menu.lst file for PV-GRUB root@localhost:/home/guest#

Kripteks, pour la sauvegarde de mes données linux, justement j’ai besoin d’abord d’utiliser Windows 7 (honte à moi) parce que j’ai 2 disques durs externes (que je vais utiliser pour la sauvegarde) qui n’ont pas été reconnu par ma debian, et peut-être qu’elles seront reconnus par Windows 7.

Voici une capture d’écran de mon disque dur externe que l’utilitaire graphique de disque a pu détecter :
http://img15.hostingpics.net/pics/835488Capturedu20151111145200.png
(quand je branche le disque dur externe, je ne l’entend même pas tourner)

Pour grub c’est comme PascalHambourg a dit un peu plus haut.

Pour tes disque durs externe. Je sais pas comment ils fonctionnents.
As-tu ntfs-3g installé ? Donne le retour de “fdisk -l” un peu après que tu as brancher les deux externe.
Sont-ils utilisé pour autre chose ?
Tu peux effacer leur contenu pour crée de nouvelle partition ntfs dessus ? (qui sera connut sous linux et windows donc bon pour backup).

Si en mode recovery tu réinstalles windows, peut-être que tu garderas tes partitions linux, du coup il faudra juste les ouvrires sous windows via un logiciel ou autres.

@Kripteks,

oui, ntfs-3g était déjà installé, et après avoir branché un disque dur externe (à l’aide d’un boitier externe), fdisk -l ne me retourne uniquement le disque dur interne, pas le disque dur externe.

Pourtant, quand je branche le disque dur externe, la commande dmesg donne ceci :

[ 2595.047765] usb 1-1: new high-speed USB device number 5 using xhci_hcd [ 2595.067867] usb 1-1: New USB device found, idVendor=1bcf, idProduct=0c31 [ 2595.067877] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 2595.067883] usb 1-1: Product: USB to Serial-ATA bridge [ 2595.067888] usb 1-1: Manufacturer: Sunplus Innovation Technology [ 2595.067892] usb 1-1: SerialNumber: 301123456789 [ 2595.070190] scsi10 : usb-storage 1-1:1.0

Et lsusb :

...
Bus 001 Device 005: ID 1bcf:0c31 Sunplus Innovation Technology Inc. SPIF30x Serial-ATA bridge
...

As-tu essayé les options de réparation/restauration du menu de démarrage de Windows (touche F8) ?
Je ne vais pas pouvoir aider à réparer Windows, ce n’est vraiment pas mon domaine.

Cela confirme, s’il en était besoin, que c’est grub-pc qui est installé.
Mais installer GRUB EFI n’aidera pas plus Windows à démarrer normalement.

Avec “Aucun média détecté”, le problème semble matériel et je doute que Windows fasse mieux. As-tu vérifié l’alimentation du disque ?
Apparemment c’est un disque SATA avec un pont adaptateur USB-SATA et seul le pont est visible, pas le disque derrière. Peux-tu sortir le disque SATA de son boîtier et le brancher directement dans le PC (s’il a un second emplacement pour disque) ou dans un PC fixe, ou un autre boîtier/dock USB-SATA ?
Cela le fait avec les deux disques ?

[quote=“PascalHambourg”]
Avec “Aucun média détecté”, le problème semble matériel et je doute que Windows fasse mieux. As-tu vérifié l’alimentation du disque ?
Apparemment c’est un disque SATA avec un pont adaptateur USB-SATA et seul le pont est visible, pas le disque derrière. Peux-tu sortir le disque SATA de son boîtier et le brancher directement dans le PC (s’il a un second emplacement pour disque) ou dans un PC fixe, ou un autre boîtier/dock USB-SATA ?
Cela le fait avec les deux disques ?[/quote]
=> merci encore. Pour l’alimentation, je ne sais pas comment la vérifier. Tout ce que je sais c’est que quand je branche le boitier externe à ma machine, la diode bleue du boitier externe ne s’est même pas allumé, ce qui explique pourquoi le disque dur ne tourne pas. A part ça, je ne peux même pas brancher le disque dur directement dans ma machine fixe parce que c’est un disque dur 2,5" d’un pc portable.

Je réponds dans l’autre discussion, ce sera mieux.