J’essaie actuellement de faire un dual boot sur mon MacBook Pro sortit fin 2016 avec le système Debian (Évidemment). Hors après avoir suivi en partie ce tuto : http://www.macplanete.com/tutoriels/25009/dual-boot-macos-sierra-linux , j’arrive très bien à booter sur debian, sélectionner France et fr mais la PAF, pas de cd détecté.
J’en viens donc à vous demander de l’aide s’il vous plaît.
Quel type de support as-tu utilisé (clé USB, CD…) et comment l’as-tu préparé ?
Oui, je sais, tu as écrit plus haut que tu avais suivi un tutoriel. Mais je ne vais pas me farcir la lecture d’un tutoriel alors que tu précises que tu l’as suivi partiellement sans dire en quoi tu en as dévié. Donc je voudrais que tu décrives en détail ce que tu as fait.
-> J’ai commencé par créer une partition de 50 Go sur mon mac au format " MS-DOS (FAT) "
-> Puis grâce à la commande : dd if=//Users/moi/Desktop/debian-8.8.0-amd64-netinst.iso of=/dev/rdisk2 bs=1m
J’ai pu installer l’iso ci-dessus sur une clé USB Transcend de 8Go
-> Installation GRUB
-> Je redémarre le PC, boot sur la clé, sélectionne " Graphic Install ", je choisis la langue, et au niveau de détecter les CD, ils n’en trouve pas.
Je vient de tester avec Ubuntu, même problème, il arrive à voir que le disque ou est installé le système Linux (la clé USB Transcend de 8Go dans ce cas la)
Tu as installé GRUB avant de démarrer l’installateur Debian ? Installé où, sur le disque du Mac ou la clé USB ? Comment ? Je n’ai pas vu cette étape dans le tutoriel.
Je n’ai pas l’impression que ce soit le même problème avec Ubuntu. Tu dis que l’installateur Debian ne trouve pas l’image ISO (qui est sur la clé), alors que tu dis que l’installateur Ubuntu ne voit que la clé. Que ne voit-il pas ? Le disque du Mac ?
Si, j’arrive très bien à booter sur les 2 système installateur, mais c’est au moment de choisir la partition ou je souhaite installer mon système ou il ne me propose que ma clé USB dans les deux cas (Ubuntu et Debian).
Tu veux dire que dans les deux cas l’installateur ne voit pas le disque du Mac ?
Ce n’est pas du tout la même chose que « pas de CD détecté ». Attention à être précis.
rEFIt n’est pas GRUB. Encore une fois, attention à être précis.
Il faudrait vérifier si c’est vraiment le noyau qui ne détecte pas le disque ou si c’est juste le partitionneur. Démarre l’installateur en mode rescue et ouvre un shell. Dans le shell, exécute la commande fdisk -l. Si seule la clé est affichée, exécute la commande lspci -nn pour lister les périphériques PCI et notamment identifier le contrôleur disque.
Ce serait plus lisible et pratique pour les lecteurs, mais moins facile à réaliser depuis l’installateur Debian : il faut monter un système de fichiers amovible et enregistrer la sortie des commandes dedans. L’alternative est d’exécuter ces commandes ou leurs équivalents sout MacOS ou un système live.
Remarque : La table de partition de la clé USB ne correspond pas du tout à celle de l’image d’installation netinst de Debian copiée avec dd. Mais ce n’est pas très important si l’installateur fonctionne.
Le contrôleur disque correspond à cette ligne : 01:00.0 Mass storage controller [0180]: Apple Inc. Device [106b:2003] (rev 11)
D’après ce lien :
Le pilote pour ce contrôleur est le module “nvme” mais il faut au minimum un noyau 4.6. Tu auras donc plus de chance avec Debian 9 (Stretch), la future version stable de Debian qui inclut un noyau 4.9 (ou bien avec le noyau 4.9 de jessie-backports, s’il existe une version de l’installateur Debian Jessie qui inclut ce noyau). Mais ce n’est pas suffisant : le module nvme du noyau de Stretch ne reconnaît pas nativement l’identifiant de ce contrôleur, il faut donc l’ajouter avec les commandes suivantes :
Note que le problème du SSD non reconnu va certainement se reproduire lorsque tu auras réussi à lancer GRUB. Le démarrage du système va s’interrompre avec le shell de secours de l’initramfs, et tu devras renouveler l’opération (en espérant que le module nvme est inclus dans l’initramfs) puis quitter le shell en tapant exit ou Ctrl+D pour poursuivre le démarrage.
Pour éviter de devoir faire cela, il faut automatiser cette opération dans l’initramfs. Voici plusieurs méthodes possibles :
installer et patcher les sources du noyau pour ajouter l’identifiant au module nvme et le recompiler. Il faudra refaire l’opération à chaque mise à jour du noyau. Pas forcément très pratique.
ajouter un petit script dans l’initramfs pour charger le module et ajouter l’indentifiant ;
utiliser les fichiers de configuration de l’initramfs et de modprobe pour réaliser ces opérations.
Je vais détailler cette dernière méthode qui me semble la plus élégante.
Dans le fichier /etc/initramfs-tools/modules, ajouter une ligne avec le nom du module à charger :
nvme
Créer un fichier /etc/modprobe.d/nvme-ssd-apple.conf contenant la ligne suivante (consulter man modprobe.d pour l’explication) :