Ceci est une ancienne révision du document !



Installation d'Ubuntu Gutsy 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, 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.

  • Un MacIntel avec Mac OS X installé.
  • Avoir mis son EFI à jour (dans Mac OS X, menu pomme / Mise à jours des logiciels)
  • Le "gestionnaires mac pour windows" (créé par l'assistant Boot Camp, qui bien que désormais indisponible sur le site d'Apple est toujours téléchargeable sur clubic.com); n'est utile que pour les utilisateurs de Mac OS X 10.4 "Tiger" et précedents (il est inclus dans 10.5 et suivants)
  • rEFIT
  • Un Cd Ubuntu i386 ou 64 si Core 2 Duo
  • Une connexion à Internet

Téléchargement et installation de Boot Camp

Boot Camp est un utilitaire d'Apple permettant:

  • Le redimensionnement d'une partition.
  • La création d'un CD avec les drivers du Mac pour Windows.
  • Boot Camp permet aussi de "simuler" un BIOS au démarrage de la machine et donc le boot d'OS tel que Ubuntu ou Windows.

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 drivers pour Windows. Vous pouvez sauter cette étape.

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.

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. Vous booterez alors 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 :

  • n'oublier pas de choisir le clavier pour macintosh ! Sinon le mappage du clavier ne sera pas bon.
  • ne jamais négliger la phase de partionnement, il est tellement facile de tout casser pendant cette phase là.

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 tout 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.

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

Le wifi

Le wifi est reconnu de base pour les core duo simple : sautez donc cette section.

La tâche se complique avec les core 2 duo, non seulement c'est plus compliqué mais en plus vous avez le choix entre deux solutions qui ne sont pas innées.

Récemment est sorti une troisième génération de MacBook à base de Santa rosa. Voir en bas de la section wifi pour comment faire fonctionner le wifi sur cette génération.

N'ayant pas de Macbook seconde ou troisième génération, je vous conseille de venir corriger si vous rencontrez des inexactitudes.

Bastien Jaillot

Madwifi

sudo aptitude install build-essential
wget http://snapshots.madwifi.org/madwifi-trunk-current.tar.gz
tar -zxvf madwifi-trunk-current.tar.gz
cd madwifi-ng-*
make
sudo make install
sudo modprobe ath_pci
sudo modprobe wlan_scan_sta

Si vous préférez installer la version de test de madwifi,

sudo aptitude install subversion
svn checkout http://svn.madwifi.org/madwifi/trunk madwifi

puis reprendre à tar.

Le wifi devrait maintenant fonctionner.

Il reste qu'un problème peut arriver : si le wifi s'arrête de temps à autres avec un message du noyau disant "wifi0: rx FIFO overrun; resetting", vous devez utiliser cette commande pour désactiver les messages d'alerte.

sudo iwpriv ath0 bgscan 0

Vous pouvez aussi l'ajouter au fichier /etc/rc.local pour que cette modification soit automatique à chaque redémarrage :

sudo sed -i~ 's/^exit 0/iwpriv ath0 bgscan 0\nexit 0/' /etc/rc.local

ndiswrapper

L'autre solution repose sur le programme ndiswrapper. Pour fonctionner, ndiswrapper utilise les pilotes Windows fourni sur le CD de drivers (gravé depuis Mac OS X via BootCamp).

Cette méthode ne fonctionne que pour Ubuntu 32 bits

Sur le CD de drivers, vous trouverez un fichier nommé atherosxpinstaller.exe qui nécessite d'avoir le programme non libre unrar, disponible dans le dépôt multiverse.

  • activez les dépôts mutltiverse
  • installez les logiciels rar et unrar
sudo aptitude install rar unrar
  • décompressez le fichier atherosxpinstaller.exe comme ceci :
mkdir ~/atheros
unrar x atherosxpinstaller.exe ~/atheros/
  • Il ne reste plus qu'à utiliser ces drivers avec ndiswrapper :
sudo apt-get install ndiswrapper-utils-1.8

sudo ndiswrapper -i "~/atheros/net5416.inf"
sudo modprobe ndiswrapper
sudo echo >> /etc/modules "ndiswrapper"

Sur un MacBook Santa Rosa

sudo apt-get install ndiswrapper-utils-1.9
wget http://theflew.free.fr/truks/macwifi.zip
unzip macwifi.zip
cd drivers/
sudo ndiswrapper -i bcmwl5.inf
ndiswrapper -l
sudo depmod -a
sudo modprobe ndiswrapper
sudo cp /etc/network/interfaces /etc/network/interfaces.orig
echo -e 'auto lo\niface lo inet loopback\n' | sudo tee /etc/network/interfaces
sudo ndiswrapper -m
echo 'ndiswrapper' | sudo tee -a /etc/modules
echo 'ENABLED=0' | sudo tee -a /etc/default/wpasupplicant

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

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…

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 :

  • POST_VIDEO=true en POST_VIDEO=false
  • ajouter sky2 aux modules qui doivent être retiré avant la mise en veille puis réactivé au réveil : MODULES="sky2"

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 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+suppr 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

La Webcam iSight

Sources

  • macbookgutsy.1207239297.txt.gz
  • Dernière modification: Le 03/06/2008, 14:36
  • (modification externe)