『壹』 关于linux下EXT3文件系统的日志是必须的吗
一、简介 日志文件系统就是在传统文件系统的基础上,加入文件系统更改的日志记录,它的设计思想是:跟踪记录文件系统的变化,并将变化内容记录入日志。日志文件系统在磁盘分区中保存有日志记录,写操作首先是对记录文件进行操作,若整个写操作由于某种原因(如系统掉电)而中断,系统重启时,会根据日志记录来恢复中断前的写操作。在日志文件系统中,所有的文件系统的变化都被记录到日志,每隔一定时间,文件系统会将更新后的元数据及文件内容写入磁盘。在对元数据做任何改变以前,文件系统驱动程序会向日志中写入一个条目,这个条目描述了它将要做些什么,然后它修改元数据。二、Ext3 Ext3文件系统是直接从Ext2文件系统发展而来,目前Ext3文件系统已经非常稳定可靠,它完全兼容Ext2文件系统,用户可以平滑地过渡到一个日志功能健全的文件系统。Ext3日志文件系统的思想就是对文件系统进行的任何高级修改都分两步进行。首先,把待写块的一个副本存放在日志中;其次,当发往日志的I/O 数据传送完成时(即数据提交到日志),块就写入文件系统。当发往文件系统的I/O 数据传送终止时(即数据提交给文件系统),日志中的块副本就被丢弃。2.1 Ext3日志模式 Ext3既可以只对元数据做日志,也可以同时对文件数据块做日志。具体来说,Ext3提供以下三种日志模式: 日志(Journal ) 文件系统所有数据和元数据的改变都记入日志。这种模式减少了丢失每个文件所作修改的机会,但是它需要很多额外的磁盘访问。日志机制面临“写两遍”问题。例如,当一个新文件被创建时,它的所有数据块都必须复制一份作为日志记录。这是最安全和最慢的Ext3日志模式。写回(Writeback ) 只有对文件系统元数据的改变才记入日志,是最快的模式。可以极大减少“写两遍”带来的开销,从而提高写速度,但只能保证元数据一致性。例如,数据尚未写入文件系统而元数据已经写入设备,系统宕机后这部分元数据可以从日志中恢复但是数据已经丢失无法恢复,这就可能造成元数据引用到垃圾数据,因此无法保证文件系统数据一致性。预定(Ordered ) 只有对文件系统元数据的改变才记入日志,但与写回模式不同的是,预定模式严格控制写顺序,即在将元数据写入日志之前必须保证数据已经写入文件系统。这样对于追加写而言,即便写数据中断时元数据尚未写入,由于这部分数据还没有被元数据引用,因此重启后看不到任何垃圾数据。若在写数据过程中断,则直接用元数据日志记录恢复即可。然而,如果是覆盖写,宕机后被覆盖的部分无法恢复,不能保证版本一致性。故预定模式只能保证文件系统数据一致性。这是缺省的Ext3 日志模式。2.2 日志块设备(JBD) Ext3文件系统本身不处理日志,而是利用JBD(Journaling Block Device,块设备日志)。Ext3文件系统调用JDB例程以确保在系统万一出现故障时它的后续操作不会损坏磁盘数据结构。Ext3与JDB之间的交互本质上基于三个基本单元:日志记录,原子操作和事务。 Ext3将正在执行的更新操作通知给JBD,JBD接管更新操作涉及的缓冲区(buffer)。这些缓冲区将JBD接管的缓冲区称为日志缓冲区(journal buffer),由JBD在缓冲区头结构(buffer head)之上增加一个日志头结构(journal head)进行管理。所有的日志流程均由JBD控制。 JBD的数据流包含两个部分:写日志和写文件系统。ps: 文件系统一致性的层次: 1.元数据一致 2.数据一致:不仅要求元数据一致,还要求元数据中引用的数据块必须属于该文件。 3.版本一致:要求元数据中引用的数据块不但属于该文件,还要跟元数据中所标明的版本保持一致。
『贰』 什么是文件系统什么是日志文件系统简述文件系统中数据与元数据的关系
1、元数据定义:数据(Metadata)称介数据、继数据描述数据数据(data about data)主要描述数据属性(property)信息用支持指示存储位置、历史数据、资源查找、文件记录等功能元数据算种电式目录达编制目录目必须描述并收藏数据内容或特色进达协助数据检索目元数据数据数据任何文件系统数据数据元数据数据指普通文件实际数据元数据指用描述文件特征系统数据诸访问权限、文件拥者及文件数据块布信息(inode…)等等集群文件系统布信息包括文件磁盘位置及磁盘集群位置用户需要操作文件必须首先元数据才能定位文件位置并且文件内容或相关属性文件系统元数据(metadata)更改都保存份单独志发系统崩溃根据志确恢复数据除外志使系统重新启必进行文件系统检查缩短恢复间2、元数据管理式:元数据管理两种式:集式管理布式管理集式管理:指系统节点专门司职元数据管理所元数据都存储该节点存储设备所客户端文件请求前都要先该元数据管理器请求元数据布式管理:指元数据存放系统任意节点并且能态迁移元数据管理职责布各同节点数集群文件系统都采用集式元数据管理集式管理实现简单致性维护容易定操作频繁度内提供较满意性能缺点单失效点问题若该服务器失效整系统工作且元数据操作于频繁集元数据管理整系统性能瓶颈布式元数据管理处解决集式管理单失效点问题且性能随着操作频繁现瓶颈其缺点实现复杂致性维护复杂性能定影响文件数据两类:类元数据既属性数据;种数据本身用命令stat查看文件元数据stat:功能说明:显示inode内容语:stat [文件或目录]补充说明:stat文字格式显示inode内容ls 命令及其许参数提供些非用文件信息另太所熟知命令 stat 提供些更用信息例:查看执行文件oracle# stat oracleFile: ‘oracle’Size: 93300148 Blocks:182424 IO Block:4096 Regular FileDevice: 343h/835d Inode: 12009652 Links: 1Access: (6751/-rwsr-s–x) Uid:( 500/ oracle) Gid:( 500/ dba)Access: 2006-08-04 04:30:52.000000000 -0400Modify: 2005-11-02 11:49:47.000000000 -0500Change: 2005-11-02 11:55:24.000000000 -0500使用该命令获信息:除通文件(使用 ls -l 命令获)外您获该文件占用块数通 Linux 块 512 字节 93,300,148 字节文件占用 (93300148/512=) 182226.85 块由于块都完整占用该文件使用些整数数块需猜测获确切块数stat 命令修改符 -f 显示关文件系统(非文件)信息:# stat -f oracleFile: "oracle"ID: 0 Namelen:255 Type:ext2/ext3Blocks: Total: 24033242 Free: 15419301 Available: 14198462 Size: 4096Inodes: Total: 12222464 Free: 12093976另选项 -t 显示完全相同信息行显示:# stat -t oracleoracle 93300148 182424 8de9 500 500 343 12009652 1 0 0 11546820611130950187 1130950524 4096修改文件间戳信息命令:touchtouch命令般用修改文件间或者新建存文件.语: touch [-acm][-r ref_file(参照文件)|-t time(间值)] file(文件名)例:touch file1.txt 更新file1.txt存取修改间touch -c file1.txt file1.txt存创建文件touch -r ref_file file1.txt 更新file1.txt间戳ref+file相同touch -t 0911252234.40 file1.txt 设定文件间0911月2522点3440秒参数说明:-a 修改文件 file 存取间.-c 创建文件 file.-m 修改文件 file 修改间-r ref_file 参照文件 ref_file 相应间戳记数值作指定文件 file 间戳记新值.-t time 使用指定间值 time 作指定文件 file 相应间戳记新值.处 time 规定形式十进制数∶ [[CC]YY]MMDDhhmm[.SS] CC数前两位即世纪数;YY数两位即某世纪数.给CC值则touch 数CCYY限定1969–2068内.MM月数DD数CCYY限定1969–2068内.MM月数DD数hh 数(几点)mm钟数SS秒数.处秒设定范围0–61处理闰秒.些数字组间环境变量TZ指定区 间.由于系统限制早于19701月1间错误.使用touch创建文件:# touch myfile01 myfile02 myfile03#touch myfile0{1,2,3} 创建myfile01 myfile02 myfile03 三文件
『叁』 日志式文件系统的介绍
日志文件系统(journaling file system)是一个具有故障恢复能力的文件系统,在这个文件系统中,因为对目录以及位图的更新信息总是在原始的磁盘日志被更新之前写到磁盘上的一个连续的日志上,所以它保证了数据的完整性。当发生系统错误时,一个全日志文件系统将会保证磁盘上的数据恢复到发生系统崩溃前的状态。同时,它还将覆盖未保存的数据,并将其存在如果计算机没有崩溃的话这些数据可能已经遗失的位置,这是对关键业务应用来说的一个很重要的特性。并不是所有的操作系统都提供了同样的日志技术。Windows NT提供了一个完整系统的不太健壮的版本。如果你的Windows NT系统崩溃了,你可能不会丢失整个磁盘卷,但你可能会丢失系统崩溃前没写到磁盘的所有数据。出于同样的原因,缺省的Linux系统,ext2fs,根本没有登记日志。这就意味着,一旦系统崩溃——虽然在Linux系统中不常见——就会毁坏整个磁盘卷。
『肆』 mac os 日志文件系统单个文件大小最大多少
完全可以理解为不限制。理论上最大的磁盘容量和单个文件大小都是8EB。1EB=1百万TB。全球数据总容量都没这么多。
『伍』 Ext3的Ext3日志文件系统特点
1、高可用性系统使用了ext3文件系统后,即使在非正常关机后,系统也不需要检查文件系统。宕机发生后,恢复ext3文件系统的时间只要数十秒钟。2、数据的完整性ext3文件系统能够极大地提高文件系统的完整性,避免了意外宕机对文件系统的破坏。在保证数据完整性方面,ext3文件系统有2种模式可供选择。其中之一就是“同时保持文件系统及数据的一致性”模式。采用这种方式,你永远不再会看到由于非正常关机而存储在磁盘上的垃圾文件。3、文件系统的速度尽管使用ext3文件系统时,有时在存储数据时可能要多次写数据,但是,从总体上看来,ext3比ext2的性能还要好一些。这是因为ext3的日志功能对磁盘的驱动器读写头进行了优化。所以,文件系统的读写性能较之Ext2文件系统并来说,性能并没有降低。4、数据转换由ext2文件系统转换成ext3文件系统非常容易,只要简单地键入两条命令即可完成整个转换过程,用户不用花时间备份、恢复、格式化分区等。用一个ext3文件系统提供的小工具tune2fs,它可以将ext2文件系统轻松转换为ext3日志文件系统。另外,ext3文件系统可以不经任何更改,而直接加载成为ext2文件系统。5、多种日志模式Ext3有多种日志模式,一种工作模式是对所有的文件数据及metadata(定义文件系统中数据的数据,即数据的数据)进行日志记录(data=journal模式);另一种工作模式则是只对metadata记录日志,而不对数据进行日志记录,也即所谓data=ordered或者data=writeback模式。系统管理人员可以根据系统的实际工作要求,在系统的工作速度与文件数据的一致性之间作出选择。
『陆』 请问ext4为什么叫日志式文件系统有什么特性谢谢!
如果在文件系抄统尚未袭shutdown前就关机如(停电)时,下次重开机后会造成文件系统的资料不一致,故这时必须做文件系统的重整工作,将不一致与错误的地方修复。然而,此一重整的工作是相当耗时的,特别是容量大的文件系统,而且也不能百分之百保证所有的资料都不会流失。为了克服此问题,使用所谓“日志式文件系统 (Journal File System)” 。此类文件系统最大的特色是,它会将整个磁盘的写入动作完整记录在磁盘的某个区域上,以便有需要时可以回溯追踪。由于资料的写入动作包含许多的细节,像是改变文件标头资料、搜寻磁盘可写入空间、一个个写入资料区段等等,每一个细节进行到一半若被中断,就会造成文件系统的不一致,因而需要重整。然而,在日志式文件系统中,由于详细纪录了每个细节,故当在某个过程中被中断时,系统可以根据这些记录直接回溯并重整被中断的部分,而不必花时间去检查其他的部分,故重整的工作速度相当快,几乎不需要花时间。
『柒』 比较日志文件系统和非日志文件系统的区别,并举例
日志文件系统比传统的文件系统安全,因为它用独立的日志文件跟踪磁盘内容的变化,突然断电后,仍能恢复文件,但是速度相对慢
『捌』 常见的文件系统有哪些
常见的文件系统有FAT、NTFS、ExtFAT、ext2、ext3、reiserFS、VFAT、APFS。
1、FAT文件系统。
FAT文件系统诞生于年,它最初是为软盘设计的文件系统,但是后来随着微软推出dos和win 9x系统,FAT文件系统经过适配被逐渐用到了硬盘上,并且在那时的20年中,一直是主流的文件系统。
2、NTFS文件系统。
它是一种比FAT32功能更加强大的文件系统,从windows 2000之后的windows系统的默认文件系统都是NTFS,而且这些windows系统只能够安装在NTFS格式的磁盘上。NTFS系统是一个日志性的文件系统,系统中对文件的操作都可以被记录下来,当系统崩溃之后,利用日志功能可以修复数据。
3、ExtFAT文件系统。
ExFAT也是微软开发的文件系统,它是专门为闪存盘设计的文件系统,单个文件突破了4G的限制,而且分区的最大容量可达64ZB,建议512TB。 ExFAT在windows,Linux以及Mac系统上,都可以读写,作为U盘或者是移动硬盘的格式还是比较合适的。
4、ext2文件系统。
ext2是为解决ext文件系统的缺陷而设计的可扩展的、高性能的文件系统,又被称为二级扩展文件系统。它是Linux文件系统中使用最多的类型,并且在速度和CPU利用率上较为突出。ext2存取文件的性能极好,并可以支持256字节的长文件名,是GNU/Linux系统中标准的文件系统。
5、ext3文件系统。
ext3是ext2文件系统的日志版本,它在ext2文件系统中增加了日志的功能。ext3提供了3种日志模式:日志(journal)、顺序(ordered)和回写(writeback)。与ext2相比,ext3提供了更好的安全性以及向上向下的兼容性能。
6、reiserFS文件系统。
reiserFS是Linux环境下最稳定的日志文件系统之一,使用快速的平衡二叉树(binary tree)算法来查找磁盘上的自由空间和已有的文件,其搜索速度高于ext2,reiserFS能够像其他大多数文件系统一样,可动态的分配索引节,而无须在文件系统中创建固定的索引节。
7、VFAT文件系统。
VFAT主要用于处理长文件的一种文件名系统,它运行在保护模式下并使用VCACHE进行缓存,并具有和Windows系列文件系统和Linux文件系统兼容的特性。因此VFAT可以作为Windows和Linux交换文件的分区。
8、APFS文件系统。
APFS是苹果公司发布的新的文件格式,替代目前所使用的HFS+格式。这一全新文件系统专门针对闪存/SSD进行优化,提供了更强大的加密、写入时复制元数据、空间分享、文件和目录克隆、快照、目录大小快速调整、原子级安全存储基元,以及改进的文件系统底层技术。
未经允许不得转载:山九号 » 日志文件系统|关于linux下EXT3文件系统的日志是必须的吗