Problème dualboot sur MacOS

Bonjour à tous,

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.

Merci d’avance pour vos réponses.

Cordialement,

Enj0ii

Tu veux dire sur l’installateur Debian ? Ou un système Debian installé ?

Sur l’installateur Debian.

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 ?

J’ai installé rEFit oui.

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.

Oui voila, dans les deux cas l’installateur ne voit pas le disque du Mac.

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.

Voici les réponses que j’ai obtenu :

Se serait plus lisible de copier le résultat de la commande plutôt qu’une copie d’écran !

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 :

modprobe nvme
echo 106b 2003 > /sys/bus/pci/drivers/nvme/new_id

Ensuite vérifier avec la fin de la sortie de la commande dmesg que le SSD est reconnu avant d’aller plus loin.

1 J'aime

Merci beaucoup ! Grace à cette manipulation, le disque était visible et j’ai pu installé Debian.

Plus qu’à faire fonctionner rEFInd afin de pouvoir sectionner la partition ou j’ai installé Debian :slight_smile:

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.

  1. Dans le fichier /etc/initramfs-tools/modules, ajouter une ligne avec le nom du module à charger :

nvme

  1. Créer un fichier /etc/modprobe.d/nvme-ssd-apple.conf contenant la ligne suivante (consulter man modprobe.d pour l’explication) :

install nvme /sbin/modprobe --ignore-install nvme $CMDLINE_OPTS ; echo 106b 2003 > /sys/bus/pci/drivers/nvme/new_id

  1. Regénérer l’initramfs avec la commande suivante :

update-initramfs -u

Note : je n’ai pas testé.