
MacFuse
MacFuse est un moteur de systèmes de fichiers. Comprenez qu’il s’agit d’un système simple à installer et qui permet d’ajouter des fonctionnalités de lecture/écriture vers des systèmes de fichiers non reconnus nativement par votre système d’exploitation. Petit cas concret : vous avez envie d’écrire des fichiers sur une partition NTFS, mais Leopard ne vous permet qu’un accès en lecture seule. Solution? Installer MacFuse pour la gestion des systèmes de fichiers, puis installer le plugin pour l’écriture vers des partitions NTFS. Simple, non?
Si on regarde plus loin, on a la possibilité d’utiliser des systèmes de fichiers provenant d’à peu près n’importe où : disque local, disque réseau, Internet, … Tout passe par une couche d’abstraction gérée par MacFuse, et qui finalement fait « comme si » tous ces fichiers se trouvaient sur votre disque, à portée de souris.
FUSE : File-system in USEr space
L’avantage d’un système comme FUSE est de pouvoir créer des systèmes de fichiers sans avoir à toucher au noyau du système. Pour la petite histoire, tous les appels vers les fichiers ou répertoires (en fait tous les appels vers le filesystem
) passent par le noyau. Le noyau s’occupe d’initialiser tous les modules correspondant à votre matériel au démarrage de l’ordinateur, charge les modules de gestion spécifiques au processeur (pour la gestion d’énergie par exemple…), les systèmes de fichiers (HFS+, NFS, NTFS, EXT3, …). Pour un système Unix/Linux, cela implique donc que pour pouvoir gérer un nouveau système de fichiers, il faille soit attendre que ce système soit géré par le noyau, soit patcher le noyau pour que celui-ci le gère. Sur Mac, c’est un peu différent puisque les sources du noyau ne sont pas accessibles. Il n’est donc pas possible pour l’utilisateur de se dire « J’ai besoin de telle fonctionnalité, elle n’est pas disponible dans le noyau, c’est pas grave : je vais aller prendre tel patch, et refaire mon propre noyau avec les fonctionnalités dont j’ai besoin! ». Raté. C’est pas aussi facile…
C’est là qu’apparaît réellement l’intérêt de FUSE : à partir d’un module du noyau (FUSE), il permettra de gérer tout plein de nouveaux systèmes de fichiers sans toucher au noyau. Une belle couche d’abstraction
FUSE permet donc de créer un système de fichiers virtuel. Pour reprendre l’explication trouvée sur Wikipedia, un système de fichiers traditionnel doit principalement sauvegarder et retrouver des données, alors qu’un système de fichiers virtuel ne stocke pas les données lui-même. Il agit comme une vue ou une traduction d’un système de fichiers existant ou d’un périphérique de stockage. On peut donc partir d’à peu près n’importe quoi, du moment qu’on a une sorte de contrôleur permettant de transformer ce n’importe quoi en ce qu’on voudrait. Ce contrôleur est le plugin FUSE pour le système de fichiers.

Structure de FUSE (source Wikipedia)
Concrètement, on a déjà les applications suivantes :
- FTPFS : gestion des fichiers à partir d’une connexion FTP. A partir du moment où vous possédez un serveur sur lequel vous connecter, vous aurez accès au contenu de ce serveur directement depuis le Finder. Vous aurez alors la possibilité d’accéder à vos fichiers sans vous préoccuper de la couche « FTP », puisque le comportement se rapprochera d’un comportement local.
- SSHFS : idem que pour le système de fichier précédent. La connexion à un système de fichiers SSH est un peu complexe, pour peu qu’on l’utilise en console (que le puristes ne me lancent pas de cailloux ou de pavés…)
- NTFS-3G : le module principal pour cet article, puisqu’il permet l’écriture sur des volumes NTFS sans grosses pertes de performances
- GMailFS pour utiliser votre espace de stockage GMail comme un disque local
Et la liste est longue…
Installation
Rien de plus facile : le téléchargement se fait à partir du site officiel. Et pour l’installation, on suit les étapes.
Un petit redémarrage sera nécessaire à la fin de l’installation pour que FUSE soit pris en compte.

Le module NTFS-3G est téléchargeable à cette adresse. L’installation est tout aussi facile (et nécessite un petit redémarrage. Faites d’une pierre deux coups…)

Et voilà. Rien de bien compliqué pour quelque chose de finalement assez utile et efficace