首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SD卡上的lazy_itable_init=1对ext4 fs的风险

SD卡上的lazy_itable_init=1对ext4 fs的风险
EN

Unix & Linux用户
提问于 2013-06-10 20:26:10
回答 1查看 4.6K关注 0票数 4

我的设置如下:

  • Linux内核2.6.28
  • e2fsprogs 1.42.7
  • 64 GB 10级SD卡

我试图加快将整个卡格式化为ext4文件系统所需的时间。我的研究向我指出了mkfs.ext4的mkfs.ext4选项。如果我正确理解,这些选项将大大提高格式化SD卡分区的速度,但是这是通过将inode的初始化推迟到文件系统首次挂载时实现的。然后,内核将在后台执行此初始化(仅限v2.6.27+)。

手册页对此选项有如下一句:

这个标志明显加快了文件系统的初始化速度,但它要求内核在文件系统首次挂载时在后台完成对文件系统的初始化。

我的问题是,如果内核没有完成后台文件系统的初始化,会发生什么?

我已经通过使用lazy_itable_init=1选项格式化,挂载文件系统,然后在不久之后移除SD卡来测试这一点。当我再次插入卡时,我可以在没有问题的情况下挂载分区,并编写了几个包含零的100 MB文件。这些都是读回来的,是正确的。

这仅仅是一种侥幸,我能保证在这样一系列的事件之后我会看到这种行为吗?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2013-06-10 21:27:47

inode表被初始化为零的原因是为了确保以前碰巧存在的任何垃圾不会被e2fsck误解为有效的inode。通常情况下,这不会产生任何影响,但是如果e2fsck检测到错误,它可能会尝试通过启发式地识别inode来恢复,无论位图是否表示它们正在使用,因此它可能尝试恢复无效的inode,然后您必须从/lost+found中删除它们。

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/78934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档