我遇到了一个奇怪的问题,到目前为止我找不到任何帮助。我在 Ubuntu 14.10 Root Server 上运行一个网站。该网站使用 Smarty (www.smarty.net) 进行缓存。该网站非常大,因此三天后缓存目录就会超过 50GB,这很正常。该问题可以描述如下:
- 正常运行三天后,系统因缓存系统无法再写入任何缓存文件而关闭
磁盘使用情况显示没有任何完整分区:
df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/vg0-root ext4 99G 2.7G 91G 3% / none tmpfs 4.0K 0 4.0K 0% /sys/fs/cgroup udev devtmpfs 32G 4.0K 32G 1% /dev tmpfs tmpfs 6.3G 860K 6.3G 1% /run none tmpfs 5.0M 0 5.0M 0% /run/lock none tmpfs 32G 0 32G 0% /run/shm none tmpfs 100M 0 100M 0% /run/user /dev/mapper/vg0-tmp reiserfs 50G 33M 50G 1% /tmp /dev/md0 ext3 992M 40M 901M 5% /boot /dev/mapper/vg0-home ext4 50G 21G 26G 46% /home /dev/mapper/vg0-var ext4 220G 85G 124G 41% /var
网站存储在 /var 中,但只占用了 41%
- 如果我删除 /var 中的任何文件(我没有删除缓存文件,因此文件权限不是问题),系统就会重新启动并运行
一定达到了配额,因为删除任意文件就可以解决问题。我的问题是,是否有人知道 Ubuntu 中的默认目录配额,以及如何确定是否达到了配额。当然,最终的解决方案是删除该配额并允许使用该分区中剩余的 60% 空间。
任何帮助都将不胜感激。谢谢 Martin
答案1
您应该使用 Michael 上面给出的命令 df -i 检查 inode。您的服务器可能由于缓存而消耗了大量 inode 数量。