“设备上没有剩余空间”和“超出磁盘配额”错误之间有什么区别?

“设备上没有剩余空间”和“超出磁盘配额”错误之间有什么区别?

我假设我可以用来/dev/full模拟我的程序的完整磁盘情况。

但是,我意识到还可能发生不同的错误:

Disk quota exceeded

两者有什么区别?我应该以编程方式区别对待它们吗?

欢迎任何建议。

例子: https://repl.it/repls/FaintSpecializedAdministration

答案1

这些错误是不言自明的。

“设备上没有剩余空间”的确切含义是:尝试写入设备时由于没有打开的扇区或块可供写入而受阻

“超出磁盘配额”也正是它所说的意思:如果系统管理员对用户有权占用的空间量建立了限制,并且尝试超过该限制,则会因此错误而被取消。

答案2

理解这个概念需要一些背景知识quota

quota是 Linux 内核的一项功能,用于强制限制可用磁盘空间。quota不是默认设置,必须由管理员设置,它是一个逻辑概念。当管理员配置quota设置时,他们可以指定软限制和硬限制、设置空间使用警告,甚至禁止对磁盘进行更多写入。quota旨在防止通过基于权限/警告的系统完全消耗磁盘上的所有块。

查看手册页了解更多详细信息:https://linux.die.net/man/1/quota

相关内容