30 formas de validar archivos de configuración o scripts en Linux

30 formas de validar archivos de configuración o scripts en Linux

La verificación y/o las pruebas de sintaxis de configuración es un paso clave para realizar después de realizar cambios en el archivo de configuración de una aplicación o servicio o incluso después de ejecutar actualizaciones. Esto ayuda a reducir las posibilidades de que el servicio no se reinicie debido a los errores de configuración.

Varias aplicaciones/programas o Daemons de servicio se envían con comandos para verificar los archivos de configuración para la corrección de la sintaxis. Hemos reunido una lista de aplicaciones y servicios comunes en sistemas Linux y cómo probar o validar sus archivos de configuración.

Nota: Use si no ha iniciado sesión en un servidor como usuario raíz, recuerde usar el comando sudo cuando sea necesario mientras invoca un comando porque algunos servicios se ejecutan con privilegios raíz, y verificar sus archivos de configuración requiere permisos de usuario raíz.

1. Comando sudo

Puede verificar la sintaxis del archivo de configuración de sudo utilizando el visudo comando, que admite un --controlar o -C Opción de línea de comando para validar solo un archivo sin editar. El -F La opción muestra el mensaje de error y abre el archivo para editar:

# visudo -c /etc /sudoers o # visudo -c /etc /sudoers.d/my_config o # visudo -f/etc/sudoers.d/my_config 
Verifique la configuración de Suders

2. Guión

Puede verificar los scripts bash para obtener errores de sintaxis de la siguiente manera:

# bash -n/rath/to/scriptname.mierda 
Verifique los errores de sintaxis del script bash

3. Scripts de Perl

Para verificar los scripts Perl para errores de sintaxis, use el siguiente comando:

# Perl -C/Path/To/ScriptName 

4. Archivos de la unidad de Systemd

El "systemd-analizar verificar"El comando permite probar el archivo de la unidad Systemd para los errores de sintaxis. Carga los archivos de la unidad e imprime advertencias si se detectan errores.

Por defecto, carga archivos especificados en la línea de comandos como un argumento, y cualquier otra unidad mencionada por ellos:

# Systemd-Analyze Verify/etc/systemd/system/test.servicio 
Verifique la configuración de los archivos de la unidad Systemd

5. Servidor openssh

Para verificar la validez del archivo de configuración SSHD y la cordura de las claves, emita el siguiente comando. Para verificar un archivo de configuración en particular, especifíquelo utilizando el -F bandera:

# sshd -t 

6. Servidor web nginx

Para comprobar el Nginx archivo de configuración, ejecute el nginx comando con el -T bandera. Para especificar un archivo de configuración diferente, use el -C bandera:

# nginx -t o # nginx -t -c/etc/nginx/conf.D/Ejemplo.comunicarse.confusión 
Verifique la configuración de Nginx

7. Php-FPM

Para comprobar el Php-FPM archivo de configuración, ejecute el siguiente comando. Tenga en cuenta que llamar al -T bandera dos veces (-tt) hace que la configuración se arroje antes de salir:

# php -fpm -t o # php -fpm -tt 

8. Servidor web de Apache

Entonces puedes verificar el apache Archivo de configuración del servidor web utilizando el siguiente comando:

# apachectl configtest 

Alternativamente, puede usar los siguientes comandos en distribuciones basadas en Redhat:

# httpd -t 

Sobre distribuciones con sede en Debian, ejecute:

 # apache2ctl -t 

9. HAPROXY TCP/HTTP BALANTE DE CARGA

La configuración de HaProxy se puede probar utilizando el siguiente comando donde el -F La opción especifica el archivo y -C habilita el modo de prueba:

# haproxy -f/etc/haproxy/haproxy.CFG -C 
Verifique la configuración de HaProxy

10. Servidor de http lighttpd

Ejecute el siguiente comando para probar la sintaxis del archivo de configuración de LightTPD. El -T La opción de línea de comando habilita LightTPD para probar el archivo de configuración predeterminado para los errores de sintaxis y salir. Utilizar el -F Indicador para especificar un archivo de configuración personalizado:

# Lighttpd -t o # Lighttpd -t -f/path/to/config/file 

11. Apache Tomcat

El servidor web de Tomcat permite verificación de sintaxis de configuración básica. Primero, muévase a su directorio de instalación de Tomcat y emita el siguiente comando:

# ./bin/catalina.sh configtest o # $ tomcat_home/bin/catalina.SH ConfigTest 

12. Pound proxy inversa

Puedes analizar el Libra archivo de configuración del servidor antes de iniciar el servidor. Ejecutar el libra comando con el -C indicando sin ningún otro argumento para verificar el archivo de configuración predeterminado. Puede especificar un archivo de configuración diferente utilizando el -F Opción de línea de comando:

# libra -c o # libra -f/rath/to/config/file -c 

13. Acelerador http de barnishd

Para comprobar el barniz VCL (Lenguaje de configuración de barniz) Sintaxis de archivo Para cualquier error, use el siguiente comando. Si todo está bien, el barniz descargará la configuración generada, de lo contrario, mostrará un número de línea específico en el archivo que tiene un error:

# barnishd -c o # barnishd -f/etc/barnish/predeterminado.VCL -C 

14. Servidor de almacenamiento en caché del proxy de calamar

Para pasar el archivo de configuración de Squid para el servidor de caché del proxy Squid, emita el siguiente comando. El -k Opción junto con los subcomandos de análisis o depuración, dígale al demonio Squid Daemon que analice el archivo de configuración o habilite el modo de depuración respectivamente:

# squid -k parse # squid -k debug 

15. Servidor web de Caddy

Para exponer cualquier error en la configuración del servidor web Caddy, emita el siguiente comando. El primero verifica la configuración predeterminada, alternativamente, use el --configuración Opción de línea de comando para especificar un archivo de configuración:

# Caddy Validate o # Caddy Validate - -Config/Path/a/config/file 

dieciséis. servidor VSFTPD FTP

Ejecute el siguiente comando para probar el archivo de configuración para el VSFTPD Servidor FTP:

# vsftpd o # vsftpd -olisten = no/path/to/vsftpd.pruebas.confusión 

17. Servidor DHCPD

Ejecutar el dhcpd comando con el -T Indicador para verificar la sintaxis de configuración del servidor DHCPD:

# dhcpd -t o # dhcpd -t -cf/path/to/dhcpd.confusión 

18. Servidor de base de datos mysql

Use el siguiente comando para probar el Mysql Sintaxis del archivo de configuración del servidor de bases de datos. Después de ejecutar el comando, si no hay errores, el servidor termina con un código de salida de 0, de lo contrario, muestra un mensaje de diagnóstico y termina con un código de salida de 1:

# mysqld --validate-config 

19. Servidor de base de datos de mariadb

El mismo comando utilizado para el Mariada El servidor de bases de datos también funciona para verificar la sintaxis del archivo de configuración del servidor de base de datos mariadb:

# mysqld --validate-config 

20. Servidor postgreSQL

La siguiente captura de pantalla muestra un error en el Postgresql archivo de configuración.

Archivo de configuración de PostgreSQL

Para detectar dicho error, cambie a la post -put Cuenta de usuario de la base de datos y acceder al PSQL caparazón. Luego ejecute el comando para identificar errores en su archivo de configuración:

Postgres =# Seleccione SourceFile, Name, Sourceline, Error de PG_FILE_SETTINGS donde el error no es nulo; 
Verifique los errores de PostgreSQL

21. Herramienta de monitoreo de Nagios

Para verificar su Nagios configuración, ejecute el Nagios comando con el -V bandera.

# nagios -v/usr/local/nagios/etc/nagios.CFG 

22. Herramienta de monitoreo de Monit

Ejecutar el monetar comando con el -T indicador para realizar una verificación de sintaxis para el archivo de control de monit predeterminado. Puede especificar un archivo de control particular, usar el -C bandera:

# monit -t o # monit -t -c ruta/a/control/archivo 

23. Servidor de correo postfix

El siguiente comando lo ayudará a verificar los archivos de configuración de PostFix para obtener errores de sintaxis.

# cheque de postfijo 

Este segundo comando es más detallado que el primero:

# Postfix -vvv 
Verifique la configuración de Postfix

24. Servidor Dovecot IMAP

Comprobar el Dovecot imap Sintaxis de configuración del servidor utilizando el doveconf dominio. Saldrá con un código de error cero si todo está bien, de lo contrario, sale con un código de error distinto de cero y muestra el mensaje de error:

# doveconf 1>/dev/null # echo $? 

25. Servidor de archivos samba

Puedes verificar el Samba Archivo de configuración del servidor de archivos utilizando el siguiente comando:

# TestParm -V 

26. Syslogd/rsyslogd

Cuando invocas el rsyslod comando con el -N1 Opción, habilitará el modo de depuración y también verifica el archivo de configuración predeterminado para los errores de sintaxis. Utilizar el -F Indicador para leer un archivo de configuración personalizado:

# rsyslogd -n1 
Verifique la configuración de Rsyslod

27. Servidor DNS (BIND)

Puedes verificar el DNS llamado Archivo de configuración de la siguiente manera:

# llamado-checkconf /etc /nombrado.confusión 

28. NTP - Protocolo de tiempo de red

El NTPD La sintaxis de configuración se puede probar utilizando el siguiente comando, donde el -d La bandera habilita el modo de depuración detallada, -F especifica el nombre de archivo de deriva de frecuencia y -norte implica que no tenga la bifurcación:

# ntpd -d -f /etc /ntp.conf -n 

29. OpenStack-Ansible

Ejecute el siguiente comando para verificar la sintaxis de un archivo de configuración OpenStack-Ansible:

# OpenStack-Ansible Setup-Infraestructura.YML--Syntax-Check 

30. Logrotato

Para depurar un lógroe (Instalación de rotación de registro) Archivo de configuración, ejecute el logrotato comando con el -d opción y especifique el archivo de configuración:

# logrotate -d /etc /logrotate.d/nginx 

Eso es todo lo que tuvimos para ti en esta guía. Comparta sus pensamientos con nosotros o haga preguntas a través del formulario de comentarios a continuación. También puede compartir más ejemplos de cómo verificar la sintaxis de configuración de cualquier aplicación o servicio que no se enumere aquí. Con mucho gusto agregaremos sus ejemplos a la guía.