# "No bootable device" + Problèmes partition MBR / GPT / NTFS



## valback (5 Avril 2018)

Bien le bonjour à tous 

J'ai BEAUCOUP de mal à installer Windows 10 sur mon MBP mi-2012. 

Je télécharge le fichier ISO -> je branche une clé USB de 32Go -> je lance Bootcamp assistant -> Je coche toutes les options -> Je divise en deux mon DD (j'ai plus de 300go d'espace libre) -> BC fait son travail avec la clé USB -> BC lance le partitionnage -> Et...
Là une fois que tout se ferme apparait le message *"No bootable device -- insert boot disk and press any key". 

*
Puis l'écran devient noir et il ne se passe plus rien. 
J'éteins et rallume l'ordi en gardant la touche alt enfoncée. 
On me présente 3 disque : Macintosh HD - Windows - BOOTCAMP Efi
je clique sur bootcamp et je lance le programme d'installation, je rempli les premiers formulaires sans problèmes. Mais lorsque je dois choisir le disque d'installation un nouveau message d'erreur apparait : 
*"Windows ne peut pas être installé sur ce disque. Le disque sélectionné possède une table de partition MBR. Sur les systèmes EFI, Windows peut uniquement être installé sur des disque GPT.

Windows ne peut pas être installé dans cet espace disque. Windows doit être installé dans une partition formatée en NTFS"
*

Je ne comprends rien à ces histoires de MBR / EFI / GPT / NTFS mais je comprends tout de même qu'il y a un problème avec ma partition Windows ? Et je suis surpris qu'il me dise "il faut installer sur disque GPT" puis il dit que Windows doit être installé "dans une partition formatée en NTFS". 

Helllllllllp


----------



## macomaniac (5 Avril 2018)

Salut *valback
*
Quel est la version de macOS (ou OS X) installée sur le disque ?


----------



## valback (6 Avril 2018)

macomaniac a dit:


> Salut *valback
> *
> Quel est la version de macOS (ou OS X) installée sur le disque ?



Hello Macomaniac, je suis actuellement en High Sierra 10.13.4


----------



## macomaniac (6 Avril 2018)

Alors il y a un point que je ne conçois pas > qui est le suivant -->


dans les anciens OS (jusqu'à El Capitan 10.11 compris) > les ingénieurs de la  avait implémenté un mécanisme logique tel que > à la moindre création d'une partition dans un format Windows quelconque sur un disque Mac > une table de partition alternative de la *GPT* principale (des blocs *1* à *32*) se trouvait inscrite sur le bloc n°*0* (ou 1er bloc) de type *HMBR* (= *H*ybrid_*MBR*). Cette table alternative permettait le boot en mode *Legacy* (par un *BIOS* émulé par l'*EFI*) des anciens OS Windows comme W-7 > en décrivant en mode *MBR* les mêmes exactes partitions que celles de la *GPT*.

à partir de l'OS Sierra 10.12 compris (et donc dans l'OS High Sierra 10.13) --> ce mécanisme logique a été abandonné > pour la raison que l'OS W-10 boote principalement en mode *UEFI* (càd. par l'*EFI* directe > lisant le descripteur de la partition *BOOTCAMP* inscrit dans la table *GPT* principale). Donc sur le bloc *0* du disque n'existe qu'une table bidon dite *PMBR* (*P*rotective_*MBR*) > qui emballe l'ensemble de l'espace-disque dans une "pseudo-partition" de type *0xEE* (= *EFI GPT*)  = laquelle n'a rien à voir avec les partitions réelles du disque définies par la *GPT* et est intrinsèquement inadressable (d'où la valeur "protectrice" de cette pseudo description).

Dans ce contexte > le message d'erreur -->

```
"Windows ne peut pas être installé sur ce disque. Le disque sélectionné possède une table de partition MBR.
Sur les systèmes EFI, Windows peut uniquement être installé sur des disque GPT.
```


évoque immanquablement la présence d'une *HMBR* sur le bloc *0* du disque > ce qui n'a pas pu être l'effet d'un mécanisme automatique à la création de la partition *BOOTCAMP* en *FAT-32* préalable > puisque ton OS est High Sierra qui a abandonné ce mécanisme logique.

La seule source aurait pu en être l'«Assistant BootCamp» > qui aurait considéré que ton type de Mac (datant de 2012) avait besoin de booter W-10 en mode *Legacy* > et donc aurait créé une *HMBR* sur le bloc *0*. Mais alors il aurait fallu installer W-10 en mode *Legacy* (en sélectionnant le boot *Windows* et pas *EFI Boot* à l'écran de choix du disque de démarrage).

Cela dit il est possible de reconvertir une *HMBR* à une *PMBR* en utilisant l'exécutable *gdisk* de _Roderick Smith_.

Mais pour lire au préalable ce qu'il en est des tables de partitions du secteur d'amorçage du disque (soit par l'exécutable *gpt* > soit par *gdisk*) --> il faut que le *SIP* (protocole de sécurisation de plus en plus envahissant) soit désactivé > car il verrouille l'accès aux blocs du disque de démarrage même en mode lecture seule. Je sais : tout ça a quelque chose de plus en plus délirant > si l'on se reporte à l'aimable liberté d'accès d'antan. Comme si concevoir la problématique des tables de partition alternatives d'un disque Mac n'était déjà pas assez complexe > et qu'il faille en plus buter contre des protocoles de verrouillage qui ne déclarent même plus actuellement l'étendue de leur domaine d'action : ce ne sont plus une poignée de dossiers-Système qui sont verrouillés dans le volume de démarrage --> c'est la distribution logique du disque physique de démarrage entier qui est verrouillée - ce contre un accès en lecture seule > ce qui est délirant.

En conséquence > il faut savoir si le *SIP* est activé ou désactivé dans ton OS. Va à : Applications > Utilitaires > lance le «Terminal». Dans la fenêtre ouverte > saisis la commande (informative) :

```
csrutil status
```
et ↩︎ (presse la touche "Entrée" du clavier pour exécuter la commande)


tu vas voir s'afficher le statut actuel du *SIP*

Poste ce retour en copier-coller > et pour bien faire (en prolégomène au postage futur d'autres tableaux) > utilise ce procédé :


dans la page de ce fil de MacGé > presse le bouton *⌹* (carré avec un + inscrit - juste au milieu de la largeur de la fenêtre totale) dans la barre de menus au-dessus du champ de saisie d'un message > menu  : *</> Code* > par *⌘V* colle dans la fenêtre *Code* > presse le bouton *Insérer* (ce procédé permet un affichage fenêtré qui économise l'espace de page en respectant la mise en forme des tableaux du «Terminal» --> d'où une plus grande lisibilité)


----------



## valback (6 Avril 2018)

Je ne suis pas un habitué de tout ce langage informatique  mais merci de ta réponse je situe un peu plus le problème déjà et ça m'aidera si j'ai de futurs problèmes ! 
Voilà ce que j'obtiens en entrant la commande : 


```
MacBook-Pro-de-Valentin:~ Balou$ csrutil status
System Integrity Protection status: enabled.
MacBook-Pro-de-Valentin:~ Balou$
```

Du coup il faut que je désactive le SIP ? Comment puis-je faire cela ?


----------



## macomaniac (6 Avril 2018)

Pour désactiver le *SIP* > tu dois passer une commande dans le Terminal de l'OS de secours - la même commande est invalide dans le Terminal de macOS démarré.

Donc re-démarre > les 2 touches *⌘R* (*cmd R*) tenues pressées jusqu'à l'affichage d'une  = démarrage sur l'OS de secours. Tu obtiens un écran affichant une fenêtre de 4 *Utilitaires macOS*. Va à la barre de menus supérieure de l'écran > menu : *Utilitaires* > sous-menu : *Terminal*.

Passe la commande :

```
csrutil disable
```


qui instruit la désactivation du *SIP* ; la commande prend effet après re-démarrage

re-démarre donc (*Menu*  > *Disque de démarrage* > sélectionne ton volume de démarrage > *Redémarrer*).

De retour dans ta session > passe les 2 commandes (l'une après l'autre) :

```
diskutil list
csrutil status
```


la 1ère va afficher le tableau des disques > avec tables de partition principales > et partitions

la 2è le statut actuel du *SIP*

=> poste ces 2 retours ici dans unr fenêtre de code comme tu l'as déjà bien fait.


----------



## valback (6 Avril 2018)

Alors pour la première commande : 


```
MacBook-Pro-de-Valentin:~ Balou$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:          Apple_CoreStorage Macintosh HD            250.2 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
   4:       Microsoft Basic Data                         249.0 GB   disk0s4

/dev/disk1 (internal, virtual):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS Macintosh HD           +249.9 GB   disk1
                                 Logical Volume on disk0s2
                                 ABFAEA82-782E-4568-BF63-8919FA9B4455
                                 Unencrypted

MacBook-Pro-de-Valentin:~ Balou$
```

Puis la deuxième : 


```
MacBook-Pro-de-Valentin:~ Balou$ csrutil status
System Integrity Protection status: disabled.
MacBook-Pro-de-Valentin:~ Balou$
```


----------



## macomaniac (6 Avril 2018)

Le *SIP* est bien désactivé.

Cette ligne du tableau -->

```
4:       Microsoft Basic Data                         249.0 GB   disk0s4
```


décrit la partition *BOOTCAMP* dans son état actuel : elle se trouve "découpée" (*carved*) en tant que partition > avec un type *Microsoft Basic Data* > mais aucune définition de volume montable n'existe actuellement dans cette partition.

Pour vérifier à présent (c'était le but de la désactivation du *SIP*) le statut de la table de partition alternative du bloc *0* --> passe la commande informative :

```
sudo gpt show /dev/disk0
```


après validation > une demande de *password* s'affiche (commande *sudo*) --> tape ton mot-de-passe de session admin en aveugle - aucun caractère ne se montrant à la frappe - et valide de nouveau

la commande affiche le tableau de la distribution des blocs logiques du disque interne > dont ceux du secteur d'amorçage (blocs *0* à *32*) portant les 2 tables de partition : alternative de type *MBR* et principale de type *GPT*

Poste ce tableau ici dans une fenêtre de code.


----------



## valback (6 Avril 2018)

Si il y a quelque chose d'étrange avec la partition windows sache que quand j'étais sur le progamme d'installation de ma clé Bootcamp j'ai cliqué sur "formater" je ne sais pas si ça a été fait ni si ça a une incidence mais je préfère te prévenir de ce que j'ai fait. 

Voilà le résultat de la commande :


```
gpt show: /dev/disk0: Suspicious MBR at sector 0
      start       size  index  contents
          0          1         MBR
          1          1         Pri GPT header
          2         32         Pri GPT table
         34          6        
         40     409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
     409640  488765824      2  GPT part - 53746F72-6167-11AA-AA11-00306543ECAC
  489175464    1269536      3  GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC
  490445000       1848        
  490446848  486326272      4  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
  976773120         15        
  976773135         32         Sec GPT table
  976773167          1         Sec GPT header
MacBook-Pro-de-Valentin:~ Balou$
```


----------



## macomaniac (6 Avril 2018)

La mention inaugurale -->

```
gpt show: /dev/disk0: Suspicious MBR at sector 0
```


désigne indubitablement sous l'intitulé "*Suspicious MBR at sector 0*" une *HMBR* (*H*ybrid_*MBR*) sur le bloc *0* du disque. Table désignée ici -->


```
0          1         MBR
```


où la mention *MBR* brute (au lieu de *PMBR* = *P*rotective_*MBR*) identifie une table de partition active de type *MBR* --> décrivant au plus *3* partitions du disque > par importation de leur localisation exacte à partir de la table *GPT* principale. Cette "importation" ou ce "pompage" dans la détermination locale (emplacement sur les blocs) des *3* partitions *MBR* --> rendant compte du concept de table "*hybride*" : hybridée des descriptions de la *GPT* principale en tant que table alternative *MBR*.

Tu vois ici les blocs de résidence de la table *GPT* principale ou directrice -->

```
1          1         Pri GPT header
          2         32         Pri GPT table
```


et tout en bas de disque > ceci -->


```
976773135         32         Sec GPT table
  976773167          1         Sec GPT header
```


constitue la table *GPT* "secondaire" = *backup* de la table principale des *32* premiers blocs.

----------

Il faut donc reconvertir la *HMBR* du bloc *0* à une *PMBR* neutre (*MBR* bidon). Pour ce faire > il faut utiliser l'exécutable *gdisk* créé par _Roderick Smith_ (le développeur de rEFInd).

Va à cette page de SourceForge : ☞*GPT Fdisk*☜ (clique le lien rouge) > presse le bouton vert *Download* > ce qui te fait obtenir  un paquet d'installation *gdisk-1.0.3.pkg* > double-clique-le > ce qui va faire s'installer *gdisk* at: */usr/local/bin/gdisk*. L'utilitaire est désormais appelable directement dans une commande du Terminal.

Passe la commande :

```
sudo gdisk /dev/disk0
```


et poste le tableau retourné.


----------



## valback (6 Avril 2018)

Ça donne presque envie de prendre des cours d'informatique tout ça 


```
GPT fdisk (gdisk) version 1.0.3

Warning: Devices opened with shared lock will not have their
partition table automatically reloaded!
Partition table scan:
  MBR: hybrid
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with hybrid MBR; using GPT.

Command (? for help):
```


----------



## macomaniac (6 Avril 2018)

Tu vois ici la coupable désignée par son nom propre -->

```
MBR: hybrid
```

Voici à présent le tuto pour la reconvertir en *P*rotective_*MBR* (tu enchaînes à partir de l'invite de commande de *gdisk*) -->



- à la suite de l'invite de commande :

```
Command (? for help):
```

tu tapes :


```
x
```

(comme e*x*pert mode) et tu valides --> ce qui affiche :


```
Expert command (? for help): ?
```

tu tapes :


```
n
```

(comme *n*ew Protective_MBR) et tu valides --> ce qui affiche :


```
Expert command (? for help):
```

tu tapes :


```
w
```

(comme *w*rite) et tu valides --> ce qui te affiche :


```
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N):
```

tu tapes :


```
y
```

(comme *y*es) et tu valides --> ce qui te affiche :


```
OK; writing new GUID partition table (GPT) to /dev/disk5.
Warning: Devices opened with shared lock will not have their
partition table automatically reloaded!
Warning: The kernel may continue to use old or deleted partitions.
You should reboot or remove the drive.
The operation has completed successfully.
```

avec récupération de l'invite de commande régulière du Terminal > signe que *gdisk* a quitté.

Re-démarre une fois > puis de retour dans ta session > repasse la commande :

```
sudo gdisk /dev/disk0
```


et poste le tableau retourné.


----------



## valback (6 Avril 2018)

```
GPT fdisk (gdisk) version 1.0.3

Warning: Devices opened with shared lock will not have their
partition table automatically reloaded!
Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.

Command (? for help):
```

Donc là mon disk0, celui "de base" est transformé. Est-ce ça ne pose pas de problème que je n'ai pas supprimé ma partition windows avant de faire les manipulations ?


----------



## macomaniac (6 Avril 2018)

Cette mention -->

```
MBR: protective
```


montre que la table alternative du bloc *0* est désormais une *PMBR* (*P*rotective_*MBR*). Càd. une table inopérante pour un boot de type *Legacy*. Seule la table *GPT* est désormais active comme table de boot. C'est la situation standard.

Est-ce que tu veux reformater la partition *disk0s4* en *FAT-32* > avec définition d'un volume *BOOTCAMP* --> afin de tester une installation ? - si tu ré-utilises l'«Assistant BootCamp» pour ce faire > je crains qu'il ne régénère une *H*ybrid_*MBR* sur le bloc *0*.


----------



## valback (6 Avril 2018)

macomaniac a dit:


> Cette mention -->
> 
> ```
> MBR: protective
> ...



Et bien oui je veux bien tester si tu penses que ça peut m'aider à résoudre mon problème


----------



## macomaniac (6 Avril 2018)

Tu peux passer la commande :

```
diskutil eraseVolume fat32 BOOTCAMP disk0s4
```


la commande reformate la partition *disk0s4* en *FAT-32* > et remonte un volume intitulé *BOOTCAMP*

Si tu n'as pas de message d'erreur > repasse une commande :

```
sudo gpt show /dev/disk0
```


et poste le tableau pour vérifier le type de table de partition du bloc *0*.


----------



## valback (7 Avril 2018)

Alors voilà ce qui s'est dit quand j'ai lancé le reformatage en FAT-32 :


```
Started erase on disk0s4
Unmounting disk
Erasing
4096 bytes per physical sector
/dev/rdisk0s4: 486207488 sectors in 7596992 FAT32 clusters (32768 bytes/cluster)
bps=512 spc=64 res=32 nft=2 mid=0xf8 spt=32 hds=255 hid=490446848 drv=0x80 bsec=486326272 bspf=59352 rdcl=2 infs=1 bkbs=6
Mounting disk
Finished erase on disk0s4 BOOTCAMP
```

Puis quand j'ai fait la deuxième commande : 


```
start       size  index  contents
          0          1         PMBR
          1          1         Pri GPT header
          2         32         Pri GPT table
         34          6        
         40     409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
     409640  488765824      2  GPT part - 53746F72-6167-11AA-AA11-00306543ECAC
  489175464    1269536      3  GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC
  490445000       1848        
  490446848  486326272      4  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
  976773120         15        
  976773135         32         Sec GPT table
  976773167          1         Sec GPT header
MacBook-Pro-de-Valentin:~ Balou$
```


----------



## 217ae1 (7 Avril 2018)

valback a dit:


> *"Windows ne peut pas être installé sur ce disque. Le disque sélectionné possède une table de partition MBR. Sur les systèmes EFI, Windows peut uniquement être installé sur des disque GPT.*



Bonjour,
J'ai eu le même problème sur un macbook air mi 2014 sous High Sierra. Dans mon cas, la solution la plus simple a été:

1) Faire une sauvegarde complète

2)  Reformatter complètement le SSD à l’aide de l’utilitaire de disque en démarrant sur la clé USB d’installation de High Sierra. Pour avoir accès à tout le disque, et pas uniquement les partitions, il faut cliquer sur l’icône présentation et choisir l’affichage des volumes physiques et le sélectionner, puis cliquer sur effacer en choisissant « table de partitions GUID », et laisser une seule partition en APFS faisant la taille de tout le disque.

3)  Réinstaller High Sierra

4)  Utiliser l’assistant bootcamp pour créer la clé USB de windows, des drivers, et pour créer la partition bootcamp.

5)  Démarrer sur la clé USB de Windows et reformatter la partition BootCamp avec l’utilitaire de Windows.

6)  Redémarer sur MacOS et reformatter la partition BootCamp en « exfat » à l’aide de l’utilitaire de disque.

7)  Puis enfin redémarer sur la clé USB de Windows et reformatter la partition BootCamp à l’aide de l’utilitaire de windows et lancer l’installation.

Je ne sais pas pourquoi il fallait reformatter plusieurs fois la même partition, mais cela a fini par fonctionner. Je la partage si jamais quelqu'un confronté au même problème n'a pas envie de se lancer dans le terminal.


----------



## macomaniac (7 Avril 2018)

@ *valback
*
Le reformatage de la partition *BOOTCAMP* n'a pas recréé de *HMBR* sur le bloc *0* où il y a toujours une *PMBR*. Tu n'as qu'à tenter d'installer Windows à cette destination.


----------



## valback (8 Avril 2018)

macomaniac a dit:


> @ *valback
> *
> Le reformatage de la partition *BOOTCAMP* n'a pas recréé de *HMBR* sur le bloc *0* où il y a toujours une *PMBR*. Tu n'as qu'à tenter d'installer Windows à cette destination.



Comment est-ce que j'atteins "cette destination" (le bloc 0) ?  Est-ce qu'il suffit de relancer mon ordi ( + alt) et de lancer la partition windows ?


----------



## valback (8 Avril 2018)

Merci 217ae1 j'essaierai plus tard si je ne trouve pas de solution plus simple !


----------



## macomaniac (8 Avril 2018)

Par « cette destination » --> je voulais dire : la partition *BOOTCAMP* affichée dans le programme d'installation de Windows.

Question : comment tu démarres sur le programme d'installation de Windows ? --> est-ce que tu dois passer par l'«Assistant BootCamp» pour cela ?


----------



## valback (8 Avril 2018)

D'accord. 
Non, là comme ma partition existe déjà et que ma clé d'installation est prête je n'ai qu'à redémarrer mon ordinateur ( + alt pour afficher les disques disponibles). Par contre j'ai une question, une fois que je redémarre et que les disks s'affichent est ce que je clique sur ma clé USB où se trouve le fichier ISO, ou est-ce que je clique sur la partition Windows qui lancera tout seul le programme de la clé USB ?


----------



## macomaniac (8 Avril 2018)

Là tu es en train de me demander des conseils d'installation de Windows - ce qui est "hors domaine" en ce qui me concerne > car je ne me suis jamais servi de cet OS. Je suis donc dans la position d'une "poule qui aurait trouvé un couteau" - comme on dit familièrement.


quand tu démarres avec *alt* --> qu'est-ce que tu as comme intitulés de volumes à l'écran de choix du volume de démarrage ?


----------



## valback (8 Avril 2018)

J'ai :
Macintosh HD - Windows - EFI Boot.

Je viens d'essayer les deux options... Et aucune ne fonctionne. Comme au début du thread en cliquant sur Windows j'ai le message "no bootable device, insert boot disk and type any key". Et quand je lance le programme d'installation sur EFI boot, au moment de choisir le disk j'ai le message d'erreur suivant qui apparait : 

"Windows ne peut être installé dans cet espace disque. Windows doit être installé dans une partition formatée en NTFS"


----------



## macomaniac (8 Avril 2018)

Si tu veux installer en mode *UEFI* --> tu dois effectivement choisir *EFI Boot* (et absolument pas *Windows* qui corrspond à l'option *Legacy*).

Quand tu dis à présent une fois engagé dans l'option de démarrage *EFI Boot* (qui est la bonne) > que tu obtiens le message :

```
"Windows ne peut être installé dans cet espace disque.
Windows doit être installé dans une partition formatée en NTFS"
```


il faut qu'après avoir sélectionné la partition *BOOTCAMP* dans le panneau des disques et partitions de l'installateur --> tu passes par l'option de reformatage du panneau --> et là que tu reformates la partition *BOOTCAMP* en *ntfs*.

Je ne peux pas t'expliquer plus en détail quel est l'intitulé de l'option qui permet le reformatage > car je suis en train d'imaginer ce que je te raconte sans l'avoir jamais accompli. Donc --> cherche une option (ou un menu) permettant de reformater la partition choisie.


----------



## valback (13 Avril 2018)

Hello Macomaniac, désolé pour mon retour un peu tard.
Effectivement l'action Formater a bel et bien fonctionné (je l'avais fait, mais c'était avant que de faire les manips que tu m'as conseillé). 
J'ai eu un autre problème mais c'était lié à l'installation Windows. J'ai du installer avec la version famille. 

Donc c'est bon Windows 10 est installé et fonctionne à merveille (j'ai un petit problème de son mais je devrais pouvoir trouver la solution tout seul cette fois  

Merci beaucoup de m'avoir aidé ET de m'avoir expliqué. Bonne continuation à toi !


----------



## macomaniac (13 Avril 2018)

*valback*

Content pour toi que tout ait marché.


----------

