HACK#21 FUSE

本节将介绍使用用户进程的文件系统框架—FUSE。

FUSE概要

FUSE(Filesystem in Userspace,用户空间文件系统),是用来生成用户空间的一般进程的框架。使用FUSE,就可以以一般应用程序进程的形式生成独特的文件系统,与已有的文件系统同样进行挂载。从Linux 2.6.14开始实际安装FUSE。

例如,在最近的Linux发布版中,有一些标准配置用于挂载Windows的文件系统NTFS的ntfs-3g(Ubuntu等)。当连接到存在NTFS格式文件系统的分区表所在的磁盘时,经由gvfs挂载。此时,使用FUSE安装到用户空间的ntfs-3g开始将NTFS文件系统挂载到用户的目录树。

此外还有ZFS on FUSE。ZFS适用的是CDDL这个与GPL没有互换性的许可证。因此它不能整合到拥有GPL许可证的Linux内核中。在这种情况下,使用FUSE安装ZFS,从而能够使用ZFS文件系统,就是ZFS on FUSE。一旦启动zfs-fuse守护进程(demon),就可以使用zfs或zpool命令进行ZFS的操作。