Installer Windows sur un vieux Macbook sans clé USB et sans DVD

Ce samedi a été une après midi bidouille.

Mon frère s’est commandé un Optibay, un étui en métal permettant d’y loger un second disque dur à mettre à la place du lecteur optique (lecteur DVD si vous préférez).

L’installation du matos s’est passé sans soucis, le MacBook Pro milieu 2009 retrouve une seconde jeunesse avec un SSD en disque principal (le disque dur de base du Mac se retrouvant en second pour stocker tout pleins de choses, notamment une partition dédié à Windows).

Sauf que arrivé à l’installation du dit Windows … Je me suis rendu compte que j’avais complètement oublié que le support de Bootcamp sur un Macbook relativement ancien ne pouvais se faire qu’en présence d’une galette officielle de Windows dans le mangeur de disque … Pas cool :'(

Et histoire d’enfoncer encore le clou un peu plus … Impossible de booter par clé USB comme vous le feriez sur un Macbook récent (vous verrez plus loin dans l’article), bref la misère :/

Quoi qu’il en soit, l’esprit du système D m’emplis et tel un Mac Gyver des temps moderne, je me suis mis au défi d’installer Windows 7 avec seulement un ISO (légal / non modifié) et sans utiliser de périphériques externes. C’est parti !

Bootcamp veut pas ? Demandons-lui plus gentiment !

Ayant déjà pas mal touché à la structure des partitions Mac, je savais pertinemment que simplement formater son disque dur en NTFS et démarrer dessus comme un vieux PC (oui parce que maintenant il y a ces saloperies de UEFI qui t’oblige à faire 40 manips avant de pouvoir booter) ne fonctionneras pas. En effet, Mac OS n’utilise pas le MBR (Master Boot Record, petite partie au tout début du disque dur réservé à la correspondance entre les différentes partitions et leurs places sur le disque) mais un EFI qui est indépendant du disque et calcul lui-même les différents placements de partitions.

Bref tout cela pour dire que je n’ai pas envie de me prendre la tête à tenter de reconstruire une partoche telle que l’aurais fait Bootcamp, autant lui demander (avec un fouet clouté et quelques martinets) de la faire lui-même.

Avant toutes choses, nous aurons besoin de quelques outils :

  • XCode (disponible sur l’AppStore)
  • VMWare Fusion (prenez la version d’essai si vous ne voulez pas l’acheter, on en a besoin seulement pour l’installation, vous pourrez le supprimer après coup 😉 )
  • Un driver permettant l’écriture de fichiers sur un support NTFS (pour ma part j’utilise une vielle version de Paragon NTFS)

Il va nous falloir modifier l’application « Assistant Boot Camp » se trouvant dans le dossier « Utilitaires » de vos apps Mac. Faites en tout d’abord une sauvegarde histoire de pouvoir revenir en arrière en cas de problème.

Suivez ensuite ces quelques étapes :

  1. Faites un clic droit sur « Assistant Boot Camp » puis « Afficher le contenu du packet ».
  2. Allez dans le dossier « Contents » et copiez le fichier « Info.plist » quelque part pour l’éditer (sur le bureau par exemple).
  3. Ouvrez le avec XCode et parallèlement, ouvrez les « Informations système » (se trouvant aussi dans le dossier « Utilitaires » de vos apps Mac).
  4. Ajoutez au début de la liste « DARequiredROMVersions » votre « Version de la ROM de démarrage » se trouvant dans les infos système.
  5. Ajoutez à la liste « PreUSBBootSupportedModels » (toujours au début) votre modèle de Mac (là encore trouvable dans les infos système).
  6. Sauvegardez et remplacez le Info.plist de l’application originale par celui-ci (un mot de passe vous sera demandé).
  7. Ouvrez le Terminal (toujours au même endroit, « Utilitaires ») et tapez cette commande :
    sudo codesign -fs - /Applications/Utilities/Boot Camp Assistant.app

Lancez votre Assistant Boot Camp modifié et oh joie ! Plus d’alerte comme quoi vous ne pouvez continuer sans CD 😀 Du coup, il reste plus qu’à partitionner. Faites comme bon vous semble sur ce point.

Et l’installation de Windows dans tout ça ?

Bon, bah vu qu’on a un assistant fonctionnel, on va se faire une clé USB et booter dessus et le tour sera joué ! … Haha, si seulement c’était si simple x)

Étant sur un vieux Mac, vous vous rendrez compte que vous ne pouvez pas booter sur la clé en appuyant sur Option (Alt) au démarrage et que le seul moyen de boot viable (celui après le redémarrage une fois la partition créer) ne va pas bien loin, Windows étant incapable de reconnaitre la dite partition (erreur 0x80300024).

Hata-0x80300024-940x600

On va donc faire sans, il ne nous reste plus qu’à « monter » le disque dur sur lui-même … Heu attends, c’est … What ?

Pour cela, nous allons fabriquer une VM un peu spéciale, une VM qui aura comme disque dur virtuel votre disque dur physique #diskception

Tout d’abord, ouvrez votre terminal et tapez y : df -H

Cela devrait vous afficher ce genre de choses :
Filesystem    Size  Used Avail Capacity iused     ifree     %iused Mounted on
/dev/disk0s2  249G  108G 141G  44%      26350123  34489619  43%    /
devfs         190k  190k 0B    100%     642       0         100%   /dev
/dev/disk1s2  1000G 433G 567G  44%      105636992 138469674 43%    /Volumes/Energic
map -hosts    0B    0B   0B    100%     0         0         100%   /net
map auto_home 0B    0B   0B    100%     0         0         100%   /home

Ce qui va nous intéresser sont les disques dur en /dev/disk, le reste osef :3 Repérez le disque dur où va se retrouver votre partition Windows (sans le sX) en vous aidant de sa taille (genre sur mon exemple, on voit que c’est le disque dur d’1To (1000 Go) et donc /dev/disk1).

Ensuite, tapez cette commande :
/Applications/VMware Fusion.app/Contents/Library/vmware-rawdiskCreator print /dev/disk1

Vous devriez avoir quelque chose comme ça :
Nr      Start       Size Type Id Sytem
1          40     409600  GPT EE Efi System
2      411648  976361472  GPT EE Basic Data

Vous aurez peut-être d’autres partitions, mais ici, c’est le « Basic Data » qui nous intéresse. Notez que si vous en avez plusieurs, aidez vous là encore de la taille pour trouver le bon ID (Nr) de partition.

Maintenant que vous avez toutes les infos, créons notre VM. Pour cela, lancez VMWare et faites comme si vous faisiez une VM classique à partir d’une image disque (laissez le créer un disque dur virtuel temporaire et retenez le nom de celui-ci (par défaut c’est « Disque Virtuel »)). Une fois créée, arrêtez la VM si elle s’est lancée automatiquement et fermez complètement VMWare.

Allez à l’endroit où se trouvent votre fichier de machine virtuelle (le .vmwarevm) et faites un clic droit « Afficher le contenu du packet ». Supprimez tous les .vmdk et tapez ces deux commandes dans le terminal :
cd /home/votrenom/emplacementdevotrefichier.vmwarevm
/Applications/VMware Fusion.app/Contents/Library/vmware-rawdiskCreator create /dev/disk1 2 "Disque Virtuel" ide

Veuillez bien entendu changer les éléments en violet par vos propres informations déduis plus haut.

Redémarrez VMWare et vous constaterez qu’il vous demandera votre mot de passe. C’est normal, faites et installez Windows comme si c’était une VM normale. Sans vous en rendre compte, vous être en train d’installer Windows sur une partition physique, le disque dur virtuel créé via les commandes ci-dessus faisant le lien avec la partition physique 🙂

Il se peut que l’installation fasse planter de manière violente VMWare, ce n’est pas grave. L’important est que la première partie de l’installation soit complétée (celle avant le premier redémarrage, qui inscrit l’ensemble des fichiers système).

Une fois ceci fait, redémarrer votre Mac sur Mac OSX. Je précise, car à ce stade, la partition Windows apparaitra si vous avez appuyé sur Option (Alt) mais vous obtiendrez une erreur 0xc000000e.

Vista_winload

Sachez que nous avons fait le plus dur, car maintenant, c’est plus que du clic clic 🙂 Nous avons réussi à créer une partition bootable et reconnu par Mac, même si l’installation de Windows effectuée dans la VM est non fonctionnelle.

La prochaine étape est de monter l’ISO de votre Windows 7 (double cliquez dessus, c’est la magie de Mac, pas besoin de Deamon Tools ou autre logiciel bourré de logiciels espions :D) et copiez tout son contenu dans le nouveau disque dur Windows (le vrai cette fois, d’où la nécessité d’avoir un drivers pouvant écrire sur le NTFS). N’hésitez pas à effacer tout ce qu’il s’y trouve avant, mais ne le formater surtout pas !

Redémarrer l’ordinateur en bootant cette fois sur la partition Windows. Installez Windows comme à l’accoutumé en choisissant la bonne partition et sans la formater. Après plusieurs redémarrages de Windows, vous verrez que celui-ci vous propose de faire un checkdisk qui va vous détecter des tonnes d’erreurs et qui va durer pas mal de temps. C’est normal, laissez faire … En même temps, notre méthode étant un peu ninja, ce n’est pas étonnant que Windows n’aime pas. x)

Cool ! Mais c’est fini ?

Hé bah non ! Ce serais trop simple. x)

En fait, Windows est proprement installé, mais il va vous falloir installer les drivers. Étant sur Mac, le choix le plus simple reste encore d’utiliser ceux fourni par Bootcamp … Sauf que sur un ancien Mac, vous aurez ce joli petit dialogue d’erreur quand vous lancerez le setup.exe 🙁

NewWin7 2014-04-27 15-02-37 2014-04-27 15-02-41

La solution est d’aller dans le dossier « Divers » puis  « Apple » et de lancer BootCamp.msi en administrateur. Pour cela, ouvrez le menu démarrer, tapez « cmd » et appuyez respectivement sur Control + Maj + Entrée. L’invite de commandes Windows devrais démarrer en tant qu’administrateur. Déplacez vous à l’endroit où se trouve le dossier des drivers Bootcamp (en utilisant « cd c:votrecheminDriversApple »), puis tapez BootCamp.msi. L’installation devrais se lancer sans aucun soucis 🙂

Il nous reste une dernière chose à changer. A chaque démarrage, Windows vous propose soit de démarrer sur Windows 7, soit sur un « Windows Setup » qui est en fait le disque d’installation de Windows que nous avions copié tout à l’heure. Damned !

Sans titre

Pas de panique, il y a une commande pour régler ce problème. Ouvrez de nouveau cmd en administrateur et tapez :
bcdedit

Vous devriez avoir quelque chose qui ressemble à ça :

Gestionnaire de démarrage Windows
---------------------------------
identificateur          {bootmgr}
device                  partition=C:
description             Windows Boot Manager
locale                  fr-FR
inherit                 {globalsettings}
default                 {current}
resumeobject            {08a78ac0-cd48-11e3-a3ac-a2e0aa6fdbe2}
displayorder            {current}
                        {7619dcc9-fafe-11d9-b411-000476eba25f}
toolsdisplayorder       {memdiag}
timeout                 30

Chargeur de démarrage Windows
-----------------------------
identificateur          {current}
device                  partition=C:
path                    Windowssystem32winload.exe
description             Windows 7
locale                  fr-FR
inherit                 {bootloadersettings}
osdevice                partition=C:
systemroot              Windows
resumeobject            {08a78ac0-cd48-11e3-a3ac-a2e0aa6fdbe2}
nx                      OptIn

Chargeur de démarrage Windows
-----------------------------
identificateur          {7619dcc9-fafe-11d9-b411-000476eba25f}
device                  ramdisk=[boot]sourcesoot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
path                    windowssystem32ootwinload.exe
description             Windows Setup
locale                  en-US
inherit                 {bootloadersettings}
osdevice                ramdisk=[boot]sourcesoot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
systemroot              windows
detecthal               Yes
winpe                   Yes
ems                     Yes

Ce qui nous intéresse, c’est l’identifiant en violet. Bien entendu, il sera différent chez vous 😉

Notez le et tapez ceci :
bcdedit /delete {7619dcc9-fafe-11d9-b411-000476eba25f} /cleanup

Et voilou, le tutoriel s’arrête ici. J’espère que vous aurez appris des choses même si vous n’avez pas effectué les dites manipulations.

A bientôt pour de nouvelles aventures !

4 réflexions au sujet de « Installer Windows sur un vieux Macbook sans clé USB et sans DVD »

  1. Bonjour,

    Merci pour ce super tuto !

    Je doute d’une chose, c’est pour l’installation des drivers sur un mac non compatible… Chez moi l’installation se fait mais je ne pense pas que tous les drivers soit installés…

    • Il existe deux versions du package BootCamp, chacun responsable d’un type de Mac.
      Regarde la table de compatibilité ici et prends bien la version correspondante : https://support.apple.com/fr-fr/HT205016#tables
      Tu peux connaitre l’année de ton Mac en allant sur le logo de la pomme tout en haut à gauche de l’écran puis « À propos de ce Mac » sur OSX.
      Si aucune des deux versions ne fonctionne, dis-moi ce qui ne va pas et on fouillera ;3

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.