Monter une partition Linux ext2 / ext3 / ext4 sur Mac Os X
Mac Os X est un puissant système d'exploitation, malheuresement, ce système souffre de grosses lacunes pour un linuxien et notamment concernant le support des systèmes de fichiers, en effet, cet OS ne reconnait que ses propres formats HFS, HFS+, HFSX, les formats de Microsoft FAT32 et NTFS ainsi que UFS (source Wikipédia), oubliez donc l'ext3 d'origine sous Mac Os...sauf...
2 projets m'ont sauvés la vie (oui, rien que ça) en rendant mes disques extX visibles et lisibles sous MacOs :
- MacFuse, les linuxiens auront reconnus à son nom son utilité, pour les autres, c'est un outils qui vous permet de monter un système de fichiers en espace utilisateur
- Et fuse-ext2 qui est un « pilote » extX générique fonctionnant entre autres sur MacOs
Rien à dire concernant l'installation de ces 2 programmes, des images disques au format dmg sont disponibles.
Une fois ces 2 programmes installés, c'est magique, vos disques extX seront montés automatiquement sans le moindre effort de votre part comme vous pouvez le voir sur la capture d'écran ci-dessous :
Concernant le montage des disques externes, le montage n'est pas automatisé et requiert donc quelques actions de votre part.
Pour commencer, il faut d'abord connaitre le nom du device externe (/dev/diskXsX), s'il n'apparait pas dans le finder (entouré de rouge dans la capture ci-dessus), branchez votre disque externe formaté en extX puis ouvrez l'utilitaire de disques, vous devriez voir votre disque apparaitre sous cette forme :
Sur l'exemple ci-dessus, le nom du device est « disk2s1 », maintenant que nous savons oû se trouve le device, nous pouvons le monter tranquillement de la manière suivante, ouvrez un terminal (j'ai coloré les informations renvoyées par fuse-ext2 en jaune) :
mac:~ hugo$ cd /tmp
mac:tmp hugo$ mkdir DD
mac:tmp hugo$ fuse-ext2 /dev/disk2s1 DD
fuse-ext2: enter [do_probe (../../fuse-ext2/do_probe.c:30)]
fuse-ext2: leave [do_probe (../../fuse-ext2/do_probe.c:53)]
Mounting /dev/disk2s1 Read-Only.
Use 'force' or 'rw+' options to enable Read-Write mode
fuse-ext2: opts.device: /dev/disk2s1 [main (../../fuse-ext2/fuse-ext2.c:348)]
fuse-ext2: opts.mnt_point: DD [main (../../fuse-ext2/fuse-ext2.c:349)]
fuse-ext2: opts.volname: [main (../../fuse-ext2/fuse-ext2.c:350)]
fuse-ext2: opts.options: (null) [main (../../fuse-ext2/fuse-ext2.c:351)]
fuse-ext2: parsed_options: allow_other,local,ro,fsname=/dev/disk2s1,[...]
fuse-ext2: mounting read-only [main (../../fuse-ext2/fuse-ext2.c:368)]
mac:tmp hugo$
Inutile d'être en root pour lancer cette commande, c'est justement l'intérêt de fuse...
Et voilà le travail, un disque usb externe ext4 :
J'ai écrit un petit script qui automatise un tout petit peu plus le processus de montage du périphérique, pour le montage :
mac:~ hugo$ ./mountext -d disk2s1
Mounting « /dev/disk2s1 » device in « /tmp/disk2s1 »
Device « /dev/disk2s1 » mounted in « /tmp/disk2s1 »
mac:~ hugo$
Pour le démontage :
mac:~ hugo$ ./mountext -u disk2s1
Umounting « /tmp/disk2s1 »
Ok
mac:~ hugo$
Voilà, le script se trouve en annexe de ce billet.






Commentaires
Fonctionne parfaitement !
Je suis en triple boot sur mac (OSX XP & Ubuntu) et je n'arrivais pas à accéder à la partition linux en ext4, j'ai suivi ton mode d'emploi et après un redémarrage, j'y ai maintenant accès !
Merci !
Ps : par contre j'ai pas eu besoin de monter le volume à la main via le terminal, tout s'est fait automatiquement après l'installation de MacFUSE & fuse-ext2
Thib: tu n'as pas eu à exécuter le script car ce n'est pas un volume externe...
Bonjour.
Effectivement, ces deux programmes me permettent à moi aussi de voir mes partitions et leur contenu ext4 internes (je suis en dual boot Snow Leopard + Ubuntu 10.04), mais seulement de les voir : je ne peux absolument rien faire d'autre que regarder ce qu'il y a dessus, impossible ne serait-ce que de lire un fichier, et encore moins de le copier sur ma partition HFS+. Aurais-je raté une manip à faire ?...
Merci beaucoup pour cette astuce, tout fonctionne parfaitement !
J'ai juste un petit problème : lorsque je souhaite accéder à mon disque externe en lecture/écriture, j'obtient le message : "failed to mount /private/tmp/DD@/dev/fuse0: Socket is not connected"
Sais-tu comment éviter ça ?
Merci beaucoup !
Un grand merci en tout cas, moi par contre je dois juste monter un DD externe et je n'y arrive pas le terminal me donne une erreur!
fuse-ext2: version:'0.0.7', fuse_version:'27' [main (../../fuse-ext2/fuse-ext2.c:324)]
fuse-ext2: enter [do_probe (../../fuse-ext2/do_probe.c:30)]
fuse-ext2: Error while trying to open /dev/disk1s2 (rc=2133571347) [do_probe (../../fuse-ext2/do_probe.c:34)]
fuse-ext2: Probe failed [main (../../fuse-ext2/fuse-ext2.c:340)]
merci quand meme
Un grand merci en tout cas, moi par contre je dois juste monter un DD externe et je n'y arrive pas le terminal me donne une erreur!
fuse-ext2: version:'0.0.7', fuse_version:'27' [main (../../fuse-ext2/fuse-ext2.c:324)]
fuse-ext2: enter [do_probe (../../fuse-ext2/do_probe.c:30)]
fuse-ext2: Error while trying to open /dev/disk1s2 (rc=2133571347) [do_probe (../../fuse-ext2/do_probe.c:34)]
fuse-ext2: Probe failed [main (../../fuse-ext2/fuse-ext2.c:340)]
merci quand meme
fuse-ext2 only for 32bit
Paragon ExtFS for Mac 8.0 support 64bit
I use Paragon ExtFS. I didnt keygen, but I crack it himself.
Big brother final tonight!
Lorsque je tape
"fuse-ext2 /dev/disk1s5 DD
Le terminal m'affiche
"-bash: fuse-ext2: command not found