Where in CentOS does program start at boot if it's not in init.d?

I have installed a software (GitLab) on CentOS. It works well, but this GitLab starts at boot and I don't want that. So I took a look at /etc/init.d in order to disable it with chkconfig, but my problem is that there is no gitlab script in it, so I can't disable it.

So here is my question: is there any other place in CentOS where I can find programs executed at CentOS start up? Or more directly, if someone knows how to disable GitLab from start up without using init.d, I am interested!


Solution 1:

Edit the upstart file /etc/init/gitlab-runsvdir.conf and comment out the line start on runlevel [2345]

Resulting file /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

The line start on level [2345] is basically saying the script /opt/gitlab/embedded/bin/runsvdir-start will be executed on runlevels 2, 3, 4, and 5

After you have commented it out you can still manage the service using the following commands:

start gitlab-runsvdir # start the gitlab service

stop gitlab-runsvdir # stop the gitlab service

status gitlab-runsvdir # get status of gitlab service