php - 为 Linux 守护进程制作安装包

标签 php linux ubuntu daemon packaging

我正在使用 Ubuntu 11.04。

我正在开发一个 Linux 守护程序,它将监视我的服务器并将信息发送到中央服务器。它基本上每 5 分钟拍摄一次关键指标的快照,将输出重定向到一个文本文件,然后使用 CURL 放置或发布数据。

我正在使用从这里获得的信息将其编写为守护进程:http://kevin.vanzonneveld.net/techblog/article/create_daemons_in_php/ .我本来打算只写一个 CRONed shell 脚本,但我要破产了,而且 PHP 对我来说更加熟悉。

但是,我想更进一步,开发一些我可以使用 apt-get 安装的东西。我想它会按如下方式工作:

  1. 我更新我的 sources.list 文件
  2. 我做了类似apt-get install myservermonitor
  3. 它将我的守护进程安装在 usr/bin/myservermonitor 中
  4. 它在/etc/init.d/myservermonitor 安装一个 init.d 脚本
  5. 它启动守护进程

我对此没有任何经验,想知道如何去做。

问候,

最佳答案

只需获取 debhelper,它将创建一个示例 debian/目录,其中包含您需要的所有部分的模板。不过,您的守护进程可能应该进入/usr/sbin。 postinst 脚本通常用于在成功配置和安装后运行 init 脚本。

如果您需要配置某些东西(例如,轮询或报告间隔,或发送报告的位置),您还需要了解 debconf,并创建一个配置脚本。

要分发您的包,您需要设置自己的存储库,或找人为您托管一个。如果您的目标是 Ubuntu,我建议您在 Launchpad.net 上注册一个帐户,并使用他们内置的 PPA 工具。

intarwebs 充满了令人震惊的教程;希望这足以让您开始进行一些 Google 搜索。

请注意,.deb 软件包仅适用于与 Debian 兼容的发行版。如果您希望普遍针对 Linux,您还应该提供 RPM 包。

关于php - 为 Linux 守护进程制作安装包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7439949/

相关文章:

php - 如何使两个开发数据库与 Doctrine 保持同步?

PHP + PDF,如何使用 curl 保存下载的 PDF?

linux - voyager linux cpu 和时间显示自定义

php - CSS Graph- 条形图显示不正确

linux - 变量设置不正确

linux - 使用 shell 获取父级 PID?

java - java.library.path 中没有 usbJava

ubuntu -/vagrant 挂载后如何运行 nginx.service

linux - 如何配置分区以与 Windows 并行安装 ubuntu

php - 预测/纠正全文搜索