测验:磁盘与 inode
df 使用 20G,du -shx 报告 3.1G。造成 17GB 差异的最可能原因是什么?
- 这是因为 du 只计算一次硬链接。
- 尽管该名称已被删除,但该进程正在打开的文件正在持有块。
- 这是因为 df 计数包括保留块。
- 由于文件系统元数据开销
df -h 有空间,但 df -i 的 IUse% 是 100%。这是什么意思?
- 文件系统已损坏
- 磁盘正处于物理故障的边缘
- 挂载选项是只读的
- 块仍然存在,但无法创建更多文件。索引节点已耗尽
文件以 root 身份创建,但 ENOSPC 仅针对服务帐户出现。原因是什么?
- 服务帐户权限不足
- 配额已定
- SELinux 被阻止
- ext 文件系统中仅保留根保留块。
使用 truncate -s 0 /proc/1234/fd/7 返回空间。此操作有哪些风险?
- 打开文件的进程立即终止
- 如果不是 O_APPEND,则进程继续在旧偏移处写入,从而产生稀疏文件。
- 打开同一文件的其他进程也会被清除。
- 文件系统变为只读。
我创建了 500 个空文件,du 报告一个非零值。为什么?
- 这是因为du将文件数量转换为容量。
- 这是因为每个文件至少分配 1 个块。
- 这是因为文件系统日志变得更大。
- 这是因为目录项本身消耗块。
查找服务器I/O已经饱和的原因时应该注意什么?
- 最快的方法是使用查找/全面扫描一次性扫描所有内容。
- 始终使用 df 而不是 du
- 首先修复文件系统边界并使用 -xdev 缩小范围
- 诊断与负载无关,因此无需担心。