Table des matières

, , , ,

Installation d'Ubuntu Gutsy / Intrepid sur un MacBook en dual boot avec Mac OS X

Ce tutoriel vous guide durant l'installation complète d'Ubuntu Gutsy Gibbon sur un MacBook, en dual-boot avec Mac OS X. Il est principalement issu de la traduction et de la récupération de morceaux de tutoriels disponibles sur internet. Il vous mènera depuis Mac OS X pour créer vos partitions à la configuration du moindre détail.

Pour un MacBook pro, il y a sûrement quelques modification à apporter, vous êtes libre de les effectuer.

Attention! Il existe une autre page, qui décrit comment installer Edgy Eft, une version plus ancienne d'Ubuntu. De plus, la méthode est beaucoup plus compliquée que celle qui est décrite dans cette page-ci.

Il existe un post du forum très utile pour tout paramétrer (touchpad | diode verte de la touche majuscule | touches #@ et ><…) sur un Macbook unibody alu 5.1, basé sur un post de help.ubuntu.com (EN), le tout sur Jaunty 9.04

Pré-requis

Graver l'image ISO du CD d'Ubuntu

Installation du système

Téléchargement et installation de Boot Camp

Boot Camp est un utilitaire d'Apple permettant:

Sous Mac OS X Tiger (10.4) il faut télécharger et installer Boot Camp sur Clubic.com. Lorsqu'on lance cette version, le message suivant apparaît : Assistant Boot Camp version bêta a expiré. Pour contourner cette limitation il suffit de régler l'horloge de son mac à une date de 2006 par exemple.

Sous Mac OS X Leopard (10.5), BootCamp est déjà installé.

Lancez BootCamp, vous allez redimensionner la partition Mac OS X et créer une seconde partition.

Boot Camp vous propose de graver un CD de pilotes pour Windows. Vous pouvez sauter cette étape.

Note importante:

Sous Mac OS X Leopard (10.5) les pilotes Windows sont présents sur le DVD d'installation.

Installation de rEFIt

rEFIT est un menu de démarrage graphique pour les MacIntel, il nous sera utile pour pouvoir choisir entre le gestionnaire de démarrage de Mac OS X et GRUB. Avant d’effectuer ces opérations pensez à bien mettre à jour votre version de Mac OS X.

Téléchargez rEFIt l’image (rEFIt-0.10.dmg) et montez la.

Une fois ouverte, double-cliquez sur rEFIt.mpkg. Suivez les instructions et tout se passera bien.

A noter qu'il existe maintenant les versions 0.12 (refit0.12.dmg), 0.13 (refit0.13.dmg) et 0.14 (refit0.14.dmg) de rEFIt.

Normalement, l'installation se fait automatiquement et au reboot de la machine, un menu doit apparaitre. Si ce n'est pas le cas, il faut lancer le Terminal de Mac OSX et rentrer les lignes de commande suivante:

cd /efi/refit (appuyer sur entrer)

./enable.sh (appuyer sur entrer)

Là, il va vous demander votre mot de passe MAC. A vous de le rentrer et voilà, au reboot de la machine, votre menu rEFIT sera activé.

Installation d'Ubuntu

Insérez le CD d'installation d'Ubuntu dans votre lecteur CD, redémarrez votre MacBook. Au démarrage vous aurez le choix entre démarrer sur Mac OS X ou bien sur le CD Ubuntu. Choisissez bien entendu le deuxième. Si votre macbook ne démarre pas sur le CD, mais sur le disque dur, redémarrez à nouveau votre macbook, en appuyant sur la touche “C”, avant l'apparition de la pomme. Après avoir ainsi booté sur le Live cd, choisissez la langue française grâce à la touche F2.

Vous êtes maintenant sur le bureau d’Ubuntu. Double-cliquez sur l’icône “Installer” du bureau.

Deux choses importantes pendant cette installation :

Dans l'espace libre créé par le redimensionnement de la partition Mac OS, créez vous une partition / de 4go, un swap d'1 go et tout le reste pour le /home. Je vous renvoie vers d'autres tutoriels pour savoir comment configurer tout ça.

Normalement, l'installation se finira sans erreur. Choisissez “Redémarrer” pour booter sur votre toute nouvelle installation.

Au redémarrage, rEFIt vous propose de choisir entre Boot Mac OS X from Macintosh HD and Boot Linux from HD. Choisissez la deuxième option, vous tomberez ensuite sur GRUB qui vous lancera Ubuntu.

Configuration du matériel

Dans cette deuxième partie, nous allons aborder la configuration de notre toute fraîche Ubuntu. Nous allons entre autre configurer : le trackpad, le wifi, le rétro-éclairage, le clavier “à la mac”, et plein d'autres choses.

Toutes les commandes que je vais vous donner seront des commandes à copier/coller dans un terminal.

C'est plus facile et plus rapide que de passer par une application graphique comme Synaptic. De plus ça évitera les erreurs de frappes si vous utilisez la méthode du copier/coller.

Connaître la génération du Macbook

Même si l'apparence extérieure est la même, Apple met à jour régulièrement les composants du Macbook. Il est donc important de connaître la version matérielle (génération) du Macbook.

Pour cela, dans un terminal :

lshal | grep "system.hardware.product"

Cette commande retourne résultat du type :

system.hardware.product = 'MacBook4,1'

ce qui signifie que vous avez, dans ce cas, un macbook de 4ème génération. pour plus d'information consultez l'article de Wikipedia sur le sujet : http://fr.wikipedia.org/wiki/MacBook

Activer le dépôt Mactel-support

Un groupe d'utilisateurs se consacre au support matériel des Mac Intel : https://launchpad.net/~mactel-support Ils proposent des paquets spécifiques sur le dépot qu'il faut ajouter :

Système/Administration/Sources de logiciels

Aller dans Configuration/Dépôts, puis :

Dans l'onglet “Logiciels de tierces parties” ajouter la ligne APT trouvée sur le site :

deb http://ppa.launchpad.net/mactel-support/ubuntu gutsy main

Installation pour Intrepid

Pour installer Intrepid sur votre MacBook, procédez exactement comme cela est stipulé ci-dessus; c'est à dire:

- Partitionnement avec BootCamp

- Installation de rEFIt

- Démarrage avec CD Intrepid (choisissez bien 32 ou 64 bits sur la page de téléchargement)

- Partitionnement

- Redémarrage

Le wifi

Le wifi est reconnu de base pour les core duo simple.

Depuis Ubuntu Intrepid Ibex (8.10), le wifi fonctionne dès l'installation (pas avec le LiveCD). Une fois le système installé, il vous suffit de vous rendre dans “Système > Administration > Pilotes de périphériques” et d'activer le “pilote réseau sans fil Broadcom STA”. Voilà, ça fonctionne après un simple redémarrage du système ! Testé avec succès depuis quelques mois sur un Macbook 3,1 (Santa Rosa) que l'on choisisse la version 32 ou 64 bits.

Si vous utilisez toujours Hardy Heron (8.04), après l'installation, mettez simplement votre système à jour (“Système > Administration > Mise à jour”) à l'aide d'un câble réseau (forcément, vous n'avez pas encore le wifi). Vous n'êtes pas obligé de passer à Intrepid Ibex. Ensuite, procédez comme sous Intrepid : vous n'avez plus qu'à activer le pilote propriétaire !

Récemment est sorti une quatrième génération de MacBook (ils disposent d'une coque en aluminium et d'une carte graphique). À priori, le matériel wifi n'a pas changé, aussi la marche à suivre devrait être semblable à celle des Macbook Santa Rosa (3,1). Il faudrait vérifier ou, dans le cas contraire, indiquer la marche à suivre.

Ça marche avec le live cd en tous les cas

La résolution d'écran

Le gestionnaire de pilotes propriétaires intégré à Gutsy a du configurer votre carte graphique correctement.

Pour un MacBook ce sera les pilotes Intel, pour les Pro ce sera du ATI ou nVidia.

Le touchpad

Il s'agit certainement là de la question la plus posée (avec le wifi). Quand on a un MacBook, on s'est vite habitué aux défilements vertical et horizontal à deux doigts en même temps n'importe où dans le touchpad.

Comment faire pour émuler ça sous Ubuntu ?

Il faut éditer le fichier /etc/X11/xorg.conf, dans la section InputDevice pour le périphérique Synaptics. En clair, dans la console faites une sauvegarde du fichier de configuration du serveur X

sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf_save

puis éditez le fichier “xorg.conf” :

gksudo gedit /etc/X11/xorg.conf

La documentation du wiki anglophone nous donne à ce point deux solutions. La première est la plus semblable à Mac OS X, la deuxième se contente d'émuler un clic droit par un clic sur la partie droite de l'unique bouton : on se retrouve donc avec le même comportement qu'un PC.

Section "InputDevice"
	Identifier "Synaptics Touchpad"
	Driver "synaptics"
	Option "SendCoreEvents" "true"
	Option "Device" "/dev/psaux"
	Option "Protocol" "auto-dev"
	Option "LeftEdge" "10"
	Option "RightEdge" "1200"
	Option "TopEdge" "10"
	Option "BottomEdge" "370"
	Option "FingerLow" "10"
	Option "FingerHigh" "20"
	Option "MaxTapTime" "180"
	Option "MaxTapMove" "220"
	Option "SingleTapTimeout" "100"
	Option "MaxDoubleTapTime" "180"
	Option "HorizEdgeScroll" "0"
	Option "VertEdgeScroll" "0"
	Option "TapButton1" "1"
	Option "TapButton2" "3"
	Option "TapButton3" "2"
	Option "LockedDrags" "off"
	Option "VertScrollDelta" "20"
	Option "HorizScrollDelta" "50"
	Option "VertTwoFingerScroll" "1"
	Option "HorizTwoFingerScroll" "1"
	Option "MinSpeed" "1.10"
	Option "MaxSpeed" "1.30"
	Option "AccelFactor" "0.08"
	Option "Emulate3Buttons" "true"
	Option "SHMConfig" "on"
	# corner buttons
	Option "RTCornerButton" "0"
	Option "RBCornerButton" "0"
	Option "LTCornerButton" "0"
	Option "LBCornerButton" "0"
EndSection

Enregistrez et quittez.

Cette configuration vous propose un clic droit en tapant à deux doigts en même temps n'importe où dans le pad, mais aussi le déplacement horizontal et vertical à deux doigts.

Cela fonctionne correctement mais pose problème avec la configuration de Firefox par défaut. Il s'emmêle les pinceaux avec le défilement horizontal. Pour corriger ça, ouvrez un nouvel onglet et dans la barre d'adresse tapez about:config. Validez. Recherchez ses deux paramètres et changez leurs valeurs :

mousewheel.horizscroll.withnokey.action de 2 à 0 
mousewheel.horizscroll.withnokey.numlines de -1 à 1

De plus ça peut-être une bonne idée d'éviter que le clic droit n'interfère pas avec le défilement. La solution pour ce problème passe par une commande nommée syndaemon qu'il faut lancer à chaque démarrage de session graphique.

Dans Système > Préférence > Sessions, ajoutez une entrée avec comme commande :

syndaemon -t -d 

L'autre solution consiste à partager l'unique bouton en deux pour avoir le clic droite… à droite. Voici le code à mettre dans le fichier /etc/X11/xorg.conf :

Section "InputDevice"
	Identifier "Synaptics Touchpad"
	Driver "synaptics"
	Option "SendCoreEvents" "true"
	Option "Device" "/dev/psaux"
	Option "Protocol" "auto-dev"
	Option "LeftEdge" "150"
	Option "RightEdge" "1070"
	Option "TopEdge" "100"
	Option "BottomEdge" "310"
	Option "FingerLow" "25"
	Option "FingerHigh" "30"
	Option "MaxTapTime" "180"
	Option "MaxTapMove" "220"
	Option "MaxDoubleTapTime" "180"
	Option "HorizEdgeScroll" "0"
	Option "VertEdgeScroll" "0"
	Option "TapButton1" "0"
	Option "TapButton2" "0"
	Option "TapButton3" "0"
	Option "LockedDrags" "off"
	Option "VertScrollDelta" "20"
	Option "HorizScrollDelta" "50"
	Option "VertTwoFingerScroll" "1"
	Option "HorizTwoFingerScroll" "1"
	Option "MinSpeed" "1.10"
	Option "MaxSpeed" "1.30"
	Option "AccelFactor" "0.08"
	Option "Emulate3Buttons" "true"
	Option "SHMConfig" "on"
	# corner buttons
	Option "RTCornerButton" "0"
	Option "RBCornerButton" "2"
	Option "LTCornerButton" "0"
	Option "LBCornerButton" "3"
EndSection

Le touchpad sous Intrepid

Depuis Intrepid, la modification du xorg.conf ne fonctionne plus, il faut opérer de la façon suivante:

Dans le terminal taper la commande: sudo gedit /etc/hal/fdi/policy/HAL.fdi Entrez votre mot de passe. Dans l'éditeur copier le bloc ci-dessous:

<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
  <device>
    <match key="info.capabilities" contains="input.touchpad">
      <match key="info.product" contains="appletouch">
        <merge key="input.x11_driver" type="string">synaptics</merge>
        <merge key="input.x11_options.SHMConfig" type="string">true</merge>
        <merge key="input.x11_options.VertEdgeScroll" type="string">false</merge>
        <merge key="input.x11_options.HorizEdgeScroll" type="string">false</merge>
        <merge key="input.x11_options.VertTwoFingerScroll" type="string">true</merge>
        <merge key="input.x11_options.HorizTwoFingerScroll" type="string">true</merge>
        <merge key="input.x11_options.RTCornerButton" type="string">false</merge>
        <merge key="input.x11_options.RBCornerButton" type="string">false</merge>
        <merge key="input.x11_options.LBCornerButton" type="string">false</merge>
        <merge key="input.x11_options.LTCornerButton" type="string">false</merge>
        <merge key="input.x11_options.TapButton2" type="string">3</merge>
        <merge key="input.x11_options.TapButton3" type="string">2</merge>
        <merge key="input.x11_options.PalmDetect" type="string">1</merge>
       <merge key="input.x11_options.ClickFinger1" type="string">1</merge>
        <merge key="input.x11_options.ClickFinger2" type="string">3</merge>
        <merge key="input.x11_options.ClickFinger3" type="string">2</merge>
      </match>
    </match>
  </device>
</deviceinfo>

Il faut enregistrer le document et après… redémarrer votre Intrepid (le célèbre ctrl-alt-backspace fonctionne pas).

Liens de référence: https://help.ubuntu.com/community/MacBook#touchpadtweaks http://pennsylvania.ubuntuforums.com/showthread.php?p=6042376

Hibernation/Mise en veille

Le dernier noyau en date de Gutsy est le 2.6.22.14 qui ne gère pas du tout bien l'hibernation. C'est une régression car le 2.6.22.12 la gérait lui.

En fait il passe bien en hibernation, mais ne se réveille jamais…

Si vous utilisez Intrepid Ibex, vous ne devez pas procéder à cette manipulation. La mise en veille fonctionne parfaitement (avec le Macbook 3,1). Par contre, l'hibernation est peu pratique car elle est plutôt longue à l'hibernation et longue au réveil. De plus, le trackpad se fige au réveil (il faut se débrouiller au clavier ou brancher une souris USB). Dans ce cas, redémarrer votre ordinateur et privilégiez la mise en veille ou l'extinction à l'hibernation jusqu'à nouvel ordre.

Les différences entre la version 12 et la version 14 ne valent pas que nos macbooks perdent la possibilité de passer en hibernation, nous allons donc revenir à une ancienne version du noyau.

Voici toutes le lignes de commande pour réaliser le passage à la version précédente. Assurez-vous de ne pas oublier un paquet et surtout installez les dans cet ordre.

wget http://launchpadlibrarian.net/9471523/linux-image-2.6.22-12-generic_2.6.22-12.39_i386.deb 
sudo dpkg -i linux-image-2.6.22-12-generic_2.6.22-12.39_i386.deb 

wget http://launchpadlibrarian.net/9471519/linux-headers-2.6.22-12_2.6.22-12.39_all.deb
sudo dpkg -i linux-headers-2.6.22-12_2.6.22-12.39_all.deb

wget http://launchpadlibrarian.net/9471524/linux-headers-2.6.22-12-generic_2.6.22-12.39_i386.deb
sudo dpkg -i linux-headers-2.6.22-12-generic_2.6.22-12.39_i386.deb

wget http://launchpadlibrarian.net/9498000/linux-ubuntu-modules-2.6.22-12-generic_2.6.22-12.32_i386.deb
sudo dpkg -i linux-ubuntu-modules-2.6.22-12-generic_2.6.22-12.32_i386.deb

wget http://launchpadlibrarian.net/9470141/linux-restricted-modules-2.6.22-12-generic_2.6.22.4-12.3_i386.deb
sudo dpkg -i linux-restricted-modules-2.6.22-12-generic_2.6.22.4-12.3_i386.deb

Le noyau est donc installé.

Problème ? Par défaut Ubuntu bootera sur son noyau par défaut qui est certes plus récent mais qui ne fonctionne pas. Il faut donc changer le choix du noyau par défaut.

Il s'agit du numéro 2 dans la liste de Grub (la numérotation débute à 0), allons changer ça en conséquence :

gksudo gedit /boot/grub/menu.lst 

et changez la ligne

default=0

en

default=2

Redémarrez.

Sur les MacBook ayant eu besoin de configurer le wifi, il faut sûrement tout refaire, changement de noyau oblige.

Sur les MacBook de 2007, vous devez en plus éditer le fichier /etc/default/acpi-support et procéder aux changements :

Luminosité de l'écran

Le contrôle de luminosité de l'écran fonctionne sans rien faire via les touches F1 et F2 avec Gutsy.

Cependant, de temps en temps, alors que la luminosité est réglée comme bon vous semble, l'écran s'illumine complètement sans vous demander votre avis. Ca arrive de manière aléatoire mais à coup sûr quand vous débranchez puis rebranchez l'alimentation.

Cette configuration peut-être changée. Il faut utiliser le gconf-editor qui se lance en ligne de commande ou via Alt+F2 en tapant… gconf-editor. Dans la section 'apps/gnome-power-manager/backlight'' décochez la case “enable”.

Si jamais vous désirez revenir à l'ancien comportement, alors vous n'aurez plus qu'à revenir et recocher cette case.

Colorisation de l'écran

FIXME

Réduire la consommation d'énergie

Installez le paquet powertop

sudo aptitude install powertop

Puis

sudo powertop

Suivez les instructions données pour réduire la consommation électrique de votre MacBook.

Polices et effets graphiques

Quand vous utilisez les effets graphiques (activés par défaut sur les MacBooks), les polices utilisées dans les titres des fenêtres et/ou dans GDM sont parfois bien plus grosses que la normale.

Editez le fichier /etc/gdm/gdm.conf (en sudo évidemment) :

gksudo gedit /etc/gdm/gdm.conf

A la ligne 625, trouvez :

[server-Standard]
name=Standard server
command=/usr/bin/X -br -audit 0

et le remplacer par :

[server-Standard]
name=Standard server
command=/usr/bin/X -br -audit 0 -dpi 96

Redémarrez le serveur X soit en faisant ctrl+alt+back space soit en vous déconnectant de votre session. Reconnectez-vous, le problème est résolu.

Accéder à la partition Mac os x

FIXME : rien à faire, la partition est déjà dispo

Sous intrepid : la partition est déjà dispo, mais on n'a pas les droits en écriture dessus. Un moyen intéressant de le faire est de monter la partition dans un emplacement spécifique (ex : /mnt/mac) et de changer le UID de l'utilisateur pour que les accès soit garantis (de uid=1000 on passe à uid=501) :

dans un terminal :

# création du répertoire
sudo mkdir /opt/mac

# recherche de l'UUID de la partition à monter 
ls -l /dev/disk/by-uuid/

# montage automatique au lancement de ubuntu
sudo gedit /etc/fstab

Dans le fichier ouvert, rajouter la ligne suivante, après avoir trouvé l'UUID :

UUID=XXXXXXXXXXXXXXXXX /mnt/mac hfsplus user,force 0 0

Ensuite, passer en mode terminal via le raccourci fn+ctrl+alt+F1, ouvrir la session, puis stopper gdm (si gnome, si kde utiliser kdm). On édite ensuite le fichier /etc/passwd pour remplacer le UID utilisateur afin qu'il corresponde à celui de mac :

sudo /etc/init.d/gdm stop
sudo nano /etc/passwd

Pour Unity

sudo service lightdm stop

pour stopper l'environnement graphique

On recherche l'utilisateur de base (uid=1000) et on remplace “1000” par “501”, qui est l'identifiant de l'utilisateur “zéro” sur mac (remplacez “myuser” par le nom de votre utilisateur).

de :

myuser:x:1000:1000:myuser,,,:/home/myuser:/bin/bash

on passe à :

myuser:x:501:501:myuser,,,:/home/myuser:/bin/bash

puis on réaffecte les droits sur le répertoire /home/myuser et on redémarre gdm (ou kdm) :

sudo chown -R myuser:myuser /home/myuser
sudo /etc/init.d/gdm start

Pour Unity

sudo service lightdm stop

pour redémarrer l'environnement graphique Mais avant il faut editer /etc/login.defs et changer a 500 les valeurs UID_MIN et GID_MIN sous peine de ne plus apparaître sur la fenêtre de login.

# Min/max values for automatic uid selection in useradd
#
UID_MIN			  500
UID_MAX			60000
# System accounts
#SYS_UID_MIN		  100
#SYS_UID_MAX		  999

#
# Min/max values for automatic gid selection in groupadd
#
GID_MIN			  500
GID_MAX			60000
# System accounts
#SYS_GID_MIN		  100
#SYS_GID_MAX		  999

Attention le changement d' uid n'est pas sans risque faites une sauvegarde, on ne retrouve pas toujours tous les droits.

Normalement il faudrait aussi modifier le gid de la même manière dans le fichier /etc/group .

Voir également la discussion à ce sujet : http://forum.ubuntu-fr.org/viewtopic.php?id=140139

Si vous voulez faire une partition partagée Data entre Mac et ubuntu (en fat 32) et que suite à une mauvaise manipulation, vous vous retrouvez avec la partition fat32 marqué d'un drapeau msftres (MS reserved), impossible à enlever sous GParted, alors une solution est là (en anglais).

La Webcam iSight

Explications en anglais : http://ubuntuforums.org/showthread.php?t=491381

Sur intrepid : installer isight-firmware-tools : 

sudo apt-get install isight-firmware-tools

et sélectionner le pilote mac OSX depuis la partition mac.

Après tests avec skype, la vidéo fonctionne très bien, mais le micro est à son volume minimum. Pour régler le problème : Clic droit sur le gestionnaire de volume en haut à droite et “ouvrir le contrôleur de volume”, puis clic sur le bouton “préférences” et sélectionner “PCM”, “Mic Boost” et “Input Source” (il y a plusieurs Input Source, je les ai tous sélectionnés). Puis monter le volume de “Mic Boost”. Sources : http://ubuntu-tutorials.com/2007/12/30/microphone-support-on-the-macbook-skype-2-supported/

Sources