Linux 支持几个不同的文件系统。这些文件系统中,一些是专用的网络文件系统或为其他操作系统开发的文件系统,但绝大部分还是用作 Linux 本地文件系统 — 您可以将 Linux 根(/)和系统目录放在这种文件系统里。目前,这一类文件系统包括 ext2、ext3、ReiserFS、XFS 和 Journaled File System (JFS)。但是文件系统一直在不断设计和开发中,新的文件系统也将陆续问世。
目前正在开发的最重要的 Linux 文件系统是 ext4 — 它是专门为 Linux 开发的原始的扩展文件系统(ext 或 extfs)的第四版。由于继承了以前版本,ext4 在不久的将来很可能会成为一个重要的 Linux 标准文件系统(可能是 标准文件系统)。
了解了这些内容,您大概想体验一下 ext4。但在体验之前您必须重新编译内核并添加必要的支持。我推荐使用最新的内核(撰写本文时的最新版本为 2.6.24.4)。先解压缩内核源代码并手动设置所有选项或复制旧版本内核的 .config 文件,接着输入 make oldconfig 复制以前的设置,最后输入首选配置命令(如 make xconfig)查看内核选项。您将在主 File Systems 区域看到 ext4 选项,Ext4dev/ext4 extended
fs support development (EXPERIMENTAL)(该名称将来很可能会改变,尤其是宣布 ext4 稳定以后)。注意,必须查看 General 区域的 Prompt for development and/or incomplete code/drivers 选项,在这里也能够看到 ext4 选项。
选择 ext4 支持之后,保存对内核的修改,通过输入 make 编译内核,并通过输入 make modules_install 把模块安装为 root。然后将已编译的内核(在
arch/i386/boot 或其他目录下)复制到适当的位置(如 /boot),编辑 GRand
Unified Bootloader(GRUB)或 Linux Loader(LILO)配置并重启计算机。如果使用的是启动 RAM 磁盘,在准备过程中还需用到实用程序 mkinitrd。
$ git clone git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git
$ cd e2fsprogs
$ git checkout -b pu
Switched to a new branch "pu"
$ git branch
master
* pu
$ git pull git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git pu