专栏首页linux百科小宇宙技术|哪个文件系统最适合你的 Linux 系统?
原创

技术|哪个文件系统最适合你的 Linux 系统?

文件系统:它们不是世界上最激动人心的技术,但是仍然很重要。本文我们将细数那些流行的Linux文件系统-它们是什么,它们能够做什么,以及它们的目标用户。

Ext4

如果你曾经安装过Linux,你可能在安装过程中看到过“Ext4”字样。用它有一个不错的理由:它是当前每个可用的Linux发行版所选择的文件系统。当然,还有其他的一些选择,但是不可否认的是,Ext4(Extended4)几乎是所有Linux用户都会选择的文件系统。

它能做什么?Ext4拥有之前的文件系统(Ext2/Ext3)中你所期待的所有优点,同时还带来了一些改进。还有很多内容可以发掘,这里列举出了Ext4为你带来的最好的部分:

日志型文件系统日志校验多重块文件分配向后兼容Ext2&&Ext3持续的空闲空间预分配改进的文件系统校验(相比于之前的版本)当然,同时支持更大的文件目标用户Ext4针对那些寻找超级可靠的基础环境或者那些只需要能工作就行的用户。这个文件系统不会对你的系统做快照;它甚至没有最好的SSD支持,但是如果你不是太挑剔的话,你会觉得它也还不错。

BtrFS

B树(B-tree)文件系统(也被当做是butterFS,黄油文件系统)是Oracle为Linux研发的一款文件系统。它是一个全新的文件系统,而且正处于主要开发阶段。Linux社区认为其有时候使用上还有些不稳定。BtrFS的核心原则是围绕着写时复制(copy-on-write)原则展开的。写时复制基本上意味着在写入数据完成前,这份数据的每一比特都有单独的一份副本。当数据写入完毕后,相当于它做了一份副本。

它能做什么除了支持写时复制之外,BtrFS也能够胜任许多其他的事务-事实上,它可以不断列出各种特性。这里列举最值得一提的特性:支持只读快照、文件克隆、子卷、透明压缩、离线文件系统校验、从ext3&4原地转换到BtrFS、在线碎片整理,还支持RAID0,RAID1,RAID5,RAID6和RAID10。

目标用户BtrFS的开发者们许诺过,该文件系统是当前其他文件系统的新一代替代者。非常正确,虽然目前其处于开发中。它有很多面向高级用户的杀手级特性,对于基本用户也是这样(包括SSD上面的更佳性能)。这个文件系统针对那些想要从文件系统中获取更多(特性),以及那些想尝试用写时复制机制做一些事情的用户。

XFS

由SiliconGraphics公司创造开发,XFS是一个高端文件系统,定位于速度和性能方面。处于对性能方面的专注,使得在并行IO方面,XFS表现的尤其出色。XFS文件系统能够处理数量庞大的数据,事实上某些XFS用户的数据接近300TB以上。

它能做什么XFS是一个经历良好测试的数据存储文件系统,它是为了高性能操作而诞生的。其特性包括:

RAID阵列的条带化分配日志型文件系统块大小可变直接I/O指定速率(guaranteed-rate)I/O快照在线碎片整理在线调整文件系统大小目标用户XFS针对那些想要一个坚如磐石的文件系统方案的用户。它始于1993年,并且随着时间的变迁它变得越来越好。如果你有一台家庭服务器,而且你苦恼于如何部署存储环境,那么可以考虑下XFS。它拥有的众多特性(比如快照)能够有助于你的文件存储系统。尽管如此,它不局限于服务器端。如果你是一个相对高级一点的用户或者你对BtrFS所承诺的很多特性感兴趣的话,尝试一下XFS。它实现了很多与BtrFS相似的特性,并且没有稳定性方面的问题。

Reiser4

Reiser4是ReiserFS的继任者,由Namesys公司创造研发。它的诞生可以追溯到Linspire项目和DARPA。它与众不同的地方在于众多的事务模式。并不止于单一的一种写入数据的方式;取而代之的是,有很多方式(来写入)。

它能做什么Reiser4拥有着使用多种不同事务模式的独特能力。它能够使用写时复制模式(像BtrFS),任意位置写入(write-anywhere),日志,以及混合事务模式。它在ReiserFS的基础上做了许多的改进,包括更好的基于漫游日志的文件系统日志,对较小文件的支持更好,以及更快速的目录处理。Reiser4提供了许多功能特性。还有更多的特性可以探讨,不过简单来讲,相比于ReiserFS它不但做了非常大的改进,而且增加了众多特性。

目标用户Resier4适合那些想要将一个文件系统应用到多种场景下的用户。可能你想在一台机器上使用写时复制机制,在另一台机器上使用任意位置写入机制,还会在另一台机器上使用混合事务,而你又不希望使用多种不同类型的文件系统来完成这项任务。Reiser4是适合这种情况的完美方案。

结论Linux上有许多可用的文件系统。每个文件系统都有其特定的用途,以便于特定用户解决不同的问题。本文的焦点集中在Linux平台上文件系统的主流选择。毫无疑问,其它的场景下还有一些别的选择。

你在Linux上最喜欢的文件系统是什么?在下面的评论区告诉我们吧!

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Linux系统六个最佳PDF文档阅览器,看看哪款更适合你

    目前,互联网在线图书与其他相关文档正越来越多的使用PDF格式的文件,因此如果你使用的是桌面Linux发行版,那么选择一个合适的PDF阅览器就变得格外重要。 在本...

    小小科
  • Linux下文件系统技巧 | 统计个数 | 只见文件或目录

    长列表输出该目录下文件信息(注意这里的文件,不同于一般的文件,可能是目录、链接、设备文件等)

    宋天伦
  • 在 Linux 文件系统中导航的技巧

    无论你是在文件系统中四处查看、寻找文件还是尝试进入重要目录,Linux 都可以提供很多帮助。在本文中,我们将介绍一些技巧,使你可以在文件系统中移动,查找和使用所...

    用户8639654
  • 构建一个适合stm32mp157系列开发板的嵌入式Linux系统

    Linux平台上有许多开源的嵌入式linux系统构建框架(框架的意思就是工具),这些框架极大的方便了开发者进行嵌入式系统的定制化构建,目前比较常见的有OpenW...

    韦东山
  • 300来行代码带你实现一个能跑的最小Linux文件系统

    Linux作为一个类UNIX系统,其文件系统保留了原始UNIX文件系统的表象形式,它看起来是这个样子:

    Linux阅码场
  • 软件技术架构:做一个“靠谱”的系统

    如果“高并发”是为了让系统变得“有效率”,可以抵抗大规模用户访问,那限流与熔断就是为了让系统变得“更靠谱”。靠谱包括了高可用性、稳定性、可靠性,做一个“靠谱”的...

    博文视点Broadview
  • CRSLab: 可能是最适合你的对话推荐系统开源库

    随着对话系统和推荐系统的快速发展,新方向——对话推荐系统(Conversational Recommender System,简称CRS)也开始了蓬勃发展,其关...

    张小磊
  • 大神总结的7条Linux核心知识点,文末赠送10本新书!

    据不完全统计,Linux在数据中心操作系统上的份额高达近70%。它一般运行于服务器和超级计算机上,我们日常访问网站背后的数百万台服务器很大几率运行着的操作系统就...

    程序IT圈
  • 五款精美的Linux操作系统,你都用过哪一个?

    Feren OS:基于Linux Mint的Linux发行版,Feren OS包含Cinnamon桌面环境和可运行Windows应用软件的WINE兼容层,不知外...

    用户6543014
  • 你不好奇Linux文件系统是怎么工作的?

    文件系统,本身是对存储设备上的文件,进行组织管理的机制。组织方式不同,就会形成不同的文件系统。

    杰哥的IT之旅
  • 如何掌握在Python中监控文件系统的技术

    通过阅读本文,您将了解如何检测对Python应用程序中现有文件所做的更改。我们将使用一个维护良好的模块,叫做看门狗(watchdog)。基于官方文档,watch...

    HuangWeiAI
  • 扎心的程序员,你不会修电脑一定懂操作系统吧!

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xmt1139057136/article/detai...

    业余草
  • 开源技术大神总结的7条Linux核心知识点

    据不完全统计,Linux在数据中心操作系统上的份额高达近70%。它一般运行于服务器和超级计算机上,我们日常访问网站背后的数百万台服务器很大几率运行着的操作系统就...

    用户6543014
  • 你应该知道的10个Python文件系统方法

    大家可以编写Python程序来与文件系统进行交互,以完成一些很酷的工作。然而如何做到这一点并不总是非常清楚。本文将重点介绍10个基本的os操作和shutil命令...

    HuangWeiAI
  • 让你轻松学习嵌入式的几种线路图方向

    嵌入式学习是一个循序渐进的过程,如果是希望向嵌入式软件方向发展的话,目前最常见的是嵌入式Linux方向,关注这个方向,我认为大概分3个阶段: 1、嵌入式lin...

    企鹅号小编
  • 给初学Linux的朋友分享一些心得总结

    很多同学接触linux不多,对linux平台的开发更是一无所知。 而现在的趋势越来越表明,作为一个优秀的软件开发人员,或计算机it行业从业人员,=""

    用户6754675
  • 国内外流行的Linux发行版

    近年来,Linux 开始获得越来越多的关注,那你知道国内外流行的 Linux 版本都有哪些吗?本文中整理了五大 Linux 发行版,他们分别是 RedHat、S...

    张戈
  • Linux各种版本

     1.1   Fedora Core和Fedora     一开始总搞不清楚 Fedora Core和Fedora有什么关系?有什么不同,现在终于明白了,自从F...

    233333
  • 运维不是修电脑!月薪30K的高级运维告诉你,学会这些就能逆袭

    其实这都是圈外人对运维的刻板印象,无论你是个刚入职没几个月的行业新人,还是在行业里摸爬打滚了好几年的“老鸟”。

    大数据分析不是事儿

扫码关注云+社区

领取腾讯云代金券