什么是日记?


8

我用困难的方法关闭了计算机,下次启动时,开机时出现了几秒钟的信息recovering journal。后来有四个创业公司,但消息并不存在-只是第一次。看起来没有任何后果或副作用。由于这个问题,我知道了为什么会发生这种情况,但是在互联网上没有任何地方说这本日记是什么。它没有问题,我只是对它感兴趣。

Answers:


5

许多现代文件系统都使用日记本,包括NTFS,Ext3 / 4,XFS,HFS +等。该日记有两点帮助,避免了文件系统损坏,并在断电或系统崩溃等故障后加快了恢复速度。文件系统有两个主要组件,即数据和元数据。数据是文件,图像,视频,文档的内容,最终才是赋予文件系统价值的要素。元数据描述文件系统的结构,包括如何命名文件,如何在目录中存储文件,访问权限,文件修改时间以及正在使用或随文件增长或自由分配给其他文件的磁盘记录区域。被创建。如果元数据由于系统崩溃而损坏,则可能导致进一步的数据丢失/损坏。例如,可能会选择将磁盘的一部分分配给文件,但是如果在崩溃前未正确记录,则可能会将其添加到文件的数据块列表中,但仍在可用数据块列表中并分配给第二个文件稍后的。现在,有两个文件共享相同的数据块/内容。

日志是磁盘上保留的位置,用于记录对文件系统的更改。要更改的确切详细信息,首先将其写入磁盘上单个位置的日志,然后在更新日志后,将更改应用于磁盘上的适当位置,这可能需要多次写入。其中一项更新完成,日志条目被标记为完成。崩溃后,系统仅需要检查日志中是否有不完整的条目,并完成它们以修复文件系统。这样可以加快恢复速度,并确保完全或根本不进行更改。如果将某个块分配给一个正在增长的文件,它将被添加到文件的阻止列表中,并标记为已使用。

同样,在支持日记功能的文件系统上,大多数情况下,保留结构的只是元数据日记功能,而不是数据本身。完整的数据日志记录通常非常昂贵且缓慢,但没有元数据那么重要。如果需要,也可以启用数据。

另外,要完成此操作,有些文件系统当前不提供日志功能,包括FAT32,exFAT,Ext2和UDF。如果更新期间发生崩溃,则需要对文件系统进行全面扫描以跟踪任何错误或损坏。


8

有人知道什么日记吗?

现代文件系统的一部分是称为“新闻记录”的功能。我们使用“ ext4”作为文件系统。(ext3,ext2是较旧的版本。NTFS是Microsoft等效的版本。)

日志文件系统是一种文件系统,它通过在称为“日志”的数据结构(通常是循环日志)中记录这种更改的意图来跟踪尚未提交给文件系统主要部分的更改。在系统崩溃或电源故障的情况下,此类文件系统可以更快地恢复联机状态,而损坏的可能性较小。

资料来源:Wikipedia-日记文件系统,引用:IBM-Linux 日记文件系统剖析

基本上,该消息表示系统对文件系统的这一部分进行了完整性检查。它是由系统强制执行的,因此通常无需担心。当您切断电源时,日志可能会损坏,并且除非您的硬盘确实被破坏,否则在此检查过程中往往会对其进行维修。


1
说日志是用来保护文件系统的完整性,但不一定是文件(它们的内容)的完整性,这是正确的说法吗?
拉尔夫

2
@Ralf:这完全取决于什么是轴颈定位。例如,JFFS2会在每次写入时记录日志,因此,它可以保护所有数据的完整性。Apple的HFS +仅记录文件系统元数据,因此它仅保护文件系统元数据,而不保护文件数据。Ext4是可配置的:您可以记录所有内容,不记录任何内容或仅记录文件系统元数据。默认设置为日记,但仅文件系统元数据。在这种情况下,它仅保护文件系统元数据,而不保护文件数据。做出此选择的主要原因是日记意味着两次写作。
约尔格W¯¯米塔格

2
另一极端是所谓的日志结构文件系统,它具有唯一的日志。换句话说,它们只附加到日记中,但是没有常规的数据区域。这样,他们避免了日记文件系统的“双重写入”,但是现在他们遇到了文件系统永不收缩的问题,因为即使删除也只是追加到日记中。因此,他们需要一种“垃圾收集器”来清除多余的日记帐分录并再次压缩日记帐。(其中一些FS称之为“真空”。)
Mittag

1
@JörgWMittag谢谢。我认为了解这一点很重要,日记FS通常并不意味着您不能丢失数据。
拉尔夫

1
@Ralf:是的,日记记录不能保护您免受数据丢失的侵害,而只能防止数据损坏。它仅确保操作完全成功或根本不发生,也不保证操作始终成功。其次,日记只保护被日记的内容,对于大多数常见的实现,仅FS元数据。
约尔格W¯¯米塔格
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.