Linux ext4“范围”属性

tyl*_*erl 10 linux filesystems ext4 attributes

我注意到e安装在 ext4 文件系统上的 Linux 机器上的几个文件/目录的属性。

[kelly@p2820887.pubip.serverbeach.com ~]$ lsattr -d /bin
-------------e- /bin
Run Code Online (Sandbox Code Playgroud)

根据chattr(1)

'e' 属性表示该文件正在使用范围来映射磁盘上的块。不能使用 chattr(1) 删除它。

这有什么不同,更重要的是,这个细节在什么方面很重要——特别是为什么这个细节足够重要以作为文件属性报告?在什么情况下我应该根据这个文件“正在使用范围来映射磁盘上的块”的知识来改变我的行为?想必这是我需要知道的,不然也不会说的这么明显吧?

Wyz*_*ard 14

我认为范围标志主要作为属性公开,以便您可以使用设置chattr,这将导致 ext4 驱动程序使用范围而不是块列表重新分配文件。如果您已将现有的 ext3 文件系统转换为 ext4(通过使用tune2fs来启用新功能标志),您可能希望将现有文件转换为使用范围,这就是这样做的方法。

在 ext4 文件系统上新创建的文件总是使用范围(据我所知),所以如果你的文件系统是作为 ext4 创建的(而不是从 ext3 转换而来),那么一切都应该已经有了范围属性,所以你不需要担心它。

有关更多信息,请参阅此文章