活着的死人 发表于 2015-1-18 11:38:51

Linux制作之Ext2 v.s. Ext3 v.s. Ext4 功能比拼仓酷云

讨论什么版本好并无意义,关键是你是不是真心想学.不过,为了避免曲高和寡,最好选用的人多的版本。
Linuxkernel自2.6.28入手下手正式撑持新的文件体系Ext4。Ext4是Ext3的改善版,修正了Ext3中部分主要的数据布局,而不单单像Ext3对Ext2那样,只是增添了一个日记功效罢了。Ext4能够供应更佳的功能和牢靠性,另有更加丰厚的功效:

1.与Ext3兼容。实行多少条命令,就可以从Ext3在线迁徙到Ext4,而不必从头格局化磁盘或从头安装体系。原有Ext3数据布局还是保存,Ext4感化于新数据,固然,全部文件体系因而也就取得了Ext4所撑持的更年夜容量。

2.更年夜的文件体系和更年夜的文件。较之Ext3今朝所撑持的最年夜16TB文件体系和最年夜2TB文件,Ext4分离撑持1EB(1,048,576TB,1EB=1024PB,1PB=1024TB)的文件体系,和16TB的文件。

3.无穷数目的子目次。Ext3今朝只撑持32,000个子目次,而Ext4撑持无穷数目的子目次。

4.Extents。Ext3接纳直接块映照,当操纵年夜文件时,效力极为低下。好比一个100MB巨细的文件,在Ext3中要创建25,600个数据块(每一个数据块巨细为4KB)的映照表。而Ext4引进了古代文件体系中盛行的extents观点,每一个extent为一组一连的数据块,上述文件则暗示为“该文件数据保留在接上去的25,600个数据块中”,进步了很多效力。

5.多块分派。当写进数据到Ext3文件体系中时,Ext3的数据块分派器每次只能分派一个4KB的块,写一个100MB文件就要挪用25,600次数据块分派器,而Ext4的多块分派器“multiblockallocator”(mballoc)撑持一次挪用分派多个数据块。

6.提早分派。Ext3的数据块分派战略是尽快分派,而Ext4和别的古代文件操纵体系的战略是尽量地提早分派,直到文件在cache中写完才入手下手分派数据块并写进磁盘,如许就可以优化全部文件的数据块分派,与前两种特征搭配起来能够明显提拔功能。

7.疾速fsck。之前实行fsck第一步就会很慢,由于它要反省一切的inode,如今Ext4给每一个组的inode表中都增加了一份未利用inode的列表,从此fsckExt4文件体系就能够跳过它们而只往反省那些在用的inode了。

8.日记校验。日记是最经常使用的部分,也极易招致磁盘硬件妨碍,而从破坏的日记中恢单数据会招致更多的数据破坏。Ext4的日记校验功效能够很便利地判别日记数据是不是破坏,并且它将Ext3的两阶段日记机制兼并成一个阶段,在增添平安性的同时进步了功能。

9.“无日记”(NoJournaling)形式。日记总回有一些开支,Ext4同意封闭日记,以便某些有特别需求的用户能够借此提拔功能。

10.在线碎片收拾。只管提早分派、多块分派和extents能无效削减文件体系碎片,但碎片仍是不成制止会发生。Ext4撑持在线碎片收拾,并将供应e4defrag工具举行一般文件或全部文件体系的碎片收拾。

11.inode相干特征。Ext4撑持更年夜的inode,较之Ext3默许的inode巨细128字节,Ext4为了在inode中包容更多的扩大属性(如纳秒工夫戳或inode版本),默许inode巨细为256字节。Ext4还撑持疾速扩大属性(fastextendedattributes)和inode保存(inodesreservation)。

12.耐久预分派(Persistentpreallocation)。P2P软件为了包管下载文件有充足的空间寄存,经常会事后创立一个与所下载文件巨细不异的空文件,以避免将来的数小时或数天以内磁盘空间不敷招致下载失利。Ext4在文件体系层面完成了耐久预分派并供应响应的API(libc中的posix_fallocate()),比使用软件本人完成更无效率。

13.默许启用barrier。磁盘上配有外部缓存,以便从头调剂批量数据的写操纵按次,优化写进功能,因而文件体系必需在日记数据写进磁盘以后才干写commit纪录,若commit纪录写进在先,而日记有大概破坏,那末就会影响数据完全性。Ext4默许启用barrier,只要当barrier之前的数据全体写进磁盘,才干写barrier以后的数据。(可经由过程"mount-obarrier=0"命令禁用该特征。)


Ext4随Linuxkernel2.6.28正式公布已无数周,一向苦于找不到测试用的磁盘,正巧年前Intel送来几块SSD测试样品,这两天就顺带把SSD也测了。测试所利用的Linux内核版本为2.6.28.2,测试工具为IOzone3.318。

IOzone测试命令为:
time/opt/iozone/bin/iozone-a-s4G-q256-y4>|/root/ext4-iozone-stdout.txt
上述命令的申明以下:
AutoMode
Filesizesetto4194304KB
UsingMaximumRecordSize256KB
UsingMinimumRecordSize4KB
Commandlineused:/opt/iozone/bin/iozone-a-s4G-q256-y4
OutputisinKbytes/sec
TimeResolution=0.000001seconds.
Processorcachesizesetto1024Kbytes.
Processorcachelinesizesetto32bytes.
Filestridesizesetto17*recordsize.
测试了局除标明IntelSSD的读写速率快得使人咋舌以外,还能够申明Ext4的各方面功能都凌驾了上一代Ext3,乃至在年夜多半情形下,比没有日记功效的Ext2还要快出很多:


reclenwriterewritereadrereadrandomreadrandomwritebkwdreadrecordrewritestridereadfwritefrewritefreadfrereadExt2

real28m12.718s
user0m10.725s
sys5m8.265s4218,680216,596630,248245,80288,700138,065106,1121,882,62373,538214,175218,364566,570247,3818215,308218,690556,064246,260154,680150,052188,3972,462,367130,896217,157216,647583,808248,39716216,457216,843575,046245,701258,660158,750306,8422,654,320220,939216,061218,140598,174246,58132217,925214,289537,976243,081394,013167,002464,2402,397,831340,775217,434219,353583,463246,34164215,460219,256527,919244,362503,227162,917609,5462,546,079456,243216,875217,692571,707244,264128219,081216,173540,831242,526609,750161,442721,7012,656,729551,122217,780217,427579,271242,291256216,091217,631565,111245,157654,274173,955870,5472,574,261634,835216,638219,693563,735247,101Ext3

real27m42.449s
user0m11.529s
sys7m17.049s4218,242213,039482,132243,98688,007156,926105,5571,540,73975,010216,028216,432522,704243,3858218,390217,915544,892244,979152,424190,454181,4861,945,603130,737218,364216,431530,853243,22216218,083217,683561,038244,506255,244200,032300,2122,096,495221,329216,930216,661514,177244,06932216,258217,013569,246243,811389,745198,275446,4621,934,853338,785216,809219,296530,634243,44664218,850217,711577,529243,725497,689201,693589,5352,036,412450,449219,387214,900514,353244,809128220,234215,687530,519241,615608,244199,619714,2951,992,168553,022217,828218,454513,596241,510256216,011220,188592,578242,548642,341199,408834,2402,092,959624,043217,682218,165529,358242,878Ext4

real27m3.485s
user0m10.847s
sys6m9.578s4221,823216,992532,488273,66885,210183,195103,0361,862,81774,781225,841220,620523,799272,8488226,028218,580561,960272,036154,972216,505178,4822,135,372132,506227,423215,766641,021271,32816222,241217,746547,548270,895260,899223,895295,2882,095,966223,135226,055216,210621,287273,47532220,121213,025240,426247,628345,210175,977451,6312,145,351342,236225,796213,427598,331269,75964223,983214,437308,696551,577754,941225,897523,1302,218,016448,086227,030214,706582,795272,323128222,576217,816624,636271,293644,500224,997720,4682,308,315582,943225,971217,373552,335274,237256221,202222,238541,685270,898671,748228,085845,4942,215,381643,715225,411219,166580,066273,342













Kbytes/sec

注:
1.关于IOzone测试办法,参考BenMartin的文章:IOzoneforfilesystemperformancebenchmarking
2.关于Ext4的相干内容,参考KernelNewbies专页:http://kernelnewbies.org/Ext4
本文出自:http://hutuworm.blogspot.com/2009/02/ext2-vs-ext3-vs-ext4.html

按照它们在系统中的作用分成几个部分介绍给大家,通过这些基础命令的学习我们可以进一步理解Linux系统:

因胸联盟 发表于 2015-1-21 11:50:25

随着Linux应用的扩展,出现了不少Linux社区。有一些非常优秀的社区往往是Linux高手的舞台,如果在探讨高级技巧的论坛张贴非常初级的问题经常会没有结果。

分手快乐 发表于 2015-1-30 17:34:51

下面看看一个让人无法回答的问题:“救命各位高手,向你们请教一些问题:如何在Linux下配制HTTP、FTP、Samba、DNS、DHCP、Sendmail服务器,谢谢”这样的问题。

小魔女 发表于 2015-1-31 14:32:17

未来的学习之路将是以指数增加的方式增长的。从网管员来说,命令行实际上就是规则,它总是有效的,同时也是灵活的。

小妖女 发表于 2015-2-6 19:42:58

发问的时候一定要注意到某些礼节。因为Linux社区是一个松散的组织、也不承担回复每个帖子的义务。它不是技术支持。

山那边是海 发表于 2015-2-7 04:51:28

了解Linux的网络安全,系统的安全,用户的安全等。安全对于每位用户,管理员来说是非常重要的。

精灵巫婆 发表于 2015-2-10 05:44:38

下面看看一个让人无法回答的问题:“救命各位高手,向你们请教一些问题:如何在Linux下配制HTTP、FTP、Samba、DNS、DHCP、Sendmail服务器,谢谢”这样的问题。

老尸 发表于 2015-2-11 02:39:24

尽量不要提问纯属是扯蛋.学习Linux特别是自己一个人初学入手的时候没人教很困难.当然如果可以的话平时多去买些Linux书...对学习Linux很有帮助.

爱飞 发表于 2015-2-13 18:47:52

熟悉并掌握安装Linux,安装是学习的前提。目前较常见的安装方法有二种:

透明 发表于 2015-3-4 00:28:54

如果上面的措施没有解决问题,此时你就需要Linux社区的帮助了。 Linux的使用者一般都是专业人士,他们有着很好的电脑背景且愿意协助他人。

深爱那片海 发表于 2015-3-11 14:10:46

随着IT从业人员越来越多,理论上会有更多的人使用Linux,可以肯定,Linux在以后这多时间不会消失。

谁可相欹 发表于 2015-3-18 17:51:28

写学习日记,这是学习历程的见证,同时我坚持认为是增强学习信念的法宝。

柔情似水 发表于 2015-3-22 17:43:39

随着IT从业人员越来越多,理论上会有更多的人使用Linux,可以肯定,Linux在以后这多时间不会消失。

不帅 发表于 2015-3-23 17:34:25

随着实验课程的结束,理论课也该结束了,说实话教OS的这两位老师是我们遇到过的不错的老师(这话放这可能不太恰当).

蒙在股里 发表于 2015-3-23 18:20:57

我感觉linux的学习,学习编程~!~!就去学习C语言编程!!

活着的死人 发表于 2015-4-10 16:39:55

为了更好的学习这门课程,我不仅课上认真听讲,课下也努力学习,为此还在自己的电脑上安装了Ubuntu系统。

若天明 发表于 2015-4-12 16:49:04

如果上面的措施没有解决问题,此时你就需要Linux社区的帮助了。 Linux的使用者一般都是专业人士,他们有着很好的电脑背景且愿意协助他人。

乐观 发表于 2015-4-25 13:56:56

如果你有庞大而复杂的测试条件,尽量把它剪裁得越小越好。可能你会遇到这种情况,对于一个问题会出现不同内容回答,这时你需要通过实践来验证。

admin 发表于 2015-5-1 03:11:28

下面笔者在论坛看到的一个好问题: “安装红旗4.0后,系统紫光输入法自带的双拼方案和我的习惯不一样,如何自定义双拼方案解决?谢谢?”这个问题很简练。

变相怪杰 发表于 2015-5-3 15:37:01

熟悉并掌握安装Linux,安装是学习的前提。目前较常见的安装方法有二种:
页: [1] 2
查看完整版本: Linux制作之Ext2 v.s. Ext3 v.s. Ext4 功能比拼仓酷云