Installation d'Ubuntu sur Apple MacPro
Compatibilité
Pour connaitre la version de votre Apple MacPro, tapez la commande # sysctl hw.model
dans un terminal depuis Mac OS X, ou # dmidecode -s system-product-name
depuis un LiveCD Ubuntu.
- MacPro3,1 (2008, bi quad-core, E5462 2.8 GHz). carte radio (Wifi/Bluetooth) Broadcom Corporation BCM4328 802.11a/b/g/n (rev 03). Deux cartes ethernet Intel Corporation 80003ES2LAN Gigabit Ethernet Controller (Copper). Carte firewire Texas Instruments XIO2213A 1394b. Video ATI Radeon 2600 XT.
- MacPro6,1 (2013,6-12 coeurs E5-2697 v2 2.7 GHz). carte radio (Wifi/bluetooth) Broadcom Corporation BCM4360 802.11ac Wireless Network Adapter (rev 03). Deux cartes graphiques AMD FirePro D300 Curacao XT [Radeon R7 370 / R9 270X/370 OEM] Tahiti LE. Ethernet Broadcom Corporation NetXtreme BCM57762 Gigabit.
Le tableau suivant récapitule la prise en charge du matériel par les différentes versions d'Ubuntu. Il utilise les notations suivantes :
Version | Installation | Carte graphique | Son | Wifi | Bluetooth | Raccourcis multimédia | Autres |
---|---|---|---|---|---|---|---|
Ubuntu 14.04 | USB OK | ||||||
Ubuntu 16.04 | USB OK |
Installation
MacPro3,1 (2008) "alu"
La procédure suivante part du principe que vous avez un MacPro avec seulement Mac OS X installé. Dans le cas ou un autre système cohabite déjà, ce n'est pas trop différent, et vous trouverez des pages d'aide spécifiques sur le Net.
- On suppose que vous êtes sous MacOSX
- Sauvegardez vos données (sur une disque amovible USB par exemple): comptes, fichiers de configuration de la machine, préférences, …
- Lancez
Go/Applications/Utilities/DiskUtility
et réduisez votre partition MacOSX (e.g. sur/dev/sda2
). La partition "/dev/sda1" est celle pour EFI. Ajoutez une partition pour le système "/dev/sda3" et une pour le swap ("/dev/sda4", d'au moins la mémoire installée). Laissez-les en format HFS ou autre. Elles seront reformatées lors de l'installation. - Mettez le Live CD/DVD Ubuntu dans le lecteur, redémarrez et maintenez la touche "Alt" ou la touche 'C'.
- Démarrez l'installation depuis l'icône sur le bureau ou le Dash à gauche.
- Pensez à sélectionner un agencement de clavier Macintosh.
- Lorsque l'on arrive à la sélection de la destination d'installation, choisissez Autre chose (dernier choix en bas de la liste).
- Indiquez la partition pour le système (e.g. "/dev/sda3") formatée en "ext4" et utilisée comme "/". Indiquez la partition swap (e.g. "/dev/sda4") et formatez la aussi.
- Le secteur de boot "grub" doit etre installé sur la partition du système, donc ici "/dev/sda3".
- Un avertissement apparait comme quoi il n'y a pas de partition "BIOS". Ignorez tranquillement.
- Allez prendre un café. Ca prend un quart-d'heure…
- Redémarrez sous MacOSX. Votre Ubuntu n'est pas encore visible, mais il est bien là.
- Récupérez rEFInd (prenez la version "refind-bin"). Ouvrez un Terminal, puis depuis l'archive d'installation "refind", lancez e.g. "cd Downloads/refind-bin-0.7.7" puis "./install.sh". Le mot de passe set demandé.
- copiez le dossier "drivers_x64" depuis le dossier d'installation de rEFInd vers /EFI/refind avec "sudo cp -r refind/drivers_x64 /EFI/refind"
- Redémarrez. Le système Ubuntu doit maintenant être listé dans le menu rEFInd.
Lorsque l'installation est terminée, l'ordinateur re-démarre (assez rapidement en 20-30 s). La machine que j'utilise est configurée pour le developpement de code scientifique. J'utilise les paquets suivants pour Ubuntu Saucy 13.10:
# basic tools sudo apt-get install hfsplus hfsprogs hfsutils libgnomevfs2-0 libgnomevfs2-common libgnomevfs2-extra libhfsp0 partimage gconf-defaults-service gconf-editor gir1.2-gdesktopenums-3.0 gir1.2-gnomedesktop-3.0 gnome-colors-common gnome-human-icon-theme gnome-icon-theme-full gnome-illustrious-icon-theme gnome-noble-icon-theme gnome-shell-common gnome-theme-gilouche gnome-themes-extras gnome-themes-standard gnome-themes-standard-data gnome-themes-ubuntu gnome-tweak-tool gnome-wine-icon-theme gnome-wise-icon-theme gtk2-engines gtk2-engines-pixbuf tango-icon-theme dconf-editor gnome-dust-icon-theme alacarte gir1.2-gconf-2.0 gir1.2-panelapplet-4.0 gnome-applets gnome-applets-data gnome-media gnome-panel gnome-panel-data gnome-session-fallback gnome-session-flashback gstreamer0.10-gconf indicator-applet-complete libgnome-media-profiles-3.0-0 libpanel-applet-4-0 metacity notification-daemon gnome-search-tool blcr-util libcr0 libibverbs-dev libibverbs1 libopenmpi-dev libopenmpi1.3 libtorque2 openmpi-bin openmpi-checkpoint openmpi-common partclone ifrench-gut ispell unity-tweak-tool gnome-tweak-tool gecko-mediaplayer build-essential javascript-common cups-pdf samba tcsh cloop-utils unrar rar gcc gcc-doc gfortran gfortran-doc flex bison autoconf automake autotools-dev make manpages-dev gnuplot make manpages-dev gnuplot octave perl-tk dirdiff gnome-mplayer gnome-xcf-thumbnailer gthumb gnome-exe-thumbnailer ooo-thumbnailer octave perl-tk dirdiff gnome-mplayer gnome-xcf-thumbnailer gthumb gnome-exe-thumbnailer ooo-thumbnailer gedit-plugins ubuntu-restricted-extras gstreamer0.10-plugins-ugly gstreamer0.10-ffmpeg libxine1-ffmpeg gxine mencoder libdvdread4 totem-mozilla icedax tagtool easytag id3tool lame nautilus-script-audio-convert libmad0 mpg321 p7zip-rar p7zip-full unace unrar zip unzip sharutils rar uudeview mpack arj cabextract file-roller gdebi indicator-cpufreq indicator-multiload subversion psutils pdf2svg pdfjam pstoedit sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-java7-installer sudo update-java-alternatives -s java-7-oracle sudo apt-get install oracle-java7-set-default
ainsi que Matlab(R), xv (compilation sur Ubuntu), hdfview et freewrl.
Pour le calcul parallèle, je vous recommande OpenMPI.
sudo efibootmgr -o 0,80
MacPro6,1 (2013) "cylindre"
- On suppose que vous êtes sous MacOSX
- Sauvegardez vos données (sur une disque amovible USB par exemple): comptes, fichiers de configuration de la machine, préférences, …
- Lancez
Go/Applications/Utilities/DiskUtility
et réduisez votre partition MacOSX (e.g. sur/dev/sda2
et/dev/sda3
). La partition/dev/sda1
est celle pour EFI. Ajoutez une partition pour le système/dev/sda4
et une pour le swap (/dev/sda5
, d'au moins la mémoire installée). Laissez-les en format HFS ou autre. Elles seront reformatées lors de l'installation. - Mettez une clef Live USB Ubuntu dans le lecteur, redémarrez et maintenez la touche "Alt" ou la touche 'C'.
- Au démarrage du LiveUSB, Selectionnez "Try Ubuntu" et appuyez sue la touche "e" pour éditer les options de démarrage.
- A la ligne
linux
, inséreznomodeset radeon.audio=1
juste aprèssplash
. - Pressez la touche F10 pour démarrer.
- Faites une installation classique, mais ne touchez pas aux partitions EFI (dev/sda1, sda2, sda3)
- A la fin de l'installation, ne redémarrez pas. Editez le fichier
/media/ubuntu/[BlockID]/boot/grub/grub.cfg
. - Aux lignes "linux", insérez
nomodeset radeon.audio=1
juste aprèssplash
. - Répétez cette opération sur le fichier
/media/ubuntu/[BlockID]/etc/default/grub
. - Rebootez. Si GRUB ne s'affiche pas, ou pour sélectionner MacOSX, appuyez sur la touche "Alt" au démarrage.
- Pour configurer l'ordre d’amorçage des systèmes:
sudo apt-get install efibootmgr sudo efibootmgr sudo efibootmgr -o 0,80
- Adaptez le "0,80" selon ce qui est affiché par la commande "efibootmgr". En général, "0080" est pour Mac OS X, et "0000" est pour Ubuntu.
- Pour ajouter Mac OSX aux entrées de GRUB:
sudo nano /etc/grub.d/40_custom
- et ajoutez à la fin:
menuentry "MacOS" { exit }
- Sauvez avec "Ctrl-O" puis "Ctrl-X", puis lancez "sudo update-grub".
Configuration
Vous trouverez une page en Anglais décrivant les étapes pour configurer Ubuntu sur un MacPro sur la communauté Ubuntu (en).
clavier
Normalement, le clavier "Macintosh" est disponible comme variante d'agencement a partir du panneau de configuration (entrée texte).
Si vous n'avez pas choisi l'agencement Mac lors de l'installation, depuis le bureau Gnome, allez dans le menu Système/Préférences/Clavier. Dans l'onglet Agencement, conservez le modèle "PC générique 105 touches (intl)", mais supprimez l'agencement présent, et ajoutez un nouvel agencement (cliquez sur le bouton Ajouter). Dans la fenêtre qui s'ouvre, choisissez France comme pays, puis dans le sous-menu France-Apple-Macintosh. Cliquez sur le bouton Ajouter, puis le bouton Fermer. Vous avez maintenant un vrai clavier Mac.
Si vous avez un clavier Mac Alu, il devient parfois "fou" lorsque l'on passe en NumLock. Pressez simplement la touche F6 pendant 2 secondes et ca passe. Les touches Multimédia (F7-F12 pour arrière/avant/volume) et Eject marche normalement.
Enfin, pour éviter que soudainement, le pavé numérique ne devienne inopérant, aller dans Système/Préférences/Outils d'accessibilité. Cliquer sur accessibilité du clavier, puis dans la fenêtre qui s'ouvre, choisir l'onglet "touches de la souris". Là, simplement décocher "permettre le contrôle du pointeur en utilisant le pavé numérique". Le même choix peut être fait depuis la configuration du clavier Système/Préférences/Clavier onglet "touches de la souris". Cela s'active avec certains programmes, comme un VNC.
vidéo
Par défaut, Ubuntu installe un driver Vesafb ou nouveau, qui est déjà pas trop mal.
Avec un MacPro 3,1 (2008) "alu"
Pour améliorer sensiblement les performances, allez dans Système/Administration/gestionnaire de périphériques et choisissez le pilote de votre carte graphique ATI (ATI XT2600HD,driver RV630) ou NVIDIA (v180). Pour tester votre nouveau pilote, lancez la commande glxgears
depuis un terminal. On passe de 65 fps à 3000 fps …
Si vous changez de carte graphique, vous devrez probablement reconfigurer Xorg:
sudo apt-get remove --purge xserver-xorg nvidia-* sudo apt-get install xserver-xorg sudo dpkg-reconfigure xserver-xorg
ce qui installera le driver par défaut ('nouveau' pour les cartes NVidia, et 'ati'+'radeon' pour les cartes ATI/Radeon).
Afin d'utiliser un driver propriétaire (si vous avez besoin de meilleurs capacités graphiques), lancez le panneau de configuration et choisissez 'Logiciels et mise a jour', puis l'onglet 'Pilotes additionnels'. Une liste de 'drivers' propriétaire est alors affichée. Faites votre choix (par exemple un driver NVidia. Cette étape peux casser votre affichage graphique. Utiliser la procédure de reconfiguration ci dessus pour revenir à un système fonctionnel.
Avec un MacPro6,1 (2013) "cylindre" sous Trusty 14.04
Le driver par défaut est assez poussif (300 FPS), et ne supporte pas totalement OpenGL/OpenCL. Allez chercher la version 15.302.2301 des drivers AMD pour Linux par exemple sur:
Extraire l'archive puis allez dans le dossier fglrx-15.302.2301
. Lancez la génération des paquets et installez avec:
sudo apt-get install dh-make dh-modaliases execstack ./amd-driver-installer-15.302.2301-x86.x86_64.run --buildpkg Ubuntu/trusty sudo dpkg -i fglrx*.deb sudo amdconfig --initial
Redémarrez, et ca doit rouler.
glxgears
donne 4500 FPS. Pas mal. clinfo
indique que les deux cartes graphiques sont disponible pour OpenCL.
Avec un outil de benchmark OpenCL comme clpeak, on trouve que le MacPro a une puissance de calcul de 4 TFlops (2 TFlops sur chaque GPU, en calcul 'float'). Il faut ensuite trouver des programmes qui savent bien l'utiliser.
sudo touch /var/lib/update-notifier/disable-hwe-eol-messages
dans un terminal. Les mises à jour du noyaux et des drivers graphiques seront alors limitées, mais vous gardez la configuration graphique optimale.
Avec un MacPro6,1 (2013) "cylindre" sous Xenial 16.04
le driver nouveau permet d'afficher environ 300 FPS, mais ne supporte pas totalement l’accélération matérielle.
Pour améliorer cet aspect, le blog de Oibaf fourni des drivers video amélioré pour Ubuntu 16.04 LTS (« The Xenial Xerus »). Pour faire la migration de votre driver générique vers la version améliorée, tapez les commandes dans un terminal:
sudo add-apt-repository ppa:oibaf/graphics-drivers sudo apt-get update sudo apt-get upgrade sudo apt-get install mesa-utils glxgears -info
On passe à 600 FPS.
Malheureusement, l'usage de l'option nomodeset
dans la configuration GRUB2 (option pour le noyau linux) désactive l'accélération matérielle. Il est alors préférable de lancer directement le noyau linux depuis rEFInd, sans passer par GRUB.
Certaines applications comme Steam, Skype ou Matlab, qui ont leur propre libstdc++.so.6
doivent être lancées avec une commande du type:
env LD_PRELOAD='/usr/$LIB/libstdc++.so.6' matlab
pour installer convenablement les drivers OpenGL.
Si vous utilisez un câble VGA, et le débranchez, le CPU peut se mettre à tourner en boucle. Lancez :
sudo sh -c "echo disable > /sys/firmware/acpi/interrupts/gpe16
pour résoudre ça.
son
Le son est parfaitement supporté sur un MacPro6,1 (2013)
Sur un Macpro3,1 (2008), c'est une carte HDA Realtek ALC885/intel, et elle reste totalement muette. Pour y remédier,
sudo gedit /etc/modprobe.d/alsa-base.conf
et ajouter à la fin
options snd-hda-intel model=imac24
les autres options possibles (par exemple model=macpro) ne marchent pas. Le son ne sort que par le haut parleur intégré, mais c'est mieux que rien.
Wifi
Avec un MacPro6,1 (2013) il se peut que le Wifi ne soit pas bien reconnu. Pour résoudre ce problème, il faut passer par un cable Ethernet, et lancer:
sudo apt-get install linux-headers-generic sudo apt-get install --reinstall bcmwl-kernel-source sudo modprobe wl
Problèmes
Si vous ne pouvez plus démarrer Ubuntu ou Mac OSX, pensez à appuyer sur Alt au démarrage afin de pouvoir sélectionner le disque de démarrage. Sous MacOSX, il est assez pratique d'installer ReFind, ce qui permet au boot de choisir le disque et la partition, ainsi que le noyau linux.
Pour pouvoir restaurer la configuration fonctionnelle en cas de problème ultérieur, il peut être judicieux de faire une image disque de votre partition système lorsqu'elle "marche bien". Cela est très simple avec Disques : l'utilitaire de disques. Il vous faudra probablement booter sur une clef USB, puis sélectionner la partition Ubuntu 14.04, et choisir l'option Sauvegarder dans l’icône 'roue dentée'.
Une autre solution et simplement d'utiliser sudo dd if=/dev/<partition_ubuntu> of=sauvegarde.dd bs=1024
(ce qui peut aussi être fait depuis MacOSX). Une fois la copie faite, vous pouvez compresser l'image avec xz, gz ou autre. Pensez à faire une mise à jour de grub avec sudo update-grub
dès que possible.
Pour restaurer, utiliser encore Disques : l'utilitaire de disques, ou bien sudo dd of=/dev/<partition_ubuntu> if=sauvegarde.dd bs=1024
(ce qui peut aussi être fait depuis MacOSX). Vérifiez bien la partition cible avant de restaurer, car cela écrase tout.
Utilisation
tutto va bene
Le MacPro3,1 (2008, 8 coeurs, 2.8 GHz) fait environ 12 Gflops, mesuré avec un calcul MPI de multiplication matricielle 2048x2048. GeekBench donne un score de 1800 en single core, et 10000 avec les 8 coeurs.
Le MacPro6,1 (2013, 2x12 coeurs 2.7 GHz) fait environ 27 Gflops, mesuré avec un calcul MPI de multiplication matricielle 2048x2048. GeekBench donne un score de 22000 sous Xenial 16.04. Le meme test sous Trusty 14.04 donne 27000.
Voir aussi
- Ubuntu-EFI (en)
- communauté Ubuntu (en)
- Installation sur Apple de MacTel team (en)
Contributeurs principaux : FARHILL