Flasher un Mac Pro 2009 en 2026 via SSH

Flasher un Mac Pro 2009 en 2026 via SSH

J'ai un Mac Pro Early 2009 qui traîne dans un coin du bureau. Vieux et fidèle destrier de mes années studio. Deux Xeon, 16 Go de RAM ECC, une tour de 18 kilos que plus personne ne veut. L'idée : le transformer en serveur de stockage pour remplacer un QNAP dont le processeur ARM plafonne à 1.8 MB/s en transfert 😰. Sur le papier 30 minutes, la réalité 2 jours... Problème : le firmware 4,1 de cette machine la bride artificiellement. Il faut le passer en 5,1 (Mac Pro Mid 2010) pour débloquer le support CPU, la RAM rapide, et surtout pouvoir installer TrueNAS SCALE, quelques étapes donc.

Les liens Apple sont morts

Apple proposait un outil de mise à jour officiel. Les liens de téléchargement sont hors service depuis environ 2020. La communauté Mac Pro a développé une méthode alternative basée sur le cross-patching des fichiers EFI : si j'ai bien compris, on croise les fichiers des deux firmwares pour tromper les vérifications internes, puis on programme le flash via la commande bless. Le guide de référence est celui de The House of Moth (2021), qui a documenté la procédure quand les liens ont cassé, j'ai trouvé un maximum d'informations là et je me suis lancé, dans script.

13 ans de SSH

Premier obstacle : la machine tourne sous macOS Lion 10.7.5 avec OpenSSH 5.6. Mon MacBook est en OpenSSH 9.x. 13 ans d'évolution cryptographique séparent les deux. Connexion refusée immédiatement – aucun algorithme en commun.

Il faut réactiver manuellement les vieux algorithmes dépréciés (diffie-hellman-group1-sha1, ssh-rsa, aes128-cbc...) et générer une clé RSA parce que ed25519 n'existait pas en 2011. Ça fonctionne je me suis fait aider, Claude si tu passes par là... merci ! mais ça rappelle à quel point les choses ont changé.

Flash à distance

Deuxième obstacle : le Mac Pro est sur un VLAN différent de mon poste. Une route statique plus tard, j'ai la main en SSH. Après avoir analysé les choses, j'ai utilisé Claude pour adapter les scripts de la communauté en un seul processus automatisé : vérification du modèle, création d'un RamDisk, extraction des firmwares, cross-patching, et programmation du flash via bless. Tout se passe dans un terminal distant... pratique, j'ai pu faire des tests assisté par Claude analyser les outputs pour comprendre ce qui bloquait à chaque étape.

Le script terminé, il reste l'étape physique : éteindre la machine, maintenir le bouton power jusqu'au clignotement de la LED et au tone, puis attendre 2-3 minutes que la barre de progression se termine. Pas le genre de chose qu'on fait à distance avec sérénité, mais ça a marché du premier coup.

sysctl hw.model
hw.model: MacPro5,1

Ce que ça débloque

Le Mac Pro est maintenant un 5,1 aux yeux du système. Prochaine étape : installer TrueNAS SCALE et le brancher sur le réseau du bureau comme serveur de stockage offsite. Avec deux vrais Xeon au lieu d'un ARM Marvell, le débit en transfert chiffré devrait être sensiblement meilleur. Mais un peu plus loin, upgrade de processeur/ram etc...

Le script

J'ai mis le script et la documentation à disposition sur GitHub pour ceux qui auraient la même machine dans un placard :

github.com/bathtubsailor82/macpro-firmware-flash

Les firmwares Apple (les DMGs originaux dont les liens sont morts) sont hébergés séparément sur un mirror ou sur le site de House of Moth.

The actual Machine