GNU/Linux >> Tutoriales Linux >  >> Linux

Compruebe los archivos de configuración de Linux en busca de errores de sintaxis

Este artículo describe cómo comprobar la configuración de Linux® para Secure Shell (SSH), Apache® y Nginx®, lo que le ayudará a solucionar errores. Por ejemplo, puede realizar un cambio en un archivo de configuración e introducir un error de sintaxis. Como resultado, cuando reinicia o vuelve a cargar el servicio, muestra un error y no se reinicia, lo que provoca un tiempo de inactividad.

SSH

Puede encontrar el archivo de configuración de SSH en /etc/ssh/sshd_config . Después de cambiar el archivo de configuración, ejecute el comando sshd -t para comprobar la configuración. Si la configuración tiene errores, aparece el siguiente mensaje de error:

# sshd -t

/etc/ssh/sshd_config: line 17: Bad configuration option: ZPort
/etc/ssh/sshd_config: terminating, 1 bad configuration options

Si no hay errores, no se muestra nada cuando ejecuta el comando.

Apache

El comando de verificación de sintaxis verifica el archivo de configuración predeterminado de Apache y cualquier host virtual (vhosts) que haya configurado en el servidor. Para comprobar la sintaxis, ejecute httpd -t o apache2ctl -t para el sistema operativo Ubuntu® y Debian®. Si hay un error con la verificación de sintaxis, el mensaje de error muestra un resultado similar al siguiente ejemplo:

# httpd -t

AH00112: Warning: DocumentRoot [/var/www/test.com/httpdocs] does not exist
AH00526: Syntax error on line 3 of /etc/httpd/conf.d/test.conf:
ServerName takes one argument, The hostname and port of the server

Si no hay errores, el mensaje Syntax OK pantallas. Incluso si no hay vhosts en el servidor, la verificación de sintaxis todavía muestra Syntax OK cuando la sintaxis del archivo de configuración predeterminado para Apache es correcta.

Nginx

Las verificaciones de sintaxis de Nginx se comportan de manera diferente a Apache. Para verificar la sintaxis de la configuración predeterminada de Nginx, ejecute el comando nginx -t . Sin embargo, si desea verificar la sintaxis de un bloque de servidor específico, debe agregar -c marca y especifica la ruta al bloque del servidor como se muestra en el siguiente ejemplo:

[root@localhost ~]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

[root@localhost ~]# nginx -t -c /etc/nginx/conf.d/test.com.conf
nginx: [emerg] "server" directive is not allowed here in /etc/nginx/conf.d/test.com.conf:1
nginx: configuration file /etc/nginx/conf.d/test.com.conf test failed

Linux
  1. Cómo buscar archivos grandes en la consola

  2. Linux:¿problemas de permisos para el directorio compartido en un servidor?

  3. Linux:¿obtener archivos para la fecha actual en Linux?

  4. Busque rápidamente archivos en Linux con el comando de localización

  5. En Linux, ¿cómo se comprueba si un disco está fragmentado?

Comando ls en Linux para listar archivos

Cmus:un potente reproductor de música de consola para Linux

Configuración de Linux:comprensión de los directorios *.d en /etc

¿Cómo comprobar si hay errores en RAM a través de Linux?

Configuración de Dropbox para un servidor en la nube de Linux

Introducción a los archivos de configuración de Puppet con ejemplos en Linux