我尝试了不同的命令来查看分区的大小和已用/剩余空间,似乎它们的结果总是不同。
这是我在命令中使用/留下的空间df -h
:
Size Used Avail Use% Mounted on
395G 355G 21G 95% /home
请注意,已使用和可用总计只有 376G,但大小为 395G
答案1
默认情况下,Linux 文件系统保留 5% 的空间供 root(用户)使用和维护。如果设备 100% 已满,您甚至无法创建允许用户登录所需的临时文件...比如也许...root!
Total space: 395.00G (from your example)
minus 5%: 19.75G (reserved space)
============ =======
User space: 375.25G (Available to users)
Used space: 355.00G (from your example)
Avail space: 21.00G
============ =======
Total: 376.00G (equals 'User Space' from above)
由于使用-h
(人体尺寸)选项,所有内容都被四舍五入,因此这些值本质上是相等的。
对于保存正在运行的 Linux 系统的文件系统,您需要一些保留空间,当磁盘很多时,5% 曾经是一个很好的值(很多!)比今天小。今天 1% 会更好,但仍然有些过大。
如果您愿意,用作存储的文件系统可以使用 0% 保留空间进行格式化/设置,这没有什么坏处。这是需要的“运行系统”文件系统一些空间。
在格式化过程中,您可以使用以下选项指定保留多少空间(以百分比表示)-m
:
mkfs.ext4 -m 1 /dev/sdz3
(来自手册页)
-m reserved-blocks-percentage
Specify the percentage of the filesystem blocks reserved for the super-user. This avoids fragmentation, and allows root-owned daemons, such as sys‐
logd(8), to continue to function correctly after non-privileged processes are prevented from writing to the filesystem. The default percentage is 5%.
您还可以tune2fs
在格式化文件系统后调整其保留百分比:(还 -m
选项!)
tune2fs -m 1 /dev/sdz2
再次强调,请不要在包含操作系统的文件系统上设置为,您可能永远不会遇到任何问题,但如果您的驱动器已满,它会咬住您,因为您甚至无法登录来修复问题-m
。0
(您需要一张实时/救援 CD/U 盘来修复它!)
答案2
376 / 395 =~ 0.95。因此您丢失了大约 5% 的磁盘空间。这听起来像是系统为系统日志等保留的磁盘空间的默认值。
你可以通过运行找出
tunefs -l
这将显示您的保留块百分比是多少。
然后您可以使用重新调整文件系统
tunefs -m
tunefs
有关更多详细信息,请参阅手册页。