我在 Ubuntu 中创建了一个新贵脚本,认为它对 Debian 来说也是一样的。但是 Debian 没有/etc/initUbuntu 有的文件夹。我去了 upstart下载页面,看到他们有软件包,做了一个apt-get install upstart,但它要求删除 sysvinit,我知道这会/可能会搞砸我的系统。那么如何让我的 Ubuntu 脚本在 Debian 上运行呢?
Gil*_*il' 12
这不是直接关于 Debian 与 Ubuntu,而是关于SysVinit与Upstart。Debian 默认为 SysVinit;您可以安装 Upstart,但是您需要知道自己在做什么,并且在考虑将其安装在生产服务器上之前应该熟悉它。尽管理论上可以同时安装两者,但其中只有一个作为进程号 1 运行,但 Debian 不支持开箱即用。
Upstart 比 SysVinit 更年轻并且具有更多功能,这解释了为什么您不能只获取 Upstart 服务描述并将其提供给 SysVinit。您必须为/etc/init.d. 基本上,该脚本需要查看其第一个参数 ( $1) 和start,stop或restart按照指示查看服务。
如果您使用 Upstart 事件来确定何时启动脚本,则必须使用其他一些方法。Upstart 从许多不同的来源收集事件;你可以从 Upstart 得到的任何地方获得触发器,在这方面,Upstart 只是一种不必在许多不同的地方和协议中寻找触发器的便捷方式。
它要删除的原因sysvinit是因为这两个是冲突的。另外,请注意这sysvinit被认为是必不可少的(阅读:不得删除,除非您知道自己在做什么)。
“aptitude show upstart”的部分输出:
Conflicts: startup-tasks, system-services, sysvinit, upstart-compat-sysv, upstart-job
Run Code Online (Sandbox Code Playgroud)
如果您负担得起对系统进行软管安装,请继续安装它。