30 Möglichkeiten zur Validierung von Konfigurationsdateien oder Skripten unter Linux

30 Möglichkeiten zur Validierung von Konfigurationsdateien oder Skripten unter Linux

Konfigurationssyntaxprüfung und/oder Tests ist ein wichtiger Schritt, um Änderungen an der Konfigurationsdatei eines Anwendung oder des Dienstes vorzunehmen oder sogar Updates auszuführen. Dies hilft, die Wahrscheinlichkeit zu verringern, dass der Dienst aufgrund von Konfigurationsfehlern nicht neu gestartet wird.

Mehrere Anwendungen/Programme oder Dienstdämonen werden mit Befehlen versandt, um Konfigurationsdateien auf die Syntax -Korrektheit zu überprüfen. Wir haben eine Liste gemeinsamer Anwendungen und Dienste auf Linux -Systemen zusammengestellt und wie sie ihre Konfigurationsdateien testen oder validieren.

Notiz: Verwenden Sie, wenn Sie nicht als Root -Benutzer auf einem Server angemeldet sind.

1. Sudo -Befehl

Sie können die Sudo -Konfigurationsdateisyntax mit der Überprüfung der Sudo -Konfigurationsdatei überprüfen Visudo Befehl, der a unterstützt --überprüfen oder -C Befehlszeilenoption, um nur eine Datei ohne Bearbeitung zu validieren. Der -F Die Option zeigt die Fehlermeldung an und öffnet die Datei zum Bearbeiten:

# visudo -c /etc /sudoers oder # visudo -c /etc /sudoers.d/my_config oder # visudo -f/etc/sudoers.D/my_config 
Überprüfen Sie die Suders -Konfiguration

2. Bash -Skript

Sie können Bash -Skripte auf Syntaxfehler wie folgt überprüfen:

# Bash -n/path/to/scriptName.Sch 
Überprüfen Sie die Bash -Skript -Syntaxfehler

3. Perl Skripte

Verwenden Sie den folgenden Befehl, um Perl -Skripte auf Syntaxfehler zu überprüfen: Verwenden Sie den folgenden Befehl:

# perl -c/path/to/scriptName 

4. Systemd -Einheiten -Dateien

Der "systemd-analyze prüfDer Befehl ”Ermöglicht das Testen der Systemd -Einheitsdatei auf Syntaxfehler. Es lädt Einheitsdateien und druckt Warnungen, wenn Fehler erkannt werden.

Standardmäßig lädt es die in der Befehlszeile angegebenen Dateien als Argument und alle anderen von ihnen verwiesenen Einheiten:

# systemd-analyze verifizieren/etc/systemd/system/test.Service 
Überprüfen Sie die Konfiguration der Systemd -Einheitendateien

5. OpenSsh Server

Um die Gültigkeit der SSHD -Konfigurationsdatei und die geistige Gesundheit der Schlüssel zu überprüfen, geben Sie den folgenden Befehl aus. Um eine bestimmte Konfigurationsdatei zu überprüfen, geben Sie diese mit dem an -F Flagge:

# sshd -t 

6. Nginx Web Server

Um die zu überprüfen Nginx Konfigurationsdatei führen Sie die aus nginx Befehl mit dem -T Flagge. Verwenden Sie die andere Konfigurationsdatei, um eine andere Konfigurationsdatei anzugeben, die -C Flagge:

# nginx -t oder # nginx -t -c/etc/nginx/conf.d/Beispiel.com.Conf 
Überprüfen Sie die Nginx -Konfiguration

7. PHP-FPM

Um die zu überprüfen PHP-FPM Konfigurationsdatei, den folgenden Befehl ausführen. Beachten Sie, dass das Aufrufen der -T zweimal fahnen (-tt) verursacht die Konfiguration, die vor dem Verlassen abgeladen wird:

# PHP -FPM -T oder # PHP -FPM -TT 

8. Apache -Webserver

Sie können dann die überprüfen Apache Webserver -Konfigurationsdatei mit dem folgenden Befehl:

# apachectl configtest 

Alternativ können Sie die folgenden Befehle zu Redhat-basierten Verteilungen verwenden:

# httpd -t 

Auf Debian-basierten Verteilungen rennen Sie:

 # Apache2ctl -t 

9. Haproxy TCP/HTTP -Lastausgleicher

Die Konfiguration von Haproxy kann mit dem folgenden Befehl getestet werden, bei dem die -F Option gibt die Datei an und -C Aktiviert den Testmodus:

# Haproxy -f/etc/hraproxy/hraproxy.CFG -C 
Überprüfen Sie die Haproxy -Konfiguration

10. LightTPD HTTP Server

Führen Sie den folgenden Befehl aus, um die Konfigurationsdateisyntax von LightTPD zu testen. Der -T Die Befehlszeilenoption ermöglicht es LightTPD, die Standardkonfigurationsdatei für Syntaxfehler zu testen und zu beenden. Verwenden Sie das -F Flag, um eine benutzerdefinierte Konfigurationsdatei anzugeben:

# lightTpd -t oder # lightTpd -t -f/path/to/config/Datei 

11. Apache tomcat

Der Tomcat -Webserver ermöglicht eine grundlegende Konfigurationssyntaxprüfung. Gehen Sie zunächst in Ihr Tomcat -Installationsverzeichnis und geben Sie den folgenden Befehl aus:

# ./bin/catalina.sh configtest oder # $ tomcat_home/bin/catalina.sh configtest 

12. Pfund Reverse Proxy

Sie können die analysieren Pfund Serverkonfigurationsdatei vor dem Starten des Servers. Leiten Sie die Pfund Befehl mit dem -C FLAGEN Sie ohne andere Argumente, um die Standardkonfigurationsdatei zu überprüfen. Sie können eine andere Konfigurationsdatei mit dem angeben -F Befehlszeilenoption:

# Pfund -c oder # Pfund -f/path/to/config/Datei -c 

13. Varnishd HTTP -Beschleuniger

Um die zu überprüfen Lack Vcl (Lackkonfigurationssprache) Dateisyntax Für Fehler verwenden Sie den folgenden Befehl. Wenn alles in Ordnung ist, wird der Lack die generierte Konfiguration ausgelöst. Andernfalls wird eine bestimmte Zeilennummer in der Datei angezeigt, die einen Fehler aufweist:

# Varnishd -c oder # Varnishd -f/etc/varnish/Standard.vcl -c 

14. Squid Proxy Caching Server

Um die Squid -Konfigurationsdatei für den Squid Proxy Caching -Server zu übergeben, geben Sie den folgenden Befehl aus. Der -k Option, zusammen mit den Unterbefehlern von Parse oder Debugug den Tintenfisch -Daemon, er soll die Konfigurationsdatei analysieren oder den Debugging -Modus aktivieren:

# Squid -k Parse # Squid -k Debugg 

15. Caddy Web Server

Um Fehler in der CADDY -Webserverkonfiguration aufzudecken, geben Sie den folgenden Befehl aus. Der erste überprüft die Standardkonfiguration, alternativ die Verwendung der --Konfiguration Befehlszeilenoption zum Angeben einer Konfigurationsdatei:

# CADDY Validate oder # Caddy Validate – -config/path/to/config/Datei validieren 

16. VSFTPD FTP Server

Führen Sie den folgenden Befehl aus, um die Konfigurationsdatei für die zu testen vsftpd FTP-Server:

# vsftpd oder # vsftpd -olisten = no/path/to/vsftpd.testen.Conf 

17. DHCPD -Server

Leiten Sie die DHCPD Befehl mit dem -T Flag, um die Konfigurationssyntax des DHCPD -Servers zu überprüfen:

# DHCPD -t oder # DHCPD -t -cf/path/to/dhcpd.Conf 

18. MySQL Database Server

Verwenden Sie den folgenden Befehl, um die zu testen Mysql Datenbankserver -Konfigurationsdateisyntax. Nach dem Ausführen des Befehls beendet der Server, wenn keine Fehler vorliegen, mit einem Exit -Code von 0, Andernfalls wird eine diagnostische Nachricht angezeigt und endet mit einem Exit -Code von 1:

# Mysqld-Validate-Config 

19. Mariadb -Datenbankserver

Der gleiche Befehl für die Mariadb Der Datenbankserver eignet sich auch zur Überprüfung der MariADB -Datenbankserver -Konfigurationsdatei -Syntax:

# Mysqld-Validate-Config 

20. PostgreSQL Server

Der folgende Screenshot zeigt einen Fehler in der PostgreSQL Konfigurationsdatei.

PostgreSQL -Konfigurationsdatei

Um einen solchen Fehler zu erkennen Postgres Datenbank -Benutzerkonto und Zugriff auf die PSQL Hülse. Führen Sie dann den Befehl aus, um Fehler in Ihrer Konfigurationsdatei zu identifizieren:

postgres =# SourceFile, Name, Sourceline, Fehler aus pg_file_setings, wobei der Fehler nicht null ist; 
Prüfen Sie postgresql -Fehler

21. Nagios Überwachungstool

Um Ihre zu überprüfen Nagios Konfiguration führen Sie die aus Nagios Befehl mit dem -v Flagge.

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

22. Überwachungsinstrument überwachen

Leiten Sie die beobachten Befehl mit dem -T Flag, um eine Syntaxprüfung für die Standard -Monit -Steuerdatei durchzuführen. Sie können eine bestimmte Steuerdatei angeben, verwenden Sie die -C Flagge:

# Monit -t- oder # monit -t -C -Pfad/to/steuern/Datei 

23. Postfix Mail Server

Mit dem folgenden Befehl können Sie die Konfigurationsdateien von Postfix auf Syntaxfehler überprüfen.

# postfix check 

Dieser zweite Befehl ist ausführlicher als der erste:

# postfix -vvv 
Überprüfen Sie die Postfix -Konfiguration

24. DEVECOT IMAP -Server

Überprüf den DEVECOT IMAP Serverkonfigurationssyntax mit dem doveconf Befehl. Es wird mit einem Null-Fehlercode beendet, wenn alles in Ordnung ist. Andernfalls beendet er einen Fehlercode ungleich Null und zeigt die Fehlermeldung an:

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

25. Samba -Dateiserver

Sie können die überprüfen Samba Dateiserverkonfigurationsdatei mit dem folgenden Befehl:

# Testparm -v 

26. Syslogd/rsyslogd

Wenn Sie die aufrufen rsyslod Befehl mit dem -N1 Die Option aktiviert den Debug -Modus und überprüft die Standardkonfigurationsdatei auf Syntaxfehler. Verwenden Sie das -F Flag, um eine benutzerdefinierte Konfigurationsdatei zu lesen:

# rsyslogd -n1 
Überprüfen Sie die RSYSLOD -Konfiguration

27. DNS (BIND) Server

Sie können die DNS überprüfen genannt Konfigurationsdatei wie folgt:

# benannte Checkconf /etc /benannt.Conf 

28. NTP - Netzwerkzeitprotokoll

Der NTPD Die Konfigurationssyntax kann mit dem folgenden Befehl getestet werden, wobei der -D Flag ermöglicht den ausführlichen Debug -Modus, -F Gibt den Frequenz -Drift -Dateinamen an, und -N impliziert keine Gabel:

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

29. OpenStack-ermöglich

Führen Sie den folgenden Befehl aus, um die Syntax einer OpenStack-auf-aufmerksamen Konfigurationsdatei zu überprüfen:

# OpenStack-ermöglicht-Infrastruktur.YML-Syntax-Check 

30. Lehnrotat

Zu debuggen a Leiter (Log -Rotationsfunktion) Konfigurationsdatei, führen Sie die aus Lehnrotat Befehl mit dem -D Option und geben Sie die Konfigurationsdatei an:

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

Das war alles, was wir für Sie in diesem Leitfaden hatten. Teilen Sie Ihre Gedanken mit oder stellen Sie Fragen über das Feedback -Formular unten. Sie können auch weitere Beispiele für die Überprüfung der Konfigurationssyntax von Anwendungen oder Diensten teilen, die hier nicht aufgeführt sind. Wir werden Ihre Beispiele gerne dem Leitfaden hinzufügen.