问题标签 [init.d]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1410 浏览

gentoo - 在 Gentoo 中独立运行 Apache Archiva?

我有一台运行 Gentoo 2.6.12 r6 的服务器,我想在启动时将 Apache Archiva 作为独立服务器运行。有没有人有一个有效的 init.d 脚本来完成这个?谢谢!

0 投票
2 回答
3575 浏览

linux - 如何将 init.d 脚本从 Ubuntu/Debian Linux 转换为 Solaris?

我有几个 init.d 脚本用于启动一些守护进程。我在互联网上找到的大多数这些脚本都使用 start-stop-daemon。我的理解是“start-stop-daemon”是特定于 Linux 或 BSD 发行版的命令,在 Solaris 上不可用。

将我的 init.d 脚本从 Linux 转换为 Solaris 的最佳方法是什么?是否有一个大致相当于我可以使用的 start-stop-daemon 的命令?

由于我不是 Solaris 用户,因此我愿意提前承认我什至不知道我的问题是否本质上是无效的。

0 投票
8 回答
260852 浏览

linux - 以不同用户身份运行 Linux 服务的最佳实践

服务默认root在我的 RHEL 机器上启动时启动。如果我没记错的话,其他使用 init 脚本的 Linux 发行版也是如此/etc/init.d

您认为让进程作为我选择的(静态)用户运行的最佳方式是什么?

我到达的唯一方法是使用类似的东西:

但这似乎有点不整洁......

是否有一些神奇的东西可以提供一种简单的机制来以其他非 root 用户身份自动启动服务?

编辑:我应该说我在这个实例中启动的进程要么是 Python 脚本,要么是 Java 程序。我宁愿不围绕它们编写本机包装器,所以不幸的是我无法像Black建议的那样调用setuid() 。

0 投票
1 回答
2061 浏览

mysql - 在 Ubuntu 8.04 上重新启动 mysql 的更好脚本

当我sudo /etc/init.d/mysql restart在 Ubuntu 8.04.2 上说时,有时会有一个mysql_safe进程占用 99% 的 cpu。使机器几乎无法使用。

有没有更好的重启mysql的方法?我想写一个脚本:

但这将是一个邪恶的解决方法。(脚本只是一个快速的镜头)

我用谷歌搜索,发现这mysql_safe是一个启动的包装脚本mysqld,并确保如果它应该死,它会重新启动。所以应该有更好的方法来重启这个东西。

我用谷歌搜索,这是这个 ubuntu 版本中的一个常见问题。Debian / Ubuntu 在这一点上做错了吗?该/etc/init.d脚本看起来很复杂,它mysql_safe也可以处理,但我的技能不足以完全理解它。但这将是改进的最佳场所。这是我机器上版本的粘贴(未修改):

我发现了很多提示,但我希望这可以解决生产服务器的一定程度的可靠性。

编辑:这似乎正是这个未解决的错误

也许是来自 MySQL 站点的这个错误

似乎相关或相同。

有些人谈论具有 2 个实例的竞争条件mysql_safe。其他人建议注释掉启动脚本中的健全性检查。

0 投票
5 回答
9749 浏览

qt - Run Qt application on startup as Linux daemon

I've developed a Qt application which contains a TCP server and such. I'm now trying to make Ubuntu packages and let the application automatically start on startup.

The application needs to be running even if nobody is logged in, which means a daemon started via a script in /etc/init.d/

I tried simply running the application on start and sending a kill-signal on stop in the init.d script but that means the application runs in the foreground and blocks the init-script.

Forking like in an other question almost seems to work, I get 'unknown error' after trying to start a TCP server. Nevertheless, there should be an easy to way to write a init-script that runs my application in the background on startup on the various Linux distributions.

Could anyone point me in the right direction?

Using Ubuntu 9.10 with Qt 4.5

0 投票
2 回答
2709 浏览

python - 在 init.d 脚本中使用 Python 的特殊注意事项?

'init.d'在正在运行的脚本中使用 Python 是否有任何特殊注意事项init?(即启动 Ubuntu)

根据我在 Ubuntu 上通过谷歌搜索/测试了解到的情况,提供给'init.d'脚本的环境变量很少,因此使用"#!/usr/bin/env python"可能无法正常工作。

还要别的吗?

0 投票
2 回答
2031 浏览

linux - Erlang:守护进程“init.d”脚本无法启动

我有一个管理 Erlang 守护进程的 python 脚本。系统初始化后,通过 shell 使用时一切正常。

现在,当我在“/etc/init.d”下包含相同的脚本并且在“/etc/rcX.d”中正确设置了符号链接时,python 脚本仍然可以工作,但是我的 Erlang 守护程序无法启动并且没有留下明显的痕迹(例如 crash_dump、dmesg 等)

我还尝试通过'erl -env HOME /root'设置环境变量“HOME”,但仍然没有运气。

有什么线索吗?

0 投票
5 回答
8607 浏览

java - 让tomcat在重新启动时启动的问题

我无法启动 tomcat

我按照这些说明让 tomcat / apache2 运行:

...但 tomcat 无法在重新启动时启动。这是日志中的消息:

它说 [8005] 已经在使用中,但是 netstat -napa 显示没有人拥有该端口。

我可以通过运行手动启动它

然后执行 netstat 并终止具有端口 8080 的进程并执行

尝试删除 init.d tomcat 脚本、引导系统并运行 netstat -napa 以查看是否有人拥有端口 8080 或 8000 到 8009,但没有人拥有。新启动时到此端口的“telnet”给了我

..但是如果我尝试手动或通过init.d脚本启动tomcat,它将第一次失败,抱怨“地址已在使用”

有任何想法吗?

0 投票
3 回答
1787 浏览

ubuntu - 如何在 Ubuntu 下对 init.d 脚本进行排序

我有一些服务器和其他守护程序需要以正确的顺序启动。

我已经从骨架脚本创建了 init.d 脚本,并且可以安装它们以使用编号命名系统以正确的顺序启动,但仍然存在一些问题:

一个服务器('serverA')需要初始化一个数据库连接,然后监听一个套接字。然后另一个服务器('serverB')需要连接到该套接字,如果前面的进程尚未侦听,则连接将失败。有没有办法阻止 serverA 的 init.d 脚本终止,直到 serverA 开始侦听?在 serverA init 终止之前,serverB init 不会启动。

现在,设置的工作原理是让 serverB 重试连接直到它成功,但这种方法似乎很脆弱。我想对如何强制排序有更确定的理解。

0 投票
4 回答
9173 浏览

python - Python 应用程序需要 init.d 脚本

我有一个基于 python 的应用程序,它的工作方式类似于提要聚合器,需要成为 init.d 脚本的一部分,以便我可以使用启动/停止/重启选项控制执行。此外,我希望将 init.d 脚本设置为 cron 作业(我在这里有示例)。

我在这里找到了一个样本http://homepage.hispeed.ch/py430/python/daemon

(PS。我不希望脚本本身用 python 编写)。