30 façons de valider les fichiers de configuration ou les scripts dans Linux
- 4166
- 935
- Victor Charpentier
La vérification et / ou les tests de syntaxe de configuration sont une étape clé à effectuer après avoir apporté des modifications au fichier de configuration d'une application ou d'un service ou même après avoir exécuté des mises à jour. Cela permet de réduire les chances que le service ne redémarre pas en raison d'erreurs de configuration.
Plusieurs applications / programmes ou des démons de service sont expédiés avec des commandes pour vérifier les fichiers de configuration pour l'exactitude de la syntaxe. Nous avons dressé une liste d'applications et de services courants sur les systèmes Linux et comment tester ou valider leurs fichiers de configuration.
Note: Utilisez si vous n'êtes pas connecté à un serveur comme utilisateur racine, n'oubliez pas d'utiliser la commande sudo si nécessaire tout en invoquant une commande car certains services s'exécutent avec des privilèges racine, et la vérification de ses fichiers de configuration nécessite des autorisations de l'utilisateur racine.
1. Commande sudo
Vous pouvez vérifier la syntaxe du fichier de configuration sudo à l'aide du visudo commande, qui prend en charge un --vérifier
ou -c
Option de ligne de commande pour valider uniquement un fichier sans modifier. Le -F
L'option affiche le message d'erreur et ouvre le fichier pour l'édition:
# visudo -c / etc / sudoers ou # visudo -c / etc / sudoers.d / my_config ou # visudo -f / etc / sudoers.d / my_configVérifiez la configuration des Suders
2. Script bash
Vous pouvez vérifier les scripts bash pour les erreurs de syntaxe comme suit:
# bash -n / path / to / scriptname.shotVérifiez les erreurs de syntaxe de script bash
3. Scripts perl
Pour vérifier les scripts Perl pour les erreurs de syntaxe, utilisez la commande suivante:
# perl -c / path / to / scriptname
4. Fichiers d'unité SystemD
Le "systemd-analyze vérifier»La commande permet de tester le fichier unitaire Systemd pour les erreurs de syntaxe. Il charge les fichiers unitaires et imprime les avertissements si des erreurs sont détectées.
Par défaut, il charge les fichiers spécifiés sur la ligne de commande comme argument, et toutes les autres unités référencées par eux:
# Systemd-Analyze Verify / etc / Systemd / System / Test.serviceVérifiez la configuration des fichiers d'unité Systemd
5. Serveur OpenSSH
Pour vérifier la validité du fichier de configuration SSHD et la santé mentale des clés, émettez la commande suivante. Pour vérifier un fichier de configuration particulier, spécifiez-le à l'aide du -F
drapeau:
# sshd -t
6. Serveur Web Nginx
Pour vérifier le Nginx Fichier de configuration, exécutez le nginx commande avec le -t
drapeau. Pour spécifier un fichier de configuration différent, utilisez le -c
drapeau:
# nginx -t ou # nginx -t -c / etc / nginx / confr.d / exemple.com.confliVérifier la configuration de Nginx
7. Php-fpm
Pour vérifier le php-fpm Fichier de configuration, exécutez la commande suivante. Notez que appeler le -t
Frapper deux fois (-tt)
entraîne le vidage de la configuration avant de quitter:
# php-fpm -t ou # php-fpm -tt
8. Serveur Web Apache
Vous pouvez ensuite vérifier le Apache Fichier de configuration du serveur Web à l'aide de la commande suivante:
# apachectl configTest
Alternativement, vous pouvez utiliser les commandes suivantes sur les distributions basées sur Redhat:
# httpd -t
Sur les distributions basées sur Debian, exécutez:
# apache2ctl -t
9. Haproxy TCP / HTTP Balancer de chargement
La configuration de Haproxy peut être testée à l'aide de la commande suivante où le -F
L'option spécifie le fichier et -c
Active le mode test:
# haproxy -f / etc / haproxy / haproxy.CFG -CVérifier la configuration de Haproxy
dix. Serveur http lighttpd
Exécutez la commande suivante pour tester la syntaxe du fichier de configuration de LightTPD. Le -t
L'option de ligne de commande permet à LightTPD de tester le fichier de configuration par défaut pour les erreurs de syntaxe et de quitter. Utilisez le -F
Indicateur pour spécifier un fichier de configuration personnalisé:
# LightTPD -T ou # LightTpd -T -F / Path / To / Config / Fichier
11. Apache Tomcat
Le serveur Web Tomcat permet la vérification de la syntaxe de configuration de base. Tout d'abord, déplacez-vous dans votre répertoire d'installation Tomcat et émettez la commande suivante:
# ./ bin / catalina.sh configTest ou # $ tomcat_home / bin / Catalina.SH ConfigTest
12. Pound Inverse Proxy
Vous pouvez analyser le Broyer Fichier de configuration du serveur avant de démarrer le serveur. Courir le broyer commande avec le -c
Indicateur sans aucun autre argument pour vérifier le fichier de configuration par défaut. Vous pouvez spécifier un fichier de configuration différent à l'aide du -F
Option de ligne de commande:
# Pound -C ou # Pound -f / Path / To / Config / File -C
13. Accélérateur HTTP Varnishd
Pour vérifier le vernis Vcl (Langue de configuration de vernis) Syntaxe de fichier pour toute erreur, utilisez la commande suivante. Si tout va bien, le vernis videra la configuration générée, sinon, il affichera un numéro de ligne spécifique dans le fichier qui a une erreur:
# Varnishd -c ou # Varnishd -f / etc / Varnish / par défaut.VCL -C
14. Serveur de mise en cache de Squid Proxy
Pour passer le fichier de configuration de squid pour le serveur de mise en cache de Squid Proxy, émettez la commande suivante. Le -k
L'option avec les sous-commandes d'analyse ou de débogage, dites au démon de squid pour analyser respectivement le fichier de configuration ou activer le mode de débogage:
# Squid -K Parse # Squid -K Debug
15. Serveur Web Caddy
Pour exposer les erreurs dans la configuration du serveur Web Caddy, émettez la commande suivante. Le premier vérifie la configuration par défaut, alternativement, utilisez le --configurer
Option de ligne de commande pour spécifier un fichier de configuration:
# caddy valider ou # caddy valider --Config / path / to / config / fichier
16. serveur VSFTPD FTP
Exécutez la commande suivante pour tester le fichier de configuration pour le vsftpd Serveur ftp:
# vsftpd ou # vsftpd -olisten = no / path / to / vsftpd.essai.confli
17. Serveur DHCPD
Courir le dhcpd commande avec le -t
Indicateur pour vérifier la syntaxe de configuration du serveur DHCPD:
# dhcpd -t ou # dhcpd -t -cf / path / to / dhcpd.confli
18. Serveur de base de données MySQL
Utilisez la commande suivante pour tester le Mysql Syntaxe du fichier de configuration du serveur de base de données. Après avoir exécuté la commande, s'il n'y a pas d'erreurs, le serveur se termine avec un code de sortie de 0, Sinon, il affiche un message de diagnostic et se termine avec un code de sortie de 1:
# MySQLD - Validate-Config
19. Serveur de base de données MARIADB
La même commande utilisée pour le Mariadb Le serveur de base de données fonctionne également pour vérifier la syntaxe du fichier de configuration du serveur de base de données MARIADB:
# MySQLD - Validate-Config
20. Serveur postgresql
La capture d'écran suivante montre une erreur dans le Postgresql fichier de configuration.
Fichier de configuration postgresqlPour détecter une telle erreur, passez au postgres compte utilisateur de la base de données et accéder au PSQL coquille. Ensuite, exécutez la commande pour identifier les erreurs dans votre fichier de configuration:
postgres = # select sourcefile, nom, Sourceline, erreur de pg_file_settings où l'erreur n'est pas nul;Vérifiez les erreurs postgresql
21. Outil de surveillance Nagios
Pour vérifier votre Nagios configuration, exécutez le nagios commande avec le -V
drapeau.
# nagios -v / usr / local / nagios / etc / nagios.CFG
22. Outil de surveillance de la monture
Courir le surmonter commande avec le -t
Indicateur pour effectuer une vérification de syntaxe pour le fichier de contrôle de monit par défaut. Vous pouvez spécifier un fichier de contrôle particulier, utilisez le -c
drapeau:
# monit -t ou # monit -t -c path / to / contrôle / fichier
23. Serveur de messagerie postfix
La commande suivante vous aidera à vérifier les fichiers de configuration de Postfix pour les erreurs de syntaxe.
# chèque postfix
Cette deuxième commande est plus verbeuse que la première:
# postfix -vvvVérifiez la configuration postfix
24. Dovecot IMAP Server
Vérifier la Dovecot IMAP Syntaxe de configuration du serveur à l'aide du doveconf commande. Il sortira avec un code d'erreur zéro si tout va bien, sinon, il sort avec un code d'erreur non nul et affiche le message d'erreur:
# DoveConf 1> / dev / null # echo $?
25. Serveur de fichiers samba
Vous pouvez vérifier le Samba Fichier de configuration du serveur de fichiers à l'aide de la commande suivante:
# testparm -v
26. Syslogd / rsyslogd
Lorsque vous invoquez le rsyslod commande avec le -N1
Option, il permettra le mode de débogage et vérifie également le fichier de configuration par défaut pour les erreurs de syntaxe. Utilisez le -F
Indicateur pour lire un fichier de configuration personnalisé:
# RSYSLOGD -N1Vérifier la configuration de Rsyslod
27. Serveur DNS (Bind)
Vous pouvez vérifier le DNS nommé Fichier de configuration comme suit:
# Named-CheckConf / etc / nommé.confli
28. NTP - protocole de temps de réseau
Le NTPD La syntaxe de configuration peut être testée à l'aide de la commande suivante, où le -d
L'indicateur permet le mode de débogage verbeux, -F
Spécifie le nom de fichier de dérive de fréquence, et -n
Implique pas de fourche:
# ntpd -d -f / etc / ntp.conf -N
29. OpenStack-Ansible
Exécutez la commande suivante pour vérifier la syntaxe d'un fichier de configuration OpenStack-Ansible:
# OpenStack-Ansible Configuration-Frastructure.YML - Syntax-Check
30. Logrotate
Déboguer un logroate (Fonction de rotation de journal) Fichier de configuration, exécutez le logrotate commande avec le -d
Option et spécifiez le fichier de configuration:
# Logrotate -d / etc / Logrotate.d / nginx
C'est tout ce que nous avions pour vous dans ce guide. Partagez vos réflexions avec nous ou posez des questions via le formulaire de rétroaction ci-dessous. Vous pouvez également partager plus d'exemples de la façon de vérifier la syntaxe de configuration de toutes les applications ou services non répertoriés ici. Nous allons joyeusement ajouter vos exemples au guide.
- « Comment configurer un certificat CA SSL en haproxy
- Comment configurer l'authentification à deux facteurs pour SSH dans Linux »