Dependiendo de su distribución, use la herramienta chkconfig o update-rc.d para habilitar/deshabilitar los servicios del sistema.
En un sistema estilo redhat/suse/mandrake:
sudo chkconfig apache2 off
En Debian:
sudo update-rc.d -f apache2 remove
Consulte sus páginas man para obtener más información.
Si está tratando con un sistema Ubuntu moderno y algunas otras distribuciones, es posible que tenga que lidiar con una combinación de scripts de inicio tradicionales y scripts advenedizos. La gestión de scripts de inicio está cubierta por otras respuestas. La siguiente es una forma de evitar que un servicio advenedizo se inicie en el arranque:
# mv /etc/init/servicename.conf /etc/init/servicename.conf.disabled
El problema con este método es que no te permite iniciar el servicio usando:
# service start servicename
Una alternativa a esto es abrir el servicename.conf
archivo en su editor favorito y comente cualquier línea que comience con:
start on
Es decir, cambie esto a
#start on ...
donde el "..." es lo que estaba después de "comenzar en" anteriormente. De esta manera, cuando desee volver a habilitarlo, no tendrá que recordar cuáles fueron los parámetros de "iniciar".
Finalmente, si tiene una nueva versión de upstart, simplemente puede agregar la palabra "manual" al final del archivo de configuración. Puede hacer esto directamente desde el shell:
# echo "manual" >> /etc/init/servicename.conf
Esto hará que advenedizo ignore cualquier frase de "comenzar en" anterior en el archivo.
En sistemas Fedora y Future RHEL recientes
systemctl disable httpd.service
deshabilitará el servicio httpd