根保留块

根保留块

当我使用 Ubuntu netinst 时,这个问题出现在我的脑海中。问题是:保留5%是一种运行时吗?我的意思是,当执行 sudo apt install 之类的操作时 - 这 5% 此刻已被 root 使用?系统在运行时会使用这 5% 吗?我是否必须将其增加到 10-15%,例如?我有 300GB 硬盘。通常我只进行交换和 / 分区(不使用单独的 /home、/var 或其他分区)。

答案1

保留块意味着磁盘上保留了一些空间,只有超级用户可以使用。

因此,例如,如果我这样做,mke2fs -j /dev/vdb那么部分输出包括..

13107 blocks (5.00%) reserved for the super user

我们可以验证这一点

% dumpe2fs /dev/vdb | grep -i Reserved.block
dumpe2fs 1.42.9 (28-Dec-2013)
Reserved block count:     13107
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)

如果我们查看磁盘空间...

% df -k /mnt
Filesystem     1K-blocks  Used Available Use% Mounted on
/dev/vdb          999320  1320    945572   1% /mnt

现在我们可以改变那...

% tune2fs -m 1 /dev/vdb
tune2fs 1.42.9 (28-Dec-2013)
Setting reserved blocks percentage to 1% (2621 blocks)

% dumpe2fs /dev/vdb | grep -i Reserved.block
dumpe2fs 1.42.9 (28-Dec-2013)
Reserved block count:     2621
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)

现在,如果我们看看可用空间......

% df /mnt
Filesystem     1K-blocks  Used Available Use% Mounted on
/dev/vdb          999320  1320    987516   1% /mnt

请注意,可用块的数量已经增加。

这个“备用空间”很有用,特别是在保存日志的磁盘上,因为这意味着普通用户无法将磁盘填充到 100%,因此操作系统仍然有空间继续运行和日志记录...希望系统管理员在预留空间用完之前会注意到!

答案2

我的意思是,当执行 sudo apt install 之类的操作时 - 这 5% 此刻正被 root 使用?

是的。不,也许吧。但事实并非如此。

当您听到 root 保留这个术语时,您可能会认为有一个特定区域,只有 root 可以在其中存储文件。就像在停车场一样,您可能会找到专门为残疾人士指定的位置,或者旁边有充电站的电动汽车停车位。他们,或有孩子的父母的地方。并且不允许其他人在那里停车。

然而,根储备却不是这样的。没有指定的可用空间。不,这只是相同的常规可用空间。那么根储备在哪里呢?无处可去。没有具体的地方。

相反,任何进出的东西都必须经过入口/出口(文件系统)并被计数。所以文件系统知道有多少空闲空间。

然后,如果您不是 root 并且剩余的空间少于 root 保留空间,它将简单地拒绝您进入:抱歉,设备上剩余空间不足,请离开。 (是的,我知道仍然有可用空间。但我必须为 root 保留至少 X 个可用空间。)

另一方面,root 不会被拒绝进入,除非真的什么都没有了。

空闲块的位置并不重要。谁已经在使用哪些块也并不重要。对于已经在使用的块,您不能说哪个正在使用根保留,哪个没有。他们都是。他们都不是。责怪谁先离开并释放一些空间。

您可以删除常规用户文件或根文件,以释放足够的空间,以便常规用户可以再次写入。

相关内容