Linux环境下使用XFS文件系统

2016-01-29 19:07 14 1 收藏

Linux环境下使用XFS文件系统,Linux环境下使用XFS文件系统

【 tulaoshi.com - Linux 】

 

    XfS文件系统是SGI开发的高级日志文件系统,XFS极具伸缩性,非常健壮。所幸的是SGI将其移植到了Lin ux系统中。在linux环境下。目前版本可用的最新XFS文件系统的为1.2版本,可以很好地工作在2.4核心下。
 
  一、XFS文件系统简介
  主要特性包括以下几点:

  数据完全性

  采用XFS文件系统,当意想不到的宕机发生后,首先,由于文件系统开启了日志功能,所以你磁盘上的文件不再会意外宕机而遭到破坏了。不论目前文件系统上存储的文件与数据有多少,文件系统都可以根据所记录的日志在很短的时间内迅速恢复磁盘文件内容。

  传输特性

  XFS文件系统采用优化算法,日志记录对整体文件操作影响非常小。XFS查询与分配存储空间非常快。xfs文件系统能连续提供快速的反应时间。笔者曾经对XFS、JFS、Ext3、ReiserFS文件系统进行过测试,XFS文件文件系统的性能表现相当出众。

  可扩展性

  XFS 是一个全64-bit的文件系统,它可以支持上百万T字节的存储空间。对特大文件及小尺寸文件的支持都表现出众,支持特大数量的目录。最大可支持的文件大小为263 = 9 x 1018 = 9 exabytes,最大文件系统尺寸为18 exabytes。

  XFS使用高的表结构(B+树),保证了文件系统可以快速搜索与快速空间分配。XFS能够持续提供高速操作,文件系统的性能不受目录中目录及文件数量的限制。

  传输带宽

  XFS 能以接近裸设备I/O的性能存储数据。在单个文件系统的测试中,其吞吐量最高可达7GB每秒,对单个文件的读写操作,其吞吐量可达4GB每秒。

    二、XFS文件系统的使用


  1.下载与编译内核

  下载相应版本的内核补丁,解压补丁软件包,对系统核心打补丁

  下载地址:

  对核心打补丁,下载解压后,得到一个文件:xfs-1.1-2.4.18-all.patch文件。
对核心进行修补如下:

  # cd /usr/src/linux
  # patch -p1 < /path/to/xfs-1.1-2.4.18-all.patch

  修补工作完成后,下一步要进行的工作是编译核心,将XFS编译进Linux核心可中。
首先运行以下命令,选择核心支持XFS文件系统:

  #make menuconfig

  在“文件系统“菜单中选择:

  <* SGI XFS filesystem support ##说明:将XFS文件系统的支持编译进核心
  或
  <M SGI XFS filesystem support ##说明:以动态加载模块的方式支持XFS文件系统

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/linux/)

  另外还有两个选择:

  Enable XFS DMAPI ##说明:对磁盘管理的API,存储管理应用程序使用
  Enable XFS Quota ##说明:支持配合Quota对用户使用磁盘空间大小管理

  完成以上工作后,退出并保存核心选择配置.

  之后,然后编译内核,安装核心:

  #make bzImage
  #make module
  #make module_install
  #make install

  如果你对以上复杂繁琐的工作没有耐心或没有把握,那么可以直接从SGI的站点上下载已经打好补丁的核心,其版本为2.4.18。它是一个rpm软件包,你只要简单地安装即可。SGI提交的核心有两种,分别供smp及单处理器的机器使用。

  2.创建XFS文件系统

  完成对核心的编译后,还应下载与之配套的XFSprogs工具软件包,也即mkfs.xfs工具。不然我们无法完成对分区的格式化:即无法将一个分区格式化成XFS文件系统的格式。要下载的软件包名称:xfsprogs-2.0.3。

将所下载的XFSProgs工具解压,安装,mkfs.xfs自动安装在/sbin目录下。


  #tar –xvf xfsprogs-2.0.3.src.tar.gz
  #cd xfsprogs-2.0.3src
  #./configure
  #make
  #make install

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/linux/)

  使用mkfs.xfs格式化磁盘为xfs文件系统,方法如下:

  # /sbin/mkfs.xfs /dev/sda6 #说明:将分区格式化为xfs文件系统,以下为显示内容:

  meta-data=/dev/sda6 isize=256 agcount=8, agsize=128017 blks
  data = bsize=4096 blocks=1024135, imaxpct=25
  = sunit=0 swidth=0 blks, unwritten=0
  naming =version 2 bsize=4096
  log =internal log bsize=4096 blocks=1200
  realtime =none extsz=65536 blocks=0, rtextents=0

  格式化磁盘时,如果mkfs.xfs提示你分区原本已被格式化为其它文件系统,可以使用参数 –f 强行格式化:

  #/sbin/mkfs.xfs –f /dev/sda6

  3.加载XFS文件系统

  #mount –t xfs /dev/sda6 /xfs ##其中/xfs是主分区/下的一个目录。
 
  最后,为了让系统启动后就自动加载,应该更改/etc/fstab,这样系统启动后就会自动加载xfs分区而不必每次都手工加载。

  要说明的一点是目前的xfs由于受linux内存页限制,在x86版本中,只能实现文件系统的块尺寸为4K。另外,XFS文件系统可以不同的方式mount,即

来源:https://www.tulaoshi.com/n/20160129/1508509.html

延伸阅读
标签: 电脑入门
计算机系统中的文件千千万万,如果没有进行分类的话就会变得杂乱无章,使用起来也十分不方便,而文件系统就能很好的分类存放各类文件,下面图老师小编就给大家详细介绍下Linux文件系统,一起来学习下吧。 对于计算机来说,所谓的数据就是0和1的序列。这样的一个序列可以存储在内存中,但内存中的数据会随着关机而消失。为了将数据长久保存,我...
标签: 服务器
Linux文件系统基本结构   Linux的文件系统结构 Linux文件系统为一个倒转的单根树状结构 文件系统的根为"/" 文件系统严格区分大小写 路径使用/来分割,在windows使用"" 当前工作目录 1 每一个shell或系统进程都有一个当前工作目录 2 使用pwd命令可以显示当前的工作目录 ...
  你可以实验一下这样刻:  1.用cat或hd将要刻录CD里的东西作成一个文件,比如a.iso  2. 或许可以用mount a.iso /mnt/test -o loop看一下内容  3.用cdwrite直接将这个a.iso写到CDR上。  我看了cdwrite的代码,似乎是采用byte to byte的物理拷贝,  如果是的话,上面的...
  名称:exportfs 使用权限:系统管理者 使用方式: exportfs 说明: 参数: 没有任何参数。  范例: # newaliases 下面命令会做相同的事,  # sendmail -bi 相关命令: mail, mailq, newaliases, sendmail  
  指令:fstab 使用权限 : 超级使用者 使用方式 : 使用编辑器来修改 /etc/fstab (eg. vi /etc/fstab) 说明 : 存放档案系统与目录结构对应资料的档案 fstab 栏位说明: 第一栏(fs_spec): 实际的 device 名称 第二栏(fs_file): 对应到的目录结...

经验教程

610

收藏

68
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部