fbpx
维基百科

ext3

第三代扩展文件系统(英語:Third extended filesystem,縮寫為ext3),是一个日志文件系统,常用于Linux操作系统。它是很多Linux发行版的默认文件系统史提芬·崔迪在1999年2月的内核邮件列表[2]中,最早显示了他使用扩展的ext2,该文件系统从2.4.15版本的内核开始,合并到内核主线中[3]

ext3
开发者史提芬·崔迪
全称第三代扩展文件系统
发布2001年11月 (Linux 2.4.15)
分区标识0x83(MBR
EBD0A0A2-B9E5-4433-87C0-68B6B72699C7(GPT
结构
目录内容表,树
文件分配位图(空闲区域),表(元数据)
坏块
限制
最大文件尺寸16GiB – 2TiB
最大文件数量可变[1]
最长文件名255字节
最大卷容量4TiB – 32TiB
文件名字符集除NULL和'/'外的所有字节
功能
日期记录修改(mtime),属性修改(ctime),访问(atime)
日期范围1901年12月14日-2038年1月18日
日期分辨率1秒
岔流
属性No-atime, append-only, synchronous-write, no-dump, h-tree (directory), immutable, journal, secure-delete, top (directory), allow-undelete
文件系统权限Unix权限,ACLs和arbitrary security attributes(Linux 2.6 and later)
透明压缩
透明加密否(块设备级上提供)
操作系统支持LinuxBSDWindows(通过IFSExt2Fsd

优势 编辑

虽然它的性能(速度)不如它的竞争对手,例如JFS2,ReiserFSXFS,但它具有重要的优势,那就是它允许在适当的时候从流行的ext2文件系统升级,而无需备份和恢复数据;除此之外,它还具有比ReiserFSXFS更低的的CPU使用率[1](页面存档备份,存于互联网档案馆) 。

ext3文件系统增加的超越其前代的包括:

  • 日志
  • 位目录跨越多个块提供基于树的目录索引
  • 在线系统增长

如果没有这些,ext3文件系统也同时是个有效的ext2文件系统。这样,经过良好测试的、成熟的文件系统工具来管理和修复ext2文件系统工具,可以无需大的变动,就应用于ext3文件系统。ext2和ext3文件系统共享相同的工具集,带有fsck工具的e2fsprogs。这种紧密的联系也将两种文件系统之间进行转换(包括升级到ext3和降级为ext2)变得非常容易。

Linux实现的ext3文件系统,包括3个级别的日志:

  • 日记:(慢,但风险小)元数据和文件内容都在提交到主文件系统前写入。这样将提高稳定性但性能上有所损失,因为所有的数据都要写入2次。如果没有在/etc/fstab中加上这个选项,修改中的档案遇上kernel panic或突然断电的时候就可能发生损毁的情况,当然,这还是得看软体是怎么写入档案的。
  • 顺序:(中速,中等风险)顺序和写回类似,但在对应的元数据标记为提交前,强制写入文件内容。这是很多Linux发行版默认的方式。
  • 回写:(快,但风险最大;在某种感觉上和ext2相当)这边会写入日志的只有metadata而已,档案的内容并不会跟著写入日志里面。这样的作法让整个效率变快了不少,不过也同样造成了档案写入时不按顺序的结果。举例来说,档案在附加变大的同时发生了crash的情况,就可能造成下次挂载时档案后面就附加一堆垃圾数据的情况。

尽管ext3缺少一些当代文件系统的特点,像是动态的inode、树状的资料储放结构等等,都是被视作ext3的缺点之一,不过在这些特点之外,ext3在文件系统回复上面就有了很好的表现。跟树状结构的文件系统相比,在ext3上面metadata是放在固定的位置,而且在写入的同时会重复写入的一些资料让ext2/3在面临资料损毁的情况下还有挽回的机会。

劣势 编辑

功能 编辑

当初ext3的设计目标就是提供对於ext2的高度相容,很多磁盘上的结构和都和ext2很相似。也因为这样,ext3缺乏很多最新设计中的功能,例如动态分配inode和可变块大小(frags或tails)。

ext3文件系统在被挂载为写入的时候,是不能进行fsck的。ext3档案系统的倾倒作业在这个档案系统还是挂载中的时候执行可能会造成资料的损坏。

ext3不支持在其他文件系统上已经支持(例如:JFS2ext4)的扩展。

磁盘碎片 编辑

在文件系统级别上,没有在线的ext3磁盘碎片整理工具。

离线的ext2磁盘碎片整理工具e2defrag,可以用于ext3文件系统,但前提是在使用前要将文件系统转换回ext2。但依赖于功能位在文件系统中打开,e2defrag可能会毁灭数据;目前仍然不知道如何处理新的ext3功能。[4]

有一些用户使用的磁盘碎片整理工具,例如Shake[2](页面存档备份,存于互联网档案馆) 和defrag[3](页面存档备份,存于互联网档案馆),这些工具通过复制文件来实现新分配的文件不存在碎片。但这只在文件系统相当空的情况下有效,并且该文件系统不经常出现碎片。目前没有真正的用于ext3的磁盘碎片整理工具[4](页面存档备份,存于互联网档案馆) 。

事实上,磁盘碎片整理完全是一种人们在单用户单进程环境下(如DOS/早期Windows)工作时养成的旧习。

在多任务环境下,磁盘碎片的出现根本是不可避免的,而且碎片化的速度非常之快。操作系统的任务不是不负责任地给用户提供一个整理工具,而是应该在系统设计的时候消除碎片化对性能的伤害。比如Linux块设备操作都要经过一个I/O调度层,通过在调度层中使用带有电梯算法的调度策略来消除碎片对性能的影响。

另外,如果将来固态硬盘普及乃至取代传统硬盘,也会让磁盘碎片的概念成为历史。

反删除 编辑

和ext2不同,ext3会在删除文件时把文件的节点(inode)中的块指标清除。这样做可以在unclean载入文件系统后,重放日志时,可以减少对文件系统的访问。但也同样也增加了文件在反删除上面的困难。用户唯一的补救是在硬盘中捞取数据,并且要知道文件的起始到结束的块指标。尽管提供了比ext2在删除文件上稍微高一些的安全性,却也无可避免的带来了不便之处。

压缩 编辑

Ext3不支持透明压缩(Ext2以非官方补丁支持)。

大小限制 编辑

ext3有一个相对较小的对于单个文件和整个文件系统的最大尺寸。这些限制依赖于文件系统的块大小;下面的表格总结了这些限制[5]

區塊大小 最大檔案容量 最大檔案系統容量
1KiB 16GiB 2TiB
2KiB 256GiB 8TiB
4KiB 2TiB 16TiB
8KiB[limits 1] 2TiB 32TiB
  1. ^ 8KiB块,只能用于允许8KiB页面的架构(例如alpha)。

日志中没有校验和 编辑

Ext3在写入日志时,并不做校验和。如果barrier=1没有作为加载参数(在文件/etc/fstab),并且如果硬件在无次序的写入缓存,在崩溃时会严重损坏文件系统[6][7](该选项在大多数流行的Linux发行版中都没有被启用,所以大多数发行版的处境都很危险。)

考虑下面的情况:如果硬盘无序的做写入操作(因为现在的硬盘都使用缓存机制以便摊销写入速度),那么有可能出现在写入处理的提交块时,其他的相关的块已经被写入了。如果电源掉电、内核panic出现在其他块写入前,那么系统将必须重启。在重启后,文件系统将按照正常方式重演日志,并且重演“优胜者”(具有提交块的处理,包括上面无效的但被标记为有效的提交块的处理)。于是,上面没有完成的磁盘写入将处理,但使用已经损坏的日志数据。文件系统在重演日志的时候,将错误的使用已经损坏的数据覆盖正常数据。如果使用校验和(如果假的“优胜者”处理被标记为互斥的校验和),文件系统会处理的更好,并且不会在磁盘上重演错误的数据。截止到2007年6月24日,已经有补丁来修复这个问题。

Ext4dev / Ext4 编辑

2006年10月10日发布了一个增强版本的文件系统,使用ext4作为名称。该文件系统包含很多新的功能。

注释和引用 编辑

  1. ^ 最大i节点(并且之后作为文件和目录的最大数量)数目在文件系统创建时确定。如果V是卷的大小(字节数),则默认的i节点数量位V/213(或块的数量,以最小的为准),且最小为V'/223。绝大多数应用程序认为默认值已经足够了。
  2. ^ Stephen C. Tweedie. . Linux kernel mailing list. February 17, 1999 [2007-09-01]. (原始内容存档于2021-02-25). 
  3. ^ Rob Radez. 2.4.15-final. Linux kernel mailing list. November 23, 2001 [2007-09-01]. (原始内容存档于2011-08-26). 
  4. ^ Andreas Dilger. . ext3-users mailing list post. [2007-09-01]. (原始内容存档于2021-02-24). 
  5. ^ Matthew Wilcox. . Linux kernel source documentation. [2007-09-01]. (原始内容存档于2007-08-24). 
  6. ^ 存档副本. [2007-09-01]. (原始内容于2007-09-28). 
  7. ^ 存档副本. [2007-09-01]. (原始内容于2007-09-28). 

参考 编辑

  • ext2
  • ext4
  • List of file systems
  • Comparison of file systems

外部链接 编辑

  • Linux ext3 FAQ(页面存档备份,存于互联网档案馆
  • Introducing ext3 - IBM developerWorks Advanced filesystem implementor's guide, Part 7(页面存档备份,存于互联网档案馆
  • Ext2 File System For Windows(页面存档备份,存于互联网档案馆) GPL ext2/ext3 file system driver for Windows NT/2000/XP/Vista(opensource, supports read & write, supports 2K/XP/VISTA on X86/AMD64)
  • Ext2 Installable File System For Windows(页面存档备份,存于互联网档案馆) ext2/ext3 file system driver for MS Windows NT/2000/XP(freeware, supports read & write on Windows NT4.0/2000/XP/2003 on x86 processors only)
  • ext2/ext3 file system driver for MS Windows NT/2000/XP(opensource, doesn't support writing, doesn't support Windows XP SP2 or Windows Vista)
  • Explore2fs(页面存档备份,存于互联网档案馆) An explorer-like GUI tool for accessing ext2/ext3 filesystems under MS Windows
  • ext2/ext3 resizing tools(页面存档备份,存于互联网档案馆
  • Presentation on EXT3 Journaling Filesystem(页面存档备份,存于互联网档案馆) by Dr. Stephen Tweedie at the Ottawa Linux Symposium, 20 July, 2000

ext3, 第三代扩展文件系统, 英語, third, extended, filesystem, 縮寫為, 是一个日志文件系统, 常用于linux操作系统, 它是很多linux发行版的默认文件系统, 史提芬, 崔迪在1999年2月的内核邮件列表, 最早显示了他使用扩展的ext2, 该文件系统从2, 15版本的内核开始, 合并到内核主线中, 开发者史提芬, 崔迪全称第三代扩展文件系统发布2001年11月, linux, 分区标识0x83, ebd0a0a2, b9e5, 4433, 87c0, 68b6b72699. 第三代扩展文件系统 英語 Third extended filesystem 縮寫為ext3 是一个日志文件系统 常用于Linux操作系统 它是很多Linux发行版的默认文件系统 史提芬 崔迪在1999年2月的内核邮件列表 2 中 最早显示了他使用扩展的ext2 该文件系统从2 4 15版本的内核开始 合并到内核主线中 3 ext3开发者史提芬 崔迪全称第三代扩展文件系统发布2001年11月 Linux 2 4 15 分区标识0x83 MBR EBD0A0A2 B9E5 4433 87C0 68B6B72699C7 GPT 结构目录内容表 树文件分配位图 空闲区域 表 元数据 坏块表限制最大文件尺寸16GiB 2TiB最大文件数量可变 1 最长文件名255字节最大卷容量4TiB 32TiB文件名字符集除NULL和 外的所有字节功能日期记录修改 mtime 属性修改 ctime 访问 atime 日期范围1901年12月14日 2038年1月18日日期分辨率1秒岔流是属性No atime append only synchronous write no dump h tree directory immutable journal secure delete top directory allow undelete文件系统权限Unix权限 ACLs和arbitrary security attributes Linux 2 6 and later 透明压缩否透明加密否 块设备级上提供 操作系统支持Linux BSD Windows 通过IFS或Ext2Fsd 目录 1 优势 2 劣势 2 1 功能 2 2 磁盘碎片 2 3 反删除 2 4 压缩 2 5 大小限制 2 6 日志中没有校验和 3 Ext4dev Ext4 4 注释和引用 5 参考 6 外部链接优势 编辑虽然它的性能 速度 不如它的竞争对手 例如JFS2 ReiserFS和XFS 但它具有重要的优势 那就是它允许在适当的时候从流行的ext2文件系统升级 而无需备份和恢复数据 除此之外 它还具有比ReiserFS和XFS更低的的CPU使用率 1 页面存档备份 存于互联网档案馆 ext3文件系统增加的超越其前代的包括 日志 位目录跨越多个块提供基于树的目录索引 在线系统增长如果没有这些 ext3文件系统也同时是个有效的ext2文件系统 这样 经过良好测试的 成熟的文件系统工具来管理和修复ext2文件系统工具 可以无需大的变动 就应用于ext3文件系统 ext2和ext3文件系统共享相同的工具集 带有fsck工具的e2fsprogs 这种紧密的联系也将两种文件系统之间进行转换 包括升级到ext3和降级为ext2 变得非常容易 Linux实现的ext3文件系统 包括3个级别的日志 日记 慢 但风险小 元数据和文件内容都在提交到主文件系统前写入 这样将提高稳定性但性能上有所损失 因为所有的数据都要写入2次 如果没有在 etc fstab中加上这个选项 修改中的档案遇上kernel panic或突然断电的时候就可能发生损毁的情况 当然 这还是得看软体是怎么写入档案的 顺序 中速 中等风险 顺序和写回类似 但在对应的元数据标记为提交前 强制写入文件内容 这是很多Linux发行版默认的方式 回写 快 但风险最大 在某种感觉上和ext2相当 这边会写入日志的只有metadata而已 档案的内容并不会跟著写入日志里面 这样的作法让整个效率变快了不少 不过也同样造成了档案写入时不按顺序的结果 举例来说 档案在附加变大的同时发生了crash的情况 就可能造成下次挂载时档案后面就附加一堆垃圾数据的情况 尽管ext3缺少一些当代文件系统的特点 像是动态的inode 树状的资料储放结构等等 都是被视作ext3的缺点之一 不过在这些特点之外 ext3在文件系统回复上面就有了很好的表现 跟树状结构的文件系统相比 在ext3上面metadata是放在固定的位置 而且在写入的同时会重复写入的一些资料让ext2 3在面临资料损毁的情况下还有挽回的机会 劣势 编辑功能 编辑 当初ext3的设计目标就是提供对於ext2的高度相容 很多磁盘上的结构和都和ext2很相似 也因为这样 ext3缺乏很多最新设计中的功能 例如动态分配inode和可变块大小 frags或tails ext3文件系统在被挂载为写入的时候 是不能进行fsck的 ext3档案系统的倾倒作业在这个档案系统还是挂载中的时候执行可能会造成资料的损坏 ext3不支持在其他文件系统上已经支持 例如 JFS2和ext4 的扩展 磁盘碎片 编辑 在文件系统级别上 没有在线的ext3磁盘碎片整理工具 离线的ext2磁盘碎片整理工具e2defrag 可以用于ext3文件系统 但前提是在使用前要将文件系统转换回ext2 但依赖于功能位在文件系统中打开 e2defrag可能会毁灭数据 目前仍然不知道如何处理新的ext3功能 4 有一些用户使用的磁盘碎片整理工具 例如Shake 2 页面存档备份 存于互联网档案馆 和defrag 3 页面存档备份 存于互联网档案馆 这些工具通过复制文件来实现新分配的文件不存在碎片 但这只在文件系统相当空的情况下有效 并且该文件系统不经常出现碎片 目前没有真正的用于ext3的磁盘碎片整理工具 4 页面存档备份 存于互联网档案馆 事实上 磁盘碎片整理完全是一种人们在单用户单进程环境下 如DOS 早期Windows 工作时养成的旧习 在多任务环境下 磁盘碎片的出现根本是不可避免的 而且碎片化的速度非常之快 操作系统的任务不是不负责任地给用户提供一个整理工具 而是应该在系统设计的时候消除碎片化对性能的伤害 比如Linux的块设备操作都要经过一个I O调度层 通过在调度层中使用带有电梯算法的调度策略来消除碎片对性能的影响 另外 如果将来固态硬盘普及乃至取代传统硬盘 也会让磁盘碎片的概念成为历史 反删除 编辑 和ext2不同 ext3会在删除文件时把文件的节点 inode 中的块指标清除 这样做可以在unclean载入文件系统后 重放日志时 可以减少对文件系统的访问 但也同样也增加了文件在反删除上面的困难 用户唯一的补救是在硬盘中捞取数据 并且要知道文件的起始到结束的块指标 尽管提供了比ext2在删除文件上稍微高一些的安全性 却也无可避免的带来了不便之处 压缩 编辑 Ext3不支持透明压缩 Ext2以非官方补丁支持 大小限制 编辑 ext3有一个相对较小的对于单个文件和整个文件系统的最大尺寸 这些限制依赖于文件系统的块大小 下面的表格总结了这些限制 5 區塊大小 最大檔案容量 最大檔案系統容量1KiB 16GiB 2TiB2KiB 256GiB 8TiB4KiB 2TiB 16TiB8KiB limits 1 2TiB 32TiB 8KiB块 只能用于允许8KiB页面的架构 例如alpha 日志中没有校验和 编辑 Ext3在写入日志时 并不做校验和 如果barrier 1没有作为加载参数 在文件 etc fstab 并且如果硬件在无次序的写入缓存 在崩溃时会严重损坏文件系统 6 7 该选项在大多数流行的Linux发行版中都没有被启用 所以大多数发行版的处境都很危险 考虑下面的情况 如果硬盘无序的做写入操作 因为现在的硬盘都使用缓存机制以便摊销写入速度 那么有可能出现在写入处理的提交块时 其他的相关的块已经被写入了 如果电源掉电 内核panic出现在其他块写入前 那么系统将必须重启 在重启后 文件系统将按照正常方式重演日志 并且重演 优胜者 具有提交块的处理 包括上面无效的但被标记为有效的提交块的处理 于是 上面没有完成的磁盘写入将处理 但使用已经损坏的日志数据 文件系统在重演日志的时候 将错误的使用已经损坏的数据覆盖正常数据 如果使用校验和 如果假的 优胜者 处理被标记为互斥的校验和 文件系统会处理的更好 并且不会在磁盘上重演错误的数据 截止到2007年6月24日 已经有补丁来修复这个问题 Ext4dev Ext4 编辑主条目 ext4 2006年10月10日发布了一个增强版本的文件系统 使用ext4作为名称 该文件系统包含很多新的功能 注释和引用 编辑 最大i节点 并且之后作为文件和目录的最大数量 数目在文件系统创建时确定 如果V是卷的大小 字节数 则默认的i节点数量位V 213 或块的数量 以最小的为准 且最小为V 223 绝大多数应用程序认为默认值已经足够了 Stephen C Tweedie Re fsync on large files Linux kernel mailing list February 17 1999 2007 09 01 原始内容存档于2021 02 25 Rob Radez 2 4 15 final Linux kernel mailing list November 23 2001 2007 09 01 原始内容存档于2011 08 26 Andreas Dilger Post to the ext3 users mailing list 英文 ext3 users mailing list post 2007 09 01 原始内容存档于2021 02 24 Matthew Wilcox Documentation filesystems ext2 txt Linux kernel source documentation 2007 09 01 原始内容存档于2007 08 24 存档副本 2007 09 01 原始内容存档于2007 09 28 存档副本 2007 09 01 原始内容存档于2007 09 28 参考 编辑ext2 ext4 List of file systems Comparison of file systems外部链接 编辑Linux ext3 FAQ 页面存档备份 存于互联网档案馆 Introducing ext3 IBM developerWorks Advanced filesystem implementor s guide Part 7 页面存档备份 存于互联网档案馆 Ext2 File System For Windows 页面存档备份 存于互联网档案馆 GPL ext2 ext3 file system driver for Windows NT 2000 XP Vista opensource supports read amp write supports 2K XP VISTA on X86 AMD64 Ext2 Installable File System For Windows 页面存档备份 存于互联网档案馆 ext2 ext3 file system driver for MS Windows NT 2000 XP freeware supports read amp write on Windows NT4 0 2000 XP 2003 on x86 processors only EXT2 IFS ext2 ext3 file system driver for MS Windows NT 2000 XP opensource doesn t support writing doesn t support Windows XP SP2 or Windows Vista Explore2fs 页面存档备份 存于互联网档案馆 An explorer like GUI tool for accessing ext2 ext3 filesystems under MS Windows ext2 ext3 resizing tools 页面存档备份 存于互联网档案馆 Presentation on EXT3 Journaling Filesystem 页面存档备份 存于互联网档案馆 by Dr Stephen Tweedie at the Ottawa Linux Symposium 20 July 2000 取自 https zh wikipedia org w index php title Ext3 amp oldid 76017992, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。