如果我删除了 lost+found 会发生什么

Zor*_*che 39 linux filesystems

当你创建一些像 ext3 这样的 Linux 文件系统时,会创建一个“lost+found”目录。如果文件因某种系统崩溃而损坏,则根据文件将放置在那里。

如果删除此目录,系统会崩溃,会发生什么情况。如果文件夹被删除,我可以使用mkdir lost+found创建一个新目录,或者是否有只能在创建文件系统时设置的属性。

Dav*_*ney 36

如果丢失了,fsck 将重新创建 lost+found 目录。

在启动时,如果检测到文件系统没有被干净地卸载,大多数发行版都会运行 fsck。由于 fsck 创建 lost+found 目录(如果丢失),它将创建它并将找到的任何内容放入该目录中。


And*_*rew 16

如果您不能或不想运行fsck,您可以使用以下命令重新创建lost+found目录mklost+found

mklost+found 将磁盘块预先分配到lost+found 目录,这样当e2fsck(8) 正在运行以恢复文件系统时,它不需要在文件系统中分配块来存储大量未链接的文件。这确保 e2fsck 在恢复期间不必在文件系统中分配数据块。


car*_*ito 7

具有足够大的大小以包含大量未链接文件的预先存在的 lost+found 目录可以减轻 e2fsck 创建目录并将其增长到适当大小的负担。

它仍然会尝试这样做,但面对损坏的文件系统,它可能会更具风险。

用于其他平台上的其他文件系统的非常旧的 fsck 无法创建 /lost+found,也无法扩展它。这是/lost+found 的基本原理的历史。但目前的基本原理只是为了让 e2fsck 的工作更轻松。

  • 并不是说他们不能创建 lost+found ——而是在已经搞砸的文件系统上创建文件/目录是一个坏主意。取而代之的是,您只需预先构建一个目录,该目录已经足够大,可以存储您在尝试清理时在搞砸的文件系统中发现的任何咀嚼 inode 的目录条目。 (4认同)

Chr*_*ung 5

如果您没有lost+founde2fsck(我没有检查其他fsck实现的代码)将提供为您创建它。但是,如果您愿意,您也可以自己重新创建它;该目录没有什么特别之处(至少不是通过检查代码)。

  • @ChrisJester-Young - 您的回答不正确。`lost+found` 是一个特殊的目录。它具有预先分配的磁盘块,因此恢复工具不需要在恢复期间分配块。像 `mklost+found` 这样的工具之所以存在,是因为 `mkdir` 无法正确创建它。见 http://linux.die.net/man/8/mklost+found (6认同)
  • 如果需要,fsck 应该重新创建 lost+found,不是吗? (2认同)
  • 谢谢,我已经检查了 e2fsck 的代码,确实可以为您重新创建它。(虽然这并不能保证成功——这就是为什么预先创建的 lost+found 也很有用。)整洁! (2认同)