/var 和 /home 文件夹在 cPanel (Linux) 上堵塞

/var 和 /home 文件夹在 cPanel (Linux) 上堵塞

最近,我的服务器上的 /var 和 /home 文件夹一直堵塞,我收到一封“严重错误”电子邮件,说 /home 文件夹已满 100%。我设法使用 LVExtend 命令修复了它,但我只是想知道如何找出是什么堵塞了目录?有某种日志吗?

我有一个具有 root 访问权限的专用服务器,因此我拥有完全控制权。我该怎么做才能防止这种情况再次发生,因为这种情况已经发生过两次了?

谢谢,

詹姆士

答案1

磁盘满了是因为文件被写入其中。要查找分区中哪些内容占用了空间,du可以使用“磁盘使用情况”工具。我喜欢使用:

du -hx --max-depth=1 /home

因为它将自身限制在感兴趣的分区 ( -x) 内,并且不会提供过多的冗长信息。如果您只想要一个占用空间的排序列表,则可以|sort -h在该命令的末尾添加。

获得这些信息后,您可以深入研究那些看起来过大的目录,看看使用情况发生在哪里(/home/foo/home/foo/suspicious等等)。什么算作“看起来过大”是您作为管理员需要根据服务器的预期使用情况做出的判断。

找到谁/什么负责创建您认为过多的文件可能有点棘手。使用ls -l将显示文件的所有权,这是第一条信息。如果是普通用户,那么问题可能是 cron 作业、用户正在运行的 webapp 或手动调用的本地命令。这是您必须自己发现的东西,因为它是您的盒子。如果文件由 root 或其他系统用户拥有,那么它是一个系统进程,您可以找到罪魁祸首(您应该知道系统上运行的是什么以及它的作用,所以这应该相当容易)。

为了防止再次发生这种情况,如果是用户导致问题,您的选择是:

  • 每个用户配额;
  • 对过度使用的用户进行惩罚;
  • 适当的容量规划。

如果是系统进程:

  • 合理管理系统进程的磁盘使用情况;
  • 适当的容量规划。

根据您对 Hawk 的回答的评论,问题可能是容量规划问题。如果您为用户提供足够的空间,让他们存储 110GB 的数据,并且只使用其配额的 4%,那么您需要更大的磁盘(更多,很多如果你依赖过量承诺来赚钱,迟早你会吃亏的。

答案2

/home 通常是用户文件。/var 有 mysql、邮件、日志文件等

cpanel 中的帐户空间有限制吗?

运行以下命令来查看哪些使用了最多的空间:

du-h-s /主页/*

du-h-s / var / *

答案3

没有日志跟踪系统上每个文件的创建/更改。

du(和 sort?)将为您提供文件大小的统计信息,但它将是一个巨大的列表 - 查看“查找”以找到最近更改的文件。

相关内容