[install] MBR corrompu? (résolu)

Questions et astuces concernant l'installation et la configuration d'archlinux
Répondre
GillesC
newbie
Messages : 9
Inscription : jeu. 17 mai 2012, 16:22

[install] MBR corrompu? (résolu)

Message par GillesC »

Bonjour,

Avant toute chose, il n'y a pas urgence à donner une réponse: je ne pourrai probablement recommencer à travailler sur mon problème qu'à partir de mardi prochain.

J'ai installé CTKArch sur un Thinkpad un peu ancien, en écrasant (volontairement...) le Windows qui était dessus.

Cette machine commençant à donner des signes de faiblesse matérielle, je me suis fait acheter un nouveau portable via mon boulot (parce qu'après tout, cette machine sert à 87,8% du temps environ pour le boulot :D ). Cette nouvelle merveille (?) est un HP EliteBook 8470p.

Comptant profiter de l'occasion pour passer à un système full-systemd, je me suis dit que je n'allais pas repartir de zéro avec ma vieille image de CTKArch, et que j'allais me lancer à partir de la dernière image d'Arch.

Je suis donc pas à pas la procédure indiquée dans l'Installation de base. J'ai eu un souci sur le partitionnement: le portable étant livré avec 4 partitions primaires (HP Recovery, HP Tools, Windows et SYSTEM...), j'ai dû virer HP Tools (après une copie intégrale sur DVD).

J'ai ensuite avec gparted lancé depuis un LiveCD (celui de CTKArch ^^) créé une partition étendue. Au final, je suis arrivé à ceci (sorry pour tous les détails, je ne sais pas ce qui est pertinent):
* SYSTEM, 100M, je n'y touche pas :-)
* Windows 170Go
* HP Recovery
* une partition étendue, avec
** /dev/sda5: 100Mo que je pensais réserver pour /boot, en ext2
** /dev/sda6: 25Go pour / (oui, j'ai vu large, car j'ai constaté que mon cache de pacman était souvent volumineux...) en ext4
** /dev/sda7: 8Go pour /swap (avec 8Go de RAM, je ne devrais pas en avoir besoin mais on ne sait jamais... et puis, j'ai de la place) en linux-swap (j'ai décidé de faire dans l'originalité)
** /dev/sda8 pour /home en ext4

Au moment de monter les disques, j'ai écrit

Code : Tout sélectionner

mount /dev/sda6 /mnt && mkdir /mnt/{boot,home} && mount /dev/sda5 /mnt/boot
et

Code : Tout sélectionner

mount /dev/sda8 /mnt/home
J'édite /boot/syslinux/syslinux.cfg pour que root pointe vers /dev/sda6 et pas /dev/sda3 comme c'était le cas par défaut.

Comme je veux conserver mon dual boot (pour une fois que j'ai une machine sous Windows...), je décommente les lignes de /boot/syslinux/syslinux.cfg qui évoquent Windows.

Le système s'installe, je reboote sans problème pour créer un nouvel utilisateur en voyant au passage mon nouveau menu de démarrage, je crée mon utilisateur, lance le démon dhcpcd à la main car j'ai perdu le réseau dans la bataille, installe xorg avec

Code : Tout sélectionner

pacman -Syu xorg-server xorg-xinit xorg-utils xorg-server-utils
J'ai une ATI, mais ne me souviens plus du modèle exact, donc je me dis que je vais retrouver ça sous Windows. Et puis ça me permettra de tester si je pointe correctement vers Windows. Je re-reboot donc et là, patatra, boot device not found, plus rien ne se lance.

Où ai-je raté une étape? Le moment où j'ai déclaré que /boot serait au sein d'une partition étendue?

Le meilleur (?): après avoir réparé mon système de manière à pouvoir relancer Windows (avec le CD de réparation que j'avais gravé au préalable...), ce dernier démarre sans problème, vois toutes ces partitions qu'il déclare "partitions principales". Mais quand je boote sur un LiveCD, gparted ne reconnaît plus rien, et prétend ne voir qu'une seule partition non allouée de 470Go :?

Je ne sais pas par quoi commencer, et surtout comment interpréter ce que me renvoie gparted (qui ne me dit rien qui vaille...)

Comment puis-je récupérer un dual boot Windows/Arch avec ce que j'ai? Faut-il réinstaller? Repartitionner via l'outil de Windows avant?

Merci!
Dernière modification par GillesC le lun. 04 mars 2013, 12:49, modifié 1 fois.
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10711
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [install] MBR corrompu?

Message par FoolEcho »

GillesC a écrit :Le meilleur (?): après avoir réparé mon système de manière à pouvoir relancer Windows (avec le CD de réparation que j'avais gravé au préalable...), ce dernier démarre sans problème, vois toutes ces partitions qu'il déclare "partitions principales". Mais quand je boote sur un LiveCD, gparted ne reconnaît plus rien, et prétend ne voir qu'une seule partition non allouée de 470Go :?
Pas très clair... C'est juste le démarrage de windows qui ne va pas ou tu ne peux plus non plus démarrer Arch ? (dans ce dernier cas, je comprends encore moins) :?
Le juge de paix à mon avis réside dans un fdisk -l (en root).

Tu es sûr que le chaînage vers windows dans syslinux.cfg désignait la bonne partition (vu que tu as fait sauter une partition, en as-tu tenu compte) ?
«The following statement is not true. The previous statement is true.» :nage:
GillesC
newbie
Messages : 9
Inscription : jeu. 17 mai 2012, 16:22

Re: [install] MBR corrompu?

Message par GillesC »

Rien ne démarrait du tout, aucun système. Je ne recevais pour tout message qu'un "Boot device not found". Ni Windows, ni Arch n'étaient trouvés, la machine s'arrêtait apparemment avant même de trouver syslinux. C'est pour ça que je soupçonne le MBR.

J'ai réparé (probablement le MBR, mais c'est difficile de savoir ce qui se passe exactement quand on clique sur "Réparation du démarrage" dans un outil graphique...) le démarrage avec le disque de réparation de Windows 7.

En fait, j'ai même eu des problèmes lors de la réparation, puisque le disque de réparation ne détectait plus Windows. En suivant ce tuto, il ne détectait pas qu'une version de Windows était présente. À force d'insister sur des boutons parcourir et annuler, j'ai fini par accéder au menu présentant l'option "Réparation du démarrage", qui m'a amené à la situation actuelle: maintenant mon système boote directement sous Windows sans passer par le menu de syslinux.

Mais quand je boote sur un LiveCD, gparted ne détecte plus aucune partition formattée sur mon DD... ce qui me semble passablement étrange et inquiétant (doux euphémisme...).

Je n'ai pas accès à la machine avant lundi après-midi: j'ai du boulot à faire ce week-end et n'ai pas voulu subir la tentation de régler ça à tout prix au lieu de travailler :roll:
Avatar de l’utilisateur
Ypnose
Maître du Kyudo
Messages : 1363
Inscription : sam. 01 mai 2010, 13:17

Re: [install] MBR corrompu?

Message par Ypnose »

Hum, tu as regardé si tu n'as pas de soucis au niveau de la table de partitions? Essaye avec TestDisk en live comme avec SystemRescueCD, par exemple.
GillesC
newbie
Messages : 9
Inscription : jeu. 17 mai 2012, 16:22

Re: [install] MBR corrompu?

Message par GillesC »

Je crois que j'ai trouvé la cause profonde: UEFI... Ça ne fait pas bon ménage avec syslinux, paraît-il...

Par contre, cela ne me dit pas encore comment récupérer ma table de partition :?
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10711
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [install] MBR corrompu?

Message par FoolEcho »

Avec de l'UEFI, il te faut grub.
Côté table de partition, tu as le choix: MBR ou GPT (tu es sûr de ne pas avoir fait une embrouille à ce niveau aussi ?).
«The following statement is not true. The previous statement is true.» :nage:
GillesC
newbie
Messages : 9
Inscription : jeu. 17 mai 2012, 16:22

Re: [install] MBR corrompu?

Message par GillesC »

Côté table de partition, tu as le choix: MBR ou GPT (tu es sûr de ne pas avoir fait une embrouille à ce niveau aussi ?).
C'est tout à fait possible. J'ignorais l'existence d'UEFI et de GPT... Ne connaissant que MBR, j'ai fait comme j'en avais l'habitude.

Outre les partitions que j'ai évoquées dans le premier message de ce thread, il y en avait une ou deux autres, "non allouées", de quelques Mo. Je ne les ai pas touchées, car je me suis dit que ça pouvait être le tatouage. Il y a peut-être là-dedans la partition UEFISYS.

J'espère juste que je n'ai rien fait d'irréparable... Je verrai ça lundi après-midi, après m'être muni de quelques kg de DVD (pour une sauvegarde système intégrale, Windows me demande 70Go... gasp.) si jamais je n'arrive pas à me dégoter un DD externe.

En fait, je m'étais dit que pour une fois j'allais documenter toutes les étapes de l'installation et avais commencé un mini-journal. Mais c'est parti en sucette assez vite :roll:
GillesC
newbie
Messages : 9
Inscription : jeu. 17 mai 2012, 16:22

Re: [install] MBR corrompu?

Message par GillesC »

Pfiou...

Juste histoire de ne pas vous laisser sur votre faim.

J'ai rencontré de très nombreuses difficultés, surtout que je perdais un peu la mémoire d'une fois à l'autre puisque je ne pouvais me consacrer au problème que quelques heures toutes les deux semaines.

Le problème venait bien d'un souci avec EFI.

Je me suis dit que pour me simplifier la vie, j'allais sous-traiter l'installation à un (semi-)fork (Manjaro en l'occurrence, CTKArch demandant trop de manipulations post-install). Je mettrai à jour les miroirs ultérieurement pour avoir une vraie™ Arch.

Je sélectionne leur install de testing pour la prise en compte de l'UEFI, pas de problème -prétend-il. Installation OK, je reboote, ça marche sous Linux, je reboote une nouvelle fois pour tester Windows et là, patatras: non system disk or disk error, etc, il ne trouve plus aucun OS, toutékacé en profondeur. La machine ne peut plus booter que sur des Live-CD (même plus sur le DVD d'installation de Windows 7...).

Après maints et maints tests (merci les Live-CD, notamment l'utilitaire Boot-Repair dispo sur une Secure Ubuntu qui m'a mis sur la piste à défaut de corriger ce qui n'allait pas), je m'apprêtais à jeter l'éponge et tout formater la semaine dernière. Et puis, je ne sais pas, l'envie de ne pas me faire dicter ma conduite par une bête machine, je me relance dans une ultime tentative. Un message d'alerte (cf. Boot-Repair ci-dessus) me met sur la piste: il fallait que je créasse une partition EFI formaté en fat32, et de type EF00. Qu'à cela ne tienne Étienne, je l'avais déjà fait mais sans résultat. Sauf que... sauf qu'apparemment, la partition devait commencer au secteur 0.

Je sucre donc une partition Windows System en la reformatant en fat32 et lui attribuant le bon type à la main.

L'installeur de Manjaro se plaint que la partition doit faire au moins 512 Mo, mais je n'ai pas la place (/dev/sda1 fait 300M0, la suivante sur le disque est mon install Windows sur sda2, que je n'ose toucher). Je croise les doigts.

BTW, j'avais essayé de placer /usr sur une partition séparée (tant que j'y étais avec EFI...), cela ne marche pas: il ne trouve pas / (ce qui est pour le moins gênant...). J'ai fusionné les partitions destinées à accueillir /usr et /.

Et là, la joie: j'ai un système fonctionnel sous Linux.

Seul souci: impossible de booter sous Windows. Le script os-prober dans /etc/grub.d le détecte, mais ne pointe pas vers le fichier de boot efi sur la partition Windows. Chose très compréhensible et pardonnable puisqu'en l'occurrence... il n'existait plus -pour autant qu'il y ait jamais été présent, et pas dans la partition system que j'avais dû écraser. Une petite recherche et je copie le fichier bootmgfw.efi présent dans le répertoire C:\Windows\Boot\EFI, dans le répertoire C:\EFI\microsoft\boot.

Il m'a fallu ensuite éditer à la main (là encore, après une demi-douzaine d'essais) /boot/grub/grub.cfg pour que le chainloader prenne en paramètre ce fichier (

Code : Tout sélectionner

(${root})/EFI/microsoft/boot/bootmgfw.efi
et pas vers un bête +1) et ô miracle, je parviens maintenant à booter Windows.

Cependant, il me reste un dernier souci. Bien que j'aie inclus les lignes correspondantes dans le /etc/grub.d/40-custom.cfg, grub-mkconfig l'ignore et à chaque fois me génère un fichier grub.cfg incorrect (chainloader +1). Je me suis fait un backup évidemment pour pouvoir éventuellement restaurer ça à la prochaine mise à jour de grub, mais c'est enquiquinant. Mais cela fera l'objet d'un autre post, pour l'instant je savoure le moment :cocktail: :top: :bravo:
jean_no
yeomen
Messages : 286
Inscription : dim. 09 sept. 2007, 12:19

Re: [install] MBR corrompu? (résolu)

Message par jean_no »

salut

il n'existe pas de fichier /etc/grub.d/40-custom.cfg

mais un éxécutable ( script ) /etc/grub.d/40_custom ( ce qui veut dire que tu dois vérifier si le fichier est éxécutable ).

De plus, si tu as installé os-prober , un conseil : désinstalle le.

A+
Avatar de l’utilisateur
onyx67
Elfe
Messages : 766
Inscription : dim. 06 nov. 2011, 18:12
Localisation : Alsace

Re: [install] MBR corrompu? (résolu)

Message par onyx67 »

jean_no a écrit :De plus, si tu as installé os-prober , un conseil : désinstalle le.
Ah bon, et pourquoi?
"La complication est un effet de la simplicité mal acquise"

Intel i5-2320; Nvidia GeForce GT 520; ATA Hitachi 2To; ArchLinux-KDE
GillesC
newbie
Messages : 9
Inscription : jeu. 17 mai 2012, 16:22

Re: [install] MBR corrompu? (résolu)

Message par GillesC »

jean_no a écrit :salut

il n'existe pas de fichier /etc/grub.d/40-custom.cfg

mais un éxécutable ( script ) /etc/grub.d/40_custom ( ce qui veut dire que tu dois vérifier si le fichier est éxécutable ).

De plus, si tu as installé os-prober , un conseil : désinstalle le.

A+
Exact: heureux d'avoir pu booter sous Windows (sans commentaire please :wink: ), j'étais en train d'installer des mises à jour et n'avais donc pas accès à Linux pour vérifier ce que j'écrivais de mémoire: tout est OK et le fichier est bien exécutable.

Mais même question qu'onyx67: pourquoi le désinstaller? Il fait des mises à jour du menu de grub dans notre dos?
GillesC
newbie
Messages : 9
Inscription : jeu. 17 mai 2012, 16:22

Re: [install] MBR corrompu? (résolu)

Message par GillesC »

J'ai réglé mon problème de chainloader incorrect... effectivement en désactivant os-prober, en ajoutant GRUB_DISABLE_OS_PROBER=true au fichier /etc/default/grub (méthode propre et simple trouvée sur ce forum.

J'ai ensuite mis mon entrée Windows dans 40-custom, regénéré un grub.cfg avec grub-mkconfig -o /boot/grub/grub.cfg (précédemment, cela n'avait aucun effet car je ne précisais pas le fichier de sortie), et hop, tout est propre...

Bug de os-prober ou autre, je ne sais pas mais ce n'est pas important au final puisque mon Windows ne va pas se mettre à migrer d'une partition à une autre :)
Répondre