在服务器上设置一个小型维护程序

在服务器上设置一个小型维护程序

我有一个小型网络应用程序(基于 PHP 和 XSLT),它使用内部文件缓存并保存用户的搜索数据。

现在,我不想耗尽磁盘空间,所以我需要一个清理和警告程序。它应该执行以下操作:

  • 每 24 小时启动一次
  • 检查内部缓存目录中的文件并删除所有超过 1 小时的文件
  • 计算整个磁盘空间的使用量,如果大于 1 GB,则向管理员发送电子邮件。
  • 停止

所以,我认为编程相当简单,我想我可以应付(我懂一点 C++ 和 PHP)。但我不知道如何有效地设置这个程序,以便它每 24 小时只启动一次,并在完成任务后立即停止:我应该使用哪种程序语言?是否有针对此类程序的特定框架?

我的系统是 openSUSE 13.1 64 位,Web 服务器是 Apache 2.4.6。

答案1

通常这项工作你根本不需要编写程序,只需要通过 cron 作业每天调用一次简短的 shell 脚本,该脚本使用以下标准工具完成工作find

#!/bin/bash 
find /path/to/cache -type f -cmin +60 -delete 

通过 cron 作业调用将处理删除部分。将其设为可执行文件并将其复制到/etc/cron.daily以便每天执行一次。

通过编辑该部分来预先检查这是否正确完成-delete

计算整个磁盘空间的使用量,如果大于 1 GB,则向管理员发送电子邮件。

目前还不清楚你想要总结什么,所以我暂时不提这个,但dudf显示磁盘使用情况。du -s /path/to/cache将总结缓存大小

此外,这几乎不是您要在系统上监控以保持其健康的全部内容。检查(和轮换)日志文件、整体磁盘空间等同样重要,更不用说保持系统最新了。

相关内容