Uma maneira de fazer isso com bons e velhos níveis:
O MySQL agora usa um script upstart, mas dentro dele ainda está falando sobre runlevels. Edite /etc/init/mysql.conf
e altere as linhas como neste diff:
-start on runlevel [2345]
-stop on starting rc RUNLEVEL=[016]
+start on runlevel [345]
+stop on starting rc RUNLEVEL=[0126]
O Apache2 ainda usa os links syl do runlevel rc.N.d:
sudo update-rc.d -f apache2 remove
sudo update-rc.d apache2 start 91 3 4 5 . stop 09 0 1 6 .
Então, em uma inicialização normal (nível de execução 2), eles não serão iniciados e, quando você executar sudo telinit 3
, eles serão exibidos.