GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo hago para que Apache se inicie en el momento del arranque en Linux?

Solución 1:

Desea agregar su secuencia de comandos de inicio al nivel de ejecución apropiado. El guión de inicio suele ser /etc/init.d/apache2 donde podría ejecutar manualmente /etc/init.d/apache2 start para iniciarlo.

En Gentoo escribiría:

rc-update add apache2 default

En Ubuntu/Debian esto funciona:

sudo update-rc.d apache2 defaults

En Red Hat Linux/Fedora/CentOS un poco de google muestra esto:

chkconfig --add httpd

Varía un poco de una distribución a otra, pero la idea suele ser la misma. Básicamente, todos estos comandos hacen un enlace simbólico desde /etc/init.d/ a la carpeta de nivel de ejecución adecuada en /etc/ .

Solución 2:

Esto es lo que finalmente funcionó para mí. Esto supone que usted es el usuario root.

  1. vi /etc/init.d/apache2 (edítelo como se muestra a continuación)
  2. chmod 755 /etc/init.d/apache2
  3. chkconfig --añadir apache2
  4. chkconfig --list apache2 (para verificar que funcionó)

Contenido de /etc/init.d/apache2:

#!/bin/bash
#
# apache2        Startup script for the Apache HTTP Server
#
# chkconfig: 3 85 15
# description: Apache is a World Wide Web server.  It is used to serve \
#              HTML files and CGI.

/usr/local/apache2/bin/apachectl [email protected]

Puede obtener el nivel de ejecución ejecutando /sbin/runlevel, que en mi caso fue 3. Y, por supuesto, debe llamar a su versión de apachectl, que en mi caso fue /usr/local/apache2/bin/apachectl

Gracias a lo siguiente:

  • La respuesta de Evan Teran +1 por la ayuda
  • La respuesta de Russell Heilling + 1 por la ayuda
  • man chkconfig
  • Este enlace de sysdigg que contenía la información sobre el nivel de ejecución.

Solución 3:

Comprueba si tienes el httpd script de inicio en el /etc/rc.d directorio. En caso afirmativo, puede ejecutar el siguiente comando que habilita el httpd servicio para iniciar en el momento del arranque.

chkconfig --level 345 httpd on

Si no tiene el script de inicio, simplemente agregue el /etc/rc.local archivo con apachectl -k start (el comando para iniciar Apache).

Solución 4:

Como ha instalado por fuente, no habrá un script de inicio instalado en el directorio /etc/init.d/. El binario apachectl está diseñado para ser compatible con las opciones de secuencia de comandos de inicio estándar, por lo que es posible que pueda simplemente vincularlo en lugar de crear una secuencia de comandos contenedora (por ejemplo, ln -s /usr/local/sbin/apachectl /etc/init.d/ apache)

Luego puede seguir los procedimientos descritos en las otras publicaciones para agregar enlaces para invocar el script de inicio en los niveles de ejecución correctos.

Cita:documentación de Apache http://httpd.apache.org/docs/2.2/invoking.html

Comenzando en el momento del arranque

Si desea que su servidor continúe ejecutándose después de reiniciar el sistema, debe agregar una llamada a apachectl a los archivos de inicio de su sistema (generalmente rc.local o un archivo en un directorio rc.N). Esto iniciará Apache como root. Antes de hacer esto, asegúrese de que su servidor esté correctamente configurado para la seguridad y las restricciones de acceso.

El script apachectl está diseñado para actuar como un script de inicio SysV estándar; puede tomar los argumentos start, restart y stop y traducirlos a las señales apropiadas para httpd. Por lo tanto, a menudo puede simplemente vincular apachectl al directorio de inicio apropiado. Pero asegúrese de comprobar los requisitos exactos de su sistema.


Linux
  1. Cómo crear un script de un comando de Linux

  2. Cómo configurar el script de inicio y apagado en Gentoo Linux

  3. Cómo crear un script de inicio usando Crontab en Lubuntu Linux

  4. Cómo instalar Apache Kafka en Rocky Linux 8

  5. Cómo instalar Apache Cassandra en Oracle Linux 8

Cómo instalar Apache 2.4 y PHP 7.4 en Amazon Linux

Cómo obtener su dirección IP en Linux

Cómo comenzar con Arch Linux

Cómo instalar Apache en Arch Linux

Cómo instalar Apache Solr en Oracle Linux 8

Cómo obtener una lista de enlaces simbólicos en Linux