30 maneiras de validar arquivos de configuração ou scripts no Linux

30 maneiras de validar arquivos de configuração ou scripts no Linux

A verificação e/ou teste da sintaxe de configuração é uma etapa essencial para executar depois de fazer alterações no arquivo de configuração de um aplicativo ou serviço ou mesmo depois de executar atualizações. Isso ajuda a reduzir as chances de o serviço não reiniciar devido a erros de configuração.

Vários aplicativos/programas ou daemons de serviço são enviados com comandos para verificar os arquivos de configuração quanto à correção da sintaxe. Reunimos uma lista de aplicativos e serviços comuns em sistemas Linux e como testar ou validar seus arquivos de configuração.

Observação: Use se você não estiver conectado a um servidor como usuário root, lembre -se de usar o comando sudo sempre que necessário ao invocar um comando porque alguns serviços são executados com privilégios root e verificar seus arquivos de configuração requer permissões de usuário root.

1. Comando sudo

Você pode verificar a sintaxe do arquivo de configuração do sudo usando o Visudo comando, que suporta um --verificar ou -c Opção de linha de comando para validar apenas um arquivo sem editar. O -f A opção exibe a mensagem de erro e abre o arquivo para edição:

# visudo -c /etc /sudoers ou # visudo -c /etc /sudoers.d/my_config ou # visudo -f/etc/sudoers.d/my_config 
Verifique a configuração dos Suders

2. Script Bash

Você pode verificar os scripts bash quanto a erros de sintaxe da seguinte forma:

# Bash -n/Path/to/scriptName.sh 
Verifique os erros de sintaxe do script bash

3. Scripts perl

Para verificar os scripts Perl quanto a erros de sintaxe, use o seguinte comando:

# perl -c/path/to/scriptName 

4. Arquivos da unidade Systemd

O "SystemD-analisado Verifique”Comando permite testar o arquivo da unidade Systemd para erros de sintaxe. Ele carrega arquivos da unidade e imprime avisos se algum erro for detectado.

Por padrão, ele carrega arquivos especificados na linha de comando como um argumento e quaisquer outras unidades mencionadas por eles:

# systemd-analyze verify/etc/systemd/system/teste.serviço 
Verifique a configuração de arquivos da unidade Systemd

5. OpenSsh Server

Para verificar a validade do arquivo de configuração SSHD e a sanidade das chaves, emita o seguinte comando. Para verificar um arquivo de configuração específico, especifique -o usando o -f bandeira:

# sshd -t 

6. Nginx Web Server

Para verificar o Nginx arquivo de configuração, execute o nginx comando com o -t bandeira. Para especificar um arquivo de configuração diferente, use o -c bandeira:

# nginx -t ou # nginx -t -c/etc/nginx/conf.d/exemplo.com.conf 
Verifique a configuração do nginx

7. PHP-FPM

Para verificar o PHP-FPM arquivo de configuração, execute o seguinte comando. Observe que chamando o -t Sinalize duas vezes (-tt) faz com que a configuração seja despejada antes de sair:

# php -fpm -t ou # php -fpm -tt 

8. Servidor da web apache

Você pode então verificar o Apache arquivo de configuração do servidor da web usando o seguinte comando:

# apachectl configtest 

Como alternativa, você pode usar os seguintes comandos nas distribuições baseadas em Redhat:

# httpd -t 

Nas distribuições baseadas em Debian, Run:

 # apache2ctl -t 

9. HAPROXY TCP/HTTP Balancer

A configuração de Haproxy pode ser testada usando o seguinte comando onde o -f opção especifica o arquivo e -c Ativa o modo de teste:

# haproxy -f/etc/haproxy/haproxy.CFG -C 
Verifique a configuração do Haproxy

10. Servidor HTTP LightTPD

Execute o seguinte comando para testar a sintaxe do arquivo de configuração do LightTPD. O -t A opção de linha de comando permite que o LightTPD teste o arquivo de configuração padrão para erros de sintaxe e saída. Use o -f sinalizador para especificar um arquivo de configuração personalizado:

# Lighttpd -t ou # LightTpd -t -f/Path/to/config/arquivo 

11. Apache Tomcat

Tomcat Web Server permite a verificação básica da sintaxe da configuração. Primeiro, vá para o diretório de instalação do Tomcat e emita o seguinte comando:

# ./bin/catalina.SH ConfigTest ou # $ tomcat_home/bin/catalina.SH ConfigTest 

12. Proxy reverso de libra

Você pode analisar o Libra arquivo de configuração do servidor antes de iniciar o servidor. Execute o libra comando com o -c sinalize sem nenhum outro argumento para verificar o arquivo de configuração padrão. Você pode especificar um arquivo de configuração diferente usando o -f Opção de linha de comando:

# libra -c ou # libl -f/path/to/config/file -c 

13. Varnishd HTTP acelerador

Para verificar o Varnishd Vcl (Linguagem de configuração de verniz) Sintaxe do arquivo para qualquer erro, use o seguinte comando. Se estiver tudo bem, o verniz despejará a configuração gerada; caso contrário, ele exibirá um número de linha específico no arquivo que tem um erro:

# varnishd -c ou # varnishd -f/etc/varnish/padrão.vcl -c 

14. Servidor de cache de proxy de lula

Para passar no arquivo de configuração da lula para o servidor de cache de proxy de lula, emita o seguinte comando. O -k Opção Juntamente com os subcomandos de análise ou depuração, diga ao daemon da lula para analisar o arquivo de configuração ou ativar o modo de depuração, respectivamente:

# squid -k parse # squid -k depuração 

15. Caddy Web Server

Para expor quaisquer erros na configuração do servidor Web Caddy, emita o seguinte comando. O primeiro verifica a configuração padrão, alternativamente, use o --Config Opção de linha de comando para especificar um arquivo de configuração:

# Caddy Validate ou # Caddy Validate -Config/Path/to/config/arquivo 

16. servidor vsftpd ftp

Execute o seguinte comando para testar o arquivo de configuração para o vsftpd Servidor FTP:

# vsftpd ou # vsftpd -olisten = no/path/to/vsftpd.teste.conf 

17. Servidor DHCPD

Execute o DHCPD comando com o -t sinalizador para verificar a sintaxe de configuração do servidor DHCPD:

# dhcpd -t ou # dhcpd -t -cf/path/to/dhcpd.conf 

18. MySQL Database Server

Use o seguinte comando para testar o Mysql Sintaxe do arquivo de configuração do servidor de banco de dados. Depois de executar o comando, se não houver erros, o servidor termina com um código de saída de 0, Caso contrário, ele exibe uma mensagem de diagnóstico e termina com um código de saída de 1:

# mysqld --validate-config 

19. Servidor de banco de dados MariaDB

O mesmo comando usado para o Mariadb O servidor de banco de dados também funciona para verificar a sintaxe do arquivo de configuração do servidor de banco de dados MARIADB:

# mysqld --validate-config 

20. PostgreSQL Server

A captura de tela a seguir mostra um erro no PostGresql arquivo de configuração.

Arquivo de configuração do PostgreSQL

Para detectar esse erro, mude para o PostGres conta de usuário do banco de dados e acesse o PSQL concha. Em seguida, execute o comando para identificar erros no seu arquivo de configuração:

PostGres =# Selecione Sourcefile, nome, azedinha, erro de pg_file_settings onde o erro não é nulo; 
Verifique os erros do PostGresql

21. Ferramenta de monitoramento Nagios

Para verificar o seu Nagios Configuração, execute o Nagios comando com o -v bandeira.

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

22. Monit Monitoring Tool

Execute o monit comando com o -t sinalizador para executar uma sintaxe Verifique o arquivo de controle de monit padrão padrão. Você pode especificar um arquivo de controle específico, use o -c bandeira:

# monit -t ou # monit -t -c caminho/para/control/arquivo 

23. Postfix Mail Server

O comando a seguir ajudará você a verificar os arquivos de configuração do Postfix quanto a erros de sintaxe.

# Postfix Check 

Este segundo comando é mais detalhado que o primeiro:

# postfix -vvv 
Verifique a configuração do Postfix

24. Servidor IMAP dovecot

Verifica a Dovecot IMAP Sintaxe de configuração do servidor usando o DoveConf comando. Ele sairá com um código de erro zero, se estiver tudo bem, caso contrário, sai com um código de erro diferente de zero e exibe a mensagem de erro:

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

25. Servidor de arquivos samba

Você pode verificar o Samba Arquivo de configuração do servidor de arquivos usando o seguinte comando:

# testParm -v 

26. Syslogd/rsysLogd

Quando você invoca o rsyslod comando com o -N1 Opção, ele habilitará o modo de depuração e também verifica o arquivo de configuração padrão quanto a erros de sintaxe. Use o -f sinalizador para ler um arquivo de configuração personalizado:

# rsysLogd -n1 
Verifique a configuração do RSYSLOD

27. Servidor DNS (Bind)

Você pode verificar o DNS nomeado Arquivo de configuração da seguinte forma:

# nomeado checkconf /etc /nomeado.conf 

28. NTP - Protocolo de tempo de rede

O ntpd A sintaxe de configuração pode ser testada usando o seguinte comando, onde o -d A bandeira permite o modo de depuração detalhado, -f Especifica o nome do arquivo de deriva de frequência e -n implica sem garfo:

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

29. OpenStack-Insible

Execute o seguinte comando para verificar a sintaxe de um arquivo de configuração OpenStack-Insible:

# OpenStack-Insible Setup Infrastructure.YML--Syntax-check 

30. Logrotate

Para depurar a Logroato (Facilidade de rotação de log) Arquivo de configuração, execute o Logrotate comando com o -d opção e especifique o arquivo de configuração:

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

Isso é tudo o que tivemos para você neste guia. Compartilhe seus pensamentos conosco ou faça perguntas através do formulário de feedback abaixo. Você também pode compartilhar mais exemplos de como verificar a sintaxe de configuração de quaisquer aplicativos ou serviços não listados aqui. Teremos prazer em adicionar seus exemplos ao guia.