在Linux系统环境下使用GFS文件系统

来源:岁月联盟 编辑:zhuzhu 时间:2007-09-08
在Linux系统环境下使用GFS文件系统内容简介:GFS文件系统其实是一个网络日志文件系统,通常被用作多台计算机共享同一存储设备。由于GFS是日志文件系统,所以,如果将其应用到单独的一台计算机上,即完全等同于本地日志文件系统,享受日志文件系统带来的好处。  GFS文件系统其实是一个网络日志文件系统,通常被用作多台计算机共享同一存储设备。由于GFS是日志文件系统,所以,如果将其应用到单独的一台计算机上,即完全等同于本地日志文件系统,享受日志文件系统带来的好处。本文便向各位简介GFS文件系统在linux环境下的使用。
  
  一、 下载与编译
  下载GFS文件系统地址:http://www.sistina.com/products_gfs.htm
  GFS文件系统以前是一个源代码完全公开的项目,直至版本为GFS-4.2.0时都可以下载到源代码。笔者在写这一篇文章时,下载到了GFS4.2.0的源代码,但是现在再也无法下载到GFS4.2.0以后的代码了,因为GFS开始收费了。不过,4.1.1及以前的版本仍然可以在这里下载到:ftp://ftp.sistina.com/pub/GFS。 试用版可以通过在http://www.sistina.com/注册后下载使用30天。
  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文件系统了。