如果程序不在 init.d 中,那么在 CentOS 中程序启动时会在哪里启动?

如果程序不在 init.d 中,那么在 CentOS 中程序启动时会在哪里启动?

我在 CentOS 上安装了一个软件 (GitLab)。它运行良好,但这个 GitLab 在启动时启动,我不想这样。所以我查看了/etc/init.d如何禁用它chkconfig,但我的问题是它里面没有gitlab脚本,所以我无法禁用它。

所以,我的问题是这样:在 CentOS 中,还有什么地方可以找到在 CentOS 启动时执行的程序?或者更直接地说,如果有人知道如何在不使用的情况下禁用 GitLab 启动init.d,我很感兴趣!

答案1

编辑暴发户文件/etc/init/gitlab-runsvdir.conf并注释掉该行start on runlevel [2345]

结果文件/etc/init/gitlab-runsvdir.conf

#start on runlevel [2345]
stop on shutdown
respawn
post-stop script
   # To avoid stomping on runsv's owned by a different runsvdir
   # process, kill any runsv process that has been orphaned, and is
   # now owned by init (process 1).
   pkill -HUP -P 1 runsv$
end script
exec /opt/gitlab/embedded/bin/runsvdir-start

这行代码start on level [2345]基本上是在说脚本/opt/gitlab/embedded/bin/runsvdir-start将在运行级别第 2、3、4 和 5 条

注释掉之后,您仍然可以使用以下命令管理该服务:

start gitlab-runsvdir # start the gitlab service

stop gitlab-runsvdir # stop the gitlab service

status gitlab-runsvdir # get status of gitlab service

相关内容