Premiers pas timides pour la virtualisation de Linux sur Apple Silicon

Nicolas Furno |

La virtualisation est peut-être le domaine qui pose le plus de problème aux Mac Apple Silicon. Grâce à Rosetta, la plupart des apps macOS peuvent fonctionner sans encombre même si elles n’ont pas été mises à jour, mais les apps qui permettent de faire tourner un système d’exploitation complet virtualisé ne fonctionnent pas du tout à ce jour sur les nouveaux Mac :

On sait que Parallels Desktop, cité par Apple pendant la WWDC, travaille avec Apple pour adapter son app aux Mac Apple Silicon. En attendant son arrivée, d’autres solutions existent déjà pour virtualiser des distributions Linux sur les nouveaux Mac. Elles fonctionnent, mais nécessitent encore de mettre les mains dans le cambouis et elles sont encore très limitées.

Ubuntu 20.04 virtualisé sur un Mac mini M1 grâce à Simple VM.

Simple VM est une app taillée pour la virtualisation sur Apple Silicon. Elle dispose bien d’une interface (à gauche sur la capture ci-dessus), mais elle est minimale et implique des manipulations dans le terminal. Vous trouverez des explications dans ce sujet publié sur les forums de MacRumors, mais vous verrez vite qu’il faut bricoler pour obtenir un système virtuel en ligne de commandes, et encore avec des performances souvent moyennes.

Comme Simple VM est un projet open-source, des forks existent pour améliorer les performances ou simplifier la procédure d’installation. Si vous ne voulez pas vous embêter, vous pouvez tester un paquet clé en mains proposé à cette adresse. Vous aurez une distribution Ubuntu 20.04.1 et l’app Simple VM déjà compilée, ce qui vous permettra de démarrer en quelques minutes (identifiant et mot de passe à utiliser dans le fichier README). J’ai pu tester, cela fonctionne, mais on est vite limité par les performances, et puis il n’est pas question d’utiliser une distribution graphique.

Sur ces mêmes forums toutefois, quelqu’un a réussi à bénéficier d’une interface graphique en combinant XQuartz et le SSH en mode X forwarding. Cela fonctionne, mais ce n’est pas encore une solution accessible au grand public. On imagine que Parallels Desktop a une meilleure réponse, Apple l’avait utilisée pour évoquer Linux sur les Mac Apple Silicon, mais les plus pressés et bricoleurs peuvent tester dès maintenant.

La version Linux de Firefox, gérée par une distribution virtualisée sur un Mac Apple Silicon (image forums MacRumors).

Ces avancées ne devraient pas suffire à Linus Torvald, le créateur du noyau Linux. Lui qui se disait fan du MacBook Air en 2012 et réclamait un ordinateur portable ARM pour 2016 a obtenu gain de cause avec quelques années de retard. Sans surprise, il adorerait utiliser un nouveau MacBook Air, comme il l’explique sur cette liste de diffusion. Ce serait l’ordinateur parfait pour ses besoins… s’il pouvait installer Linux dessus.

Pour le moment, c’est ce point qui pose problème. Certes, les distributions GNU/Linux tournent sur l’architecture ARM depuis des années maintenant, donc ce n’est pas cela qui gêne contrairement à Windows. Il faudrait sans doute quelques adaptations pour gérer correctement le matériel, mais rien de rédhibitoire a priori. En revanche, les nouvelles sécurités mises en place par Apple depuis quelques années empêchent par défaut d’installer autre chose que macOS, même si c’est toujours possible.

Installer Linux sur un Mac Apple Silicon à la place de macOS devrait être possible. Mais Linus Torvald ne veut pas bricoler une solution qu’Apple ne propose pas officiellement et il préfère passer son tour. Qui sait, maintenant que la firme de Cupertino a montré l’exemple, peut-être que les ordinateurs portables ARM vont se généraliser. Contrairement aux Mac, ceux-là permettront sans aucun doute d’installer facilement Linux, mais reste à savoir si les performances seront au rendez-vous…


avatar reborn | 

@lmouillart

C’est pareil pour la T2, ce qui manque ce sont les pilotes.

avatar lmouillart | 

La puce T2 est un ordinateur dans l'ordinateur, avec un OS spécifique : sepOS.
Il est donc nécessaire de pouvoir déplomber cette puce et mettre un système L4 propre.
Sinon : pas de sécurité renforcée, pas d'accélérateur de crypto, pas d'accélération d'encodage ...

C'est la différence avec les CPU généralistes comme Intel. Là comme il y a tout un ensemble de chips si on veut que ça fonctionne de manière "correcte", il faut des solutions fonctionnelles pour à peu près tout.

Effectivement en bricolant, sans utiliser la puce T2, sans utiliser le GPU (donc en framebuffer tout bête ça fonctionnera), mais on sera dans une solution plus proche d'un raspberry pi un peu boosté qu'une machine à 1K€.

avatar oomu | 

@reborn

il faut aussi que soit documenté le gpu, etc.

avatar maxou56 | 

@imouillart
La puce T2 n’est présente que pour les Mac Intel.
Et elle permet déjà l’installation de Linux/windows sans « jailbreak » ou autre.

Après effectivement si on souhaite par exemple utiliser le transcodage H265 de celle-ci.

avatar lmouillart | 

L'équivalent alors : Secure Enclave de la puce M1.

avatar Gwynpl@ine | 

Démarrer directement sur GNU/Linux sur un Mac M1 sera impossible. Il n'y a aucune documentation suffisamment poussée pour le permettre. Apple a créé l'environnement le plus verrouillé et le plus opaque au monde, et tout le monde applaudit ! Certes, les machines semblent bien, mais le prix à payer est lourd.

Je suis utilisateur depuis mon Apple IIc, et je suis un peu inquiet avec les M1. Le passage à OSX, c'était le pied, puis le passage à Intel, encore mieux. C'était vraiment l'âge d'or, on pouvait tout faire. Mais aujourd'hui, on s'embrase pour avoir moins bien, et une machine que l'on ne contrôle plus, tel un iPhone. Personnellement Apple n'a plus rien de cool, et cette création du M1 n'est qu'un outil pour enfermer le client dans un écosystème, qui s'est refermé aussi vite qu'il s'est ouvert.

L'Apple Neural Engine, c'est une puce au service du marketing. Dans Photoshop, qui a réellement besoin de ça pour créer, la réponse est très simple : "personne". En revanche, il aura bien écouté nos conversations, et Apple pourra t'afficher sur ton smartphone le trajet pour faire tes courses avant même que tu lui aies demandé, car non loin il aura entendu : "faut que j'achète du beurre".

Le M1 est peut être très bien, mais pour quel usage, le notre ? Non, surtout pour Apple.

avatar marc_os | 

@ Gwynpl@ine
Apple a créé l'environnement le plus verrouillé et le plus opaque au monde, et tout le monde applaudit !

C'est le prix de la sécurité et Apple se devait de le faire, sinon « tout le monde » aurait hurlé au scandale, genre « Les Macs ne sont pas sûrs ».
"Avant", on pouvait tout faire.
Mais voilà, avec le retour en grâce des Mac grâce au succès des iPhones, les développeurs de malware on commencé à s'intéresser encore plus aux Mac.
Et Apple se devait de faire quelque chose contre.
Ils ont choisi d'une certaine manière d'appliquer la sécurité by desing des nouveaux appareils tournant sous iOS aux Macs, et c'est leur droit, et c'est compréhensible techniquement : C'était la manière la plus efficace, plutôt que de réinventer la roue sécuritaire de iOS pour macOS. (Toutes mes excuses par avance aux pinailleurs si j'ai trop résumé la situation.)

avatar Gwynpl@ine | 

@marc_os

"C'est le prix de la sécurité." C'est un argument savamment utilisé par Apple, la peur est toujours une bonne motivation pour faire passer la pilule. D'ailleurs, leur technologie n'est déjà pas infaillible.

Je suis d'accord avec toi, mais ce n'est pas le véritable but la sécurité, ils en ont juste besoin pour avoir un meilleur contrôle sur nos machines. La sécurité est un des paramètres nécessaires, surtout si l'objectif est engranger un max de données sur nos usages. Ils ont pas intérêt à mettre leurs clients à poil !

Plus de sécurité, moins de possibilité, ou de liberté, je vote oui ^_^

avatar youbzh | 

@marc_os
Empêcher l'utilisateur d'installer le système d'exploitation de son choix n'a dans la majorité des cas rien à voir avec la sécurité.
Sauf erreur de ma part, le seul cas où ce genre de "sécurité" en est une, c'est si on veut se prémunir du fait qu'une tierce personne ayant un accès physique à la machine y installe un autre OS ou démarre un support bootable. Je ne suis pas certain que ça concerne la majorité des utilisateurs.

avatar reborn | 

@Gwynpl@ine

Démarrer directement sur GNU/Linux sur un Mac M1 sera impossible

C’est possible, mais ça va prendre du temps.

Linux will be possible, but drivers might take quite some years to be complete.See https://t.co/yxrqKOuyc6 for how to disable Secure Boot.— Longhorn (@never_released) November 19, 2020

À moins qu’Apple aide et fournisse directement les pilotes.

avatar Gwynpl@ine | 

@reborn

Oui, tu pourras démarrer, mais jamais optimiser l'OS, quel intérêt ? Aucun, le but c'est d'avoir une machine exploitable, et pas un mouton à trois pattes.

avatar Chopper77 | 

Sur un MacBook Retina 12-inch 9,1 early 2016, je bloque pour faire démarrer Linux.

Sur quelques forums, il semble qu'il existe un driver propriétaire sur le nvme qui bloque le boot.

Si quelqu'un qui a une solution, je suis preneur.

avatar reborn | 

tu as essayé d’autres distrib ? Tu en as qui ont réussi à booter avec des mac T2 malgré le soucis du ssd donc bon, un mac d’avant les puces T1 et T2 ça devrait le faire

avatar morpheusz63 | 

@Chopper77

Debian ou ubunti?

avatar armandgz123 | 

J’espère surtout qu’il y aura dans 8/9/10 ans, un OS qui tournera correctement sur les mac M1 pour pouvoir les recycler !
C’est ce je je fais actuellement avec mon MacBook Pro de 2009 sous Windows 10 et mon Mac mini de 2008 sous Linux.
Alors que mon iPad 3 et iPad Air sont inutile au fond d’un placard

avatar CostaDelSol | 

Quand ce sera possible de virtualiser macOS, on pourra s’en acheter pour le boulot ^^

avatar Nicolas Furno | 

@CostaDelSol

Ben… c'est déjà possible ! Depuis longtemps, même : https://www.macg.co/2011/07/os-x-lion-la-virtualisation-enfin-autorisée-8796

avatar Mdtdamien | 

Pour Windows, peut ton encore parlé de virtualisation ou alors il s’agit d’émulation, vue qu’il ne s’agit pas de la même architecture de processeurs ?

avatar olaola | 

Quand on émule ça n'est effectivement pas de la virtualisation, mais Windows existe pour ARM, la license n'est par contre pas disponible au grand public et uniquement à quelques constructeurs.

avatar valcapri | 

@Mdtdamien

Il faut voir exactement comment tourne hypervisor framework et les différents pilotes requis.

avatar ech1965 | 

AMHA, rosetta ce n'est pas de l'émulation ( emulation: code machine x interprété par cpu y).
Rosetta c'est "transpilation" (conversion en une fois et avant la première execution) du code machine x en instructions Y). emulation~=interpréteur, transpilation~= compliation.
Virtualisation: execution d'un OS invité comme une application d'un OS "hôte" avec virtualisation des périphériques. Dans une machine virtuelle (et pas un cpu virtuel) le code s'exécute "en VRAI" et les périphériques sont "virtualisés" pour que les pilotes de périphériques de l'invité pensent qu'il interagissent avec le vrai chip alors que c'est la couche virtu qui "simule" le chip

avatar hirtrey | 

@ech1965

Du grand n’importe quoi 😂

avatar Marcos Ickx | 

« les nouvelles sécurités mises en place par Apple depuis quelques années empêchent par défaut d’installer autre chose que macOS, même si c’est toujours possible. »

Un des avantages est qu’on est plus obligé de diminuer la sécurité, comme on l’était jusqu’à présent, pour l’ensemble des OS.

avatar olaola | 

On peut virtualiser macOS, la contrainte c'est qu'il faut que ça tourne sur un Mac

avatar Rogntudju | 

« Alors que mon iPad 3 et iPad Air sont inutile au fond d’un placard »

Pour l’ipad 3 je sais pas, mais mon ipad air gen 1 fonctionne parfaitement encore. Tu lui demandes quoi pour le trouver inutile ?

Pages

CONNEXION UTILISATEUR