¿Cómo detengo un programa que se ejecuta al inicio en Linux? Quiero eliminar algunas aplicaciones del inicio para permitir que sean administradas por, por supervisord
ejemplo, apache2
¿Cómo detengo un programa que se ejecuta al inicio en Linux? Quiero eliminar algunas aplicaciones del inicio para permitir que sean administradas por, por supervisord
ejemplo, apache2
Respuestas:
Dependiendo de su distribución, use la herramienta chkconfig o update-rc.d para habilitar / deshabilitar los servicios del sistema.
En un sistema de estilo redhat / suse / mandrake:
sudo chkconfig apache2 off
En Debian:
sudo update-rc.d -f apache2 remove
Consulte sus páginas de manual para obtener más información.
Si se trata de un sistema Ubuntu moderno y algunas otras distribuciones, es posible que deba lidiar con una combinación de scripts de inicio tradicionales y scripts de arranque. La gestión de scripts de inicio está cubierta por otras respuestas. La siguiente es una forma de detener el inicio de un servicio inicial en el arranque:
# mv /etc/init/servicename.conf /etc/init/servicename.conf.disabled
El problema con este método es que no le permite iniciar el servicio usando:
# service start servicename
Una alternativa a esto es abrir el servicename.conf
archivo en su editor favorito y comentar las líneas que comienzan con:
start on
Es decir, cambie esto a
#start on ...
donde el "..." es lo que fue después de "comenzar" anteriormente. De esta manera, cuando desee volver a habilitarlo, no tiene que recordar cuáles fueron los parámetros de "inicio".
Finalmente, si tiene una nueva versión de arranque, 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 provocará que upstart ignore cualquier frase de "inicio" anterior en el archivo.
En los recientes sistemas Fedora y Future RHEL
systemctl disable httpd.service
deshabilitará el servicio httpd
systmctl
comando funcionó bien.
Para enumerar todos los servicios de inicio
systemctl
Para detener la ejecución de un servicio al iniciar
sudo systemctl disable servicename
Por ejemplo, si necesitamos dejar de ejecutar el servidor ssh al inicio
sudo systemctl disable sshd.service
Podemos habilitar esto nuevamente usando
sudo systemctl enable sshd.service
Casi todas las distribuciones de Linux usan systemd para los servicios de arranque de arranque. Entonces, los comandos anteriores funcionan para la mayoría de las distribuciones.
Slackware y Arch Linux tienen métodos similares para detener / iniciar procesos en el arranque, diferentes a los ejemplos de Ubuntu y de estilo Redhat dados anteriormente.
Tanto en Slackware como en Linux, los scripts sh existen en el directorio /etc/rc.d
, generalmente un script por demonio o un script por subsistema.
Por ejemplo, Slackware inicia el servidor web Apache con un script /etc/rc.d/rc.httpd
, llamado en el momento apropiado durante el inicio del sistema con un argumento de "inicio". Arch Linux tiene scripts con nombres diferentes, pero sucede lo mismo.
Para evitar que se inicie algún proceso durante el arranque del sistema, en Slackware, solo debe hacer que el script apropiado en /etc/rc.d no sea ejecutable. Para evitar que Apache comience en el próximo arranque:
chmod -x /etc/rc.d/rc.httpd
Para detener un Apache que comenzó en el arranque: /etc/rc.d/rc.httpd stop
deberá ser root.
Arch es un poco más complejo. El archivo /etc/rc.conf, un script de shell, tiene una matriz DAEMONS. Para evitar que Apache comience en el arranque, debe cambiar esta línea en /etc/rc.conf:
DAEMONS=(hal syslog-ng network netfs crond alsa sshd httpd ntpd postgresql)
A esta línea:
DAEMONS=(hal syslog-ng network netfs crond alsa sshd ntpd postgresql)
Para detener un apache que ya se está ejecutando, debe ejecutarlo /etc/rc.d/httpd stop
como root.
En Ubuntu 10.04 puedes controlar algunos programas de inicio desde la GUI.
System→ Preferences→Startup Applications
1) toque la superclave en su teclado 2) busque 'Aplicaciones de inicio' 3) elija el programa que desea deshabilitar 4) presione como esta respuesta si worx.