I have these 2 webservers installed on a development machine and because they both bind to port 80 only one can be running at any given time.
I would like to be able to modify the init startup process so that I can choose which one starts and which one is disabled.
In order to know what I need to do to effect this, I am trying to work out what is actually controlling the startup of these services.
My understanding was Ubuntu 14.04 startup scripts were handled by Upstart and that upstart init scripts were in /etc/init.
But nginx doesn't have a nginx.conf entry in /etc/init it instead has an entry in /etc/init.d - does this then mean Nginx is managed by SysV and not Upstart?
Does that also mean that by default Ubuntu 14.04 (prior to the move to systemd on 15.04) possibly uses a combination of upstart and initV?
Or is it that important system processes only are started by Upstart and individual packages like Nginx may choose either upstart or systemV init?

1 Answer 1


Ubuntu 14.04 uses Upstart only, but Upstart runs SysV init scripts, too. See /etc/init/rc*.conf for the Upstart jobs that are responsible for this.

A lot of Ubuntu packages still use SysV init scripts to minimize the differences to Debian.

  • thanks for the response. So does that mean Upstart is PID1 - and therefore managing the overall process of script executions - some tasks/scripts have been replaced by upstart jobs - some are still initV scripts - and in order to get all the things done - Upstart uses both upstart jobs and runs initV scripts? Commented Nov 20, 2015 at 2:01
  • Yes, Upstart is PID 1, and is comes with a few jobs which start and stop SysV init scripts when the runlevel is changed, just like a SysV init would do. Commented Nov 20, 2015 at 2:06
  • nice one, its pretty cool to understand more about how Ubuntu gets everything running! thanks. Commented Nov 20, 2015 at 2:26

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .