GFS文件系统其实是一个网络日志文件系统,通常被用作多台计算机共享同一存储设备。由于GFS是日志文件系统,所以,如果将其应用到单独的一台计算机上,即完全等同于 本地日志文件系统,享受日志文件系统带来的好处。本文便向各位简介GFS文件系统在linux环境下的使用。
一、下载与编译
GFS文件系统以前是一个源代码完全公开的项目,直至版本为GFS-4.2.0时都可以下载到源代码。笔者在写这一篇文章时,下载到了GFS4.2.0的源代码,但是现在再也无法下载到GFS4.2.0以后的代码了,因为GFS开始收费了。
1、编译核心
  本文以GFS4.2.0为例进行说明。首先对核心打补丁,运行以下脚本,为核心打补丁: 
  # ./GFS-contribe-4.2.0/scripte/apply_patch –k /usr/src/linux –p 
回答一大串的yes,
完成打补丁工作。之后,运行以下命令:
  #make menuconfig 
  #make dep 
  #make bzImage;make modules; make modules_install 
  #cp bzImage /boot 
编辑/etc/lilo.conf,运行lilo之后,重新启动系统。
2、安装GFS文件系统的配套工具软件安装步骤如下:
#tar –zxvf GFS-4.2.0.tar.gz
编译过程如下:
  #./configure 
  #make 
  #make install 
编译安装GFS工具完成。
二、使用GFS文件系统
  在编译时,将GFS编译为可加载模块,所以在使用时,首先要加载GFS模块。加载模块命令如下: 
#modprobe nolock
在加载gfs模块之前首先要加载nolock模块,因为gfs依赖于nolock模块
#modprobe gfs
编译时,GFS文件系统是以可插入模块方式编译的,所以用此命令加载gfs模块。
内核加载了对GFS文件系统的支持模块后,接下来是创建一个GFS文件系统,使用GFS工具创建GFS文件系统,创建过程如下:
  [root@test /sbin]# ./mkfs_gfs -j 5 /dev/sda8 –p nolock 
  Device: /dev/sda8 
  Blocksize: 4096 
  Filesystem Size: 177484 
  Journals: 5 
  Resource Groups: 10 
  Locking Protocol: 
  Lock Table: 
  Syncing... 
  All Done 
  [root@test /sbin]# 
说明:将分区/dev/sda8格式化为gfs文件系统,在本分区内保存日志记录。
格式化完成后,下来是加载GFS文件系统
# mount –t gfs /dev/hda8 /gfs ##说明:将GFS分区加载到/gfs目录下
  GFS: Trying to acquire journal lock 0… 
  GFS: Trying at journal 0… 
  GFS: Done 
以上表示成功mount,接下来就可以使用了。
为了让以后机器启动以后自动加载GFS文件系统,需要改写/etc/fstab文件,加以下内容:
/dev/hda8 /gfs default 0 0
以后系统启动时就会自动加载GFS文件系统了。