Linux环境下使用GFS文件系统
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文件系统了。