ext2/3/4 保留块百分比用途

Kar*_*son 11 filesystems ext4 ext2 ext3

我知道这个功能可以追溯到 20 年前,但我仍然想知道

ext2/3/4 文件系统中保留块的用途是什么?

And*_*més 17

的手册页tune2fs为您提供了解释:

保留一定数量的文件系统块供特权进程使用是为了避免文件系统碎片化,并允许系统守护进程(例如 syslogd(8))在非特权进程被阻止写入文件系统后继续正常运行。

它还充当故障保护装置;如果由于某种原因普通用户和他们的程序将磁盘填满了 100%,您甚至可能无法在删除它们之前登录和/或同步文件。通过将一些块保留到root,系统可确保您始终可以纠正这种情况。

实际上,5% 是旧的默认值,如果您的硬盘驱动器足够大,可能会太多。您可以使用前面提到的tune2fs工具更改该值,但请务必先阅读其手册页!


Cel*_*ada 8

保留少量块仅供 root 使用的目的是让 root 有机会登录并给他们一点喘息的空间,以便在磁盘完全满的情况下腾出空间。没有它,root 可能无法登录,因为登录过程在写入文件(如utmpand wtmp、文件 in/dev/pts等)时出现意外错误时会失败。人们可能希望登录过程是健壮的,并且即使在磁盘已满的情况下也能正常工作,但登录过程中的磁盘已满错误通常是测试不太好的代码路径。

当然,如今,即使是一小部分块也代表了比为此目的所需的更多空间!