JFS是IBM公司为linux系统开发的一个日志文件系统。从IBM的实力及它对Linux的态度来看,JFS应该是未来日志文件系统中最具实力的一个文件系统。

JFS提供了基于日志的字节级文件系统,该文件系统是为面向事务的高性能系统而开发的。JFS 能够在几秒或几 分钟内就把文件系统恢复到一致状态。JFS能够保证数据在任何意外宕机的情况下,不会造成磁盘数据的丢失与损坏。

一、JFS文件系统特点

1.存储空间更大

JFS 支持的最小文件系统是 16M 字节。最大文件系统的大小为 512 万亿字节(TB)。JFS 是真正意义上的 64 位的文件系统。所有 JFS 文件系统结构化字段都是 64 位大小。

2.动态磁盘 inode 分配

JFS 按需为磁盘 inode 动态地分配空间,释放不再需要的空间。这种方式避开了在文件系统创建期间,为磁盘 inode 保留固定数量空间的传统方法。用户不需要考虑文件系统包含的文件和目录最大数目。

3.基于盘区的寻址结构

JFS 使用基于盘区的寻址结构,JFS 分配尝试通过分配最小数量的盘区策略,而使每个盘区尽可能大。这有利于大的 I/O 传送,磁盘读写性能所有提高。

4.块尺寸可变

JFS 支持 512、1024、2048 和 4096 字节的块尺寸,允许用户根据应用环境优化空间利用率。较小的块尺寸减少有利于内部存储碎片的数量,提高空间利用率。系统缺省块尺寸为 4096 字节。

二、使用JFS文件系统

1.编译内核以支持JFS文件系统

首先下载最新的2.4.x 核心,然后下载JFS系统软件包,名称为:jfs-x.y.z-patch.tar.gz。 将下载文件存放在/usr/src目录中。

在/usr/src/上当目录下解开jfs的软件包

# tar –zxvf jfs-2.4-1.0.4.tar.gz
  # tar –zxvf jfs-2.4-1.0.4-patch.tar.gz

得到四个文件:

jfs-2.4.common-v1.0.4-patch
  jfs-2.4.7-v1.0.4-patch
  jfs-2.4.5-v1.0.4-patch
  jfs-2.4.0-v1.0.4-patch

其中,jfs-2.4.common-v1.0.4-patch文件用于所有的2.4核心,jfs-2.4.0-v1.0.4-patch用于2.4.0-2.4.2。jfs-2.4.5-v1.0.4-patch可用于核心2.4.5及2.4.6。

注意仔细阅读README文件,不要用错了patch文件

接着是为核心打补丁:

# patch –p1 < jfs-2.4.5-v1.0.4-patch

打补丁工作完成。

最后运行

#make menuconfig

将新的文件系统加入了核心编译配置文件中,要进行以下内核配置:

使用make menuconfig 在菜单"Code maturity level options"中,选择"Prompt for development and/or incomplete code/drivers.“选项。然后,进入文件系统菜单"File systems”,选择"JFS filesystem support."选项。配置核心,使核心支持JFS文件系统。配置核心的其它选项。

<*> JFS filesystem support

##将JFS文件系统的支持编译入内核,也可以将其编译成模块加载方百度收录批量查询式,见以下选择:

JFS filesystem support

笔者建议将JFS文件系统支持直接编译进内核,这有利于提高系统性能。

然后编译核心:

#make dep
  #make clean
  #make bzImage
  #make modules
  #make modules_install
  #cp arch/i386/boot/bzImage /boot/vmlinuz-2.4.5-jfs

最后,编辑 /etc/lilo.conf 文件,加入新内核条目,以便使用新的内核引导系统。如下所示,在 lilo.conf文件中加入以下几行内容:

Linux环境下使用JFS文件系统介绍相关推荐

  1. Linux环境下移动一个文件夹下的所有文件到另一个文件夹

    Linux环境下移动一个文件夹下的所有文件到另一个文件夹 研究命令 最近需要把一个环境里的文件,迁移到另一个环境里去,但是两个环境里的数据会有一些同名的子目录,要求不能覆盖数据而是合并,迁移之前我先做 ...

  2. Java练习-----2.对Windows和Linux环境下输入的文件路径格式进行校验

    1.需求 Windows环境下路径格式只能为 D:\Desktop\source Linux环境下路径格式只能为 /data/source 2.结果展示 Linux环境下运行成功,懒得开虚拟机,就不展 ...

  3. linux jfs文件名长度,Linux环境下使用JFS文件系统

    JFS提供了基于日志的字节级文件系统,该文件系统是为面向事务的高性能系统而开发的.JFS 能够在几秒或几 分钟内就把文件系统恢复到一致状态.JFS能够保证数据在任何意外宕机的情况下,不会造成磁盘数据的 ...

  4. Linux环境下FTP传输文件无反应

    前提条件: 本地Windows服务器下,文件上传运行正常,部署jar包Linux环境上,上传文件无反应: 1 在FTP服务中,涉及到客户端和服务器端的连接,连接就会涉及到端口的打开问题: 2 而端口的 ...

  5. Linux环境下实现excel文件转pdf并且实现优化

    最近公司有一个excel转pdf的需求需要实现,话不多说直接上代码! 我所用的环境是ubuntu18版本 excel转pdf在Linux环境中可以使用libreoffice插件进行转换! 1.首先查看 ...

  6. python程序实现:linux环境下,将一个文件夹内的所有.tar.gz压缩文件解压缩到同名子文件夹内,没有子文件夹时重新建立同名子文件夹,使得它们相互独立。

    # 命名为untar.pyimport tarfile import os# 获得目录下的所有文件 def get_file_name(file_dir):L = []for root, dirs, ...

  7. linux 命令调试分析core文件,linux环境下dump vmcore文件分析

    1.安装kernel-debuginfo-common 和 kernel-debuginfo [root@wds ~]# uname -r 3.10.0-693.el7.x86_64 rpm -ivh ...

  8. Linux环境下查看日志文件命令详解

    目录: 前言 cat命令 more命令 less命令 head命令 tail命令 tac命令 echo命令 grep命令 sed命令 混合命令 附加 前言: 当日志存储文件很大时,我们就不能用 vi ...

  9. Linux环境下——实现xml文件解析

    目录 libxml简介 libxml库安装 libxml2中的数据类型和函数 xml文档解析实例 运行结果 libxml简介 libxml是一个用于解析xml文件的库,在各个平台下都能使用,也支持多种 ...

最新文章

  1. 企业工作流程化重要吗?
  2. java等待欢迎界面_android welcome欢迎界面3秒后自动跳转
  3. 【效率】如何有效提问
  4. catch后面的代码会执行吗_字节码层面理解try、catch、finally
  5. android官方架构room,Android 官方架构组件介绍之 Room(翻译)
  6. do filtering will real delete note in DB
  7. python数据导入hive_Python操作HIve,将数据插入到Mysql
  8. android底层重构,【理论】【转】Android项目重构之路:实现篇
  9. Vue (响应式原理-模拟-4-Dep)
  10. MVVM架构结合阿里ARouter,打造一套Android-Databinding组件化
  11. mysql 树形结构_结合RBAC模型讲解权限管理系统需求及表结构创建
  12. 提高代码的运行效率 (4)
  13. 古董留念 - Microsoft Office 4.2中文版
  14. 笔记-delphi7高效数据库程序设计
  15. 第02章:字符串是否包含
  16. 油田大数据与创新之路的探究
  17. 半同步/半异步模式,半同步半反应堆reactor模式
  18. MySQL顺序读写和随机读写磁盘_随机读写与顺序读写的深入理解
  19. 【Cocos2D-X 游戏引擎】初窥门径(4)Touch 事件:移动精灵
  20. 将当前容器保存为本地镜像

热门文章

  1. 自由能计算专题3:gromacs计算自由能的7种方法案例
  2. ESP8266-01S使用教程
  3. 微信会员注册开发【带源码】:网页授权,得到code后在当前页面获取openid,js+php实现跨域请求
  4. 对于addEventListener()事件的看法
  5. 低功耗蓝牙BLE之修改广播间隔等参数
  6. Java学习路线,java学习教程(入门到精通)
  7. 基于微信小程序开发的demo
  8. vi编辑器的四种退出方式
  9. 自动化测试到底怎么做(单元测试自动化,接口自动化,UI自动化)
  10. Mac 移动硬盘无法装载