30 tapaa vahvistaa määritystiedostot tai komentosarjat Linuxissa
Kokoonpanon syntaksin tarkistus ja/tai testaus on keskeinen vaihe, joka on suoritettava sen jälkeen, kun sovelluksen tai palvelun asetustiedostoon on tehty muutoksia tai jopa päivitysten suorittamisen jälkeen. Tämä auttaa vähentämään mahdollisuuksia, että palvelu ei käynnisty uudelleen määritysvirheiden vuoksi.
Useat sovellukset/ohjelmat tai palveludemonit toimittavat komentoja, joilla tarkistetaan konfiguraatiotiedostojen syntaksin oikeellisuus. Olemme koonneet luettelon Linux-järjestelmien yleisistä sovelluksista ja palveluista sekä niiden määritystiedostojen testaamisesta tai validoinnista.
Huomaa: käytä, jos et ole kirjautunut palvelimelle pääkäyttäjänä, muista käyttää sudo-komentoa tarvittaessa kutsuessasi komentoa, koska jotkin palvelut toimivat pääkäyttäjän oikeuksin ja niiden asetustiedostojen tarkistaminen vaatii pääkäyttäjän. käyttäjäoikeudet.
1. Sudo Command
Voit tarkistaa sudo-määritystiedoston syntaksin käyttämällä visudo-komentoa, joka tukee komentorivivaihtoehtoa --check
tai -c
vain vahvistamaan tiedosto ilman muokkausta. Valinta -f
näyttää virheilmoituksen ja avaa tiedoston muokattavaksi:
visudo -c /etc/sudoers
OR
visudo -c /etc/sudoers.d/my_config
OR
visudo -f /etc/sudoers.d/my_config
2. Bash Script
Voit tarkistaa Bash-skriptien syntaksivirheiden varalta seuraavasti:
bash -n /path/to/scriptname.sh
3. Perl-komentosarjat
Tarkistaaksesi Perl-komentosarjat syntaksivirheiden varalta, käytä seuraavaa komentoa:
perl -c /path/to/scriptname
4. Järjestelmän yksikkötiedostot
systemd-analyze verify -komento mahdollistaa systemd-yksikkötiedoston testaamisen syntaksivirheiden varalta. Se lataa yksikkötiedostoja ja tulostaa varoituksia, jos havaitaan virheitä.
Oletuksena se lataa komentorivillä määritetyt tiedostot argumenttina ja kaikki muut niiden viittaamat yksiköt:
systemd-analyze verify /etc/systemd/system/test.service
5. OpenSSH-palvelin
Voit tarkistaa sshd-määritystiedoston kelvollisuuden ja avainten järkevyyden antamalla seuraavan komennon. Voit tarkistaa tietyn määritystiedoston määrittämällä sen -f
-lipulla:
sshd -t
6. NGINX-verkkopalvelin
Tarkista NGINX-määritystiedosto suorittamalla nginx-komento -t
-lipulla. Jos haluat määrittää toisen asetustiedoston, käytä -c
-lippua:
nginx -t
OR
nginx -t -c /etc/nginx/conf.d/example.com.conf
7. PHP-FPM
Tarkista php-fpm-määritystiedosto suorittamalla seuraava komento. Huomaa, että -t
-lipun kutsuminen kahdesti (-tt)
aiheuttaa kokoonpanon tyhjennyksen ennen poistumista:
php-fpm -t
OR
php-fpm -tt
8. Apache-verkkopalvelin
Voit sitten tarkistaa Apache-verkkopalvelimen määritystiedoston käyttämällä seuraavaa komentoa:
apachectl configtest
Vaihtoehtoisesti voit käyttää seuraavia komentoja RedHat-pohjaisissa jakeluissa:
httpd -t
Suorita Debian-pohjaisissa jakeluissa:
apache2ctl -t
9. HAProxy TCP/HTTP -kuormituksen tasapainotin
HAProxyn kokoonpanoa voidaan testata seuraavalla komennolla, jossa vaihtoehto -f
määrittää tiedoston ja -c
ottaa testitilan käyttöön:
haproxy -f /etc/haproxy/haproxy.cfg -c
10. Lighttpd HTTP-palvelin
Suorita seuraava komento testataksesi Lighttpd-määritystiedoston syntaksia. -t
-komentorivivalinnan avulla Lighttpd voi testata oletusasetustiedostossa syntaksivirheitä ja poistua. Käytä lippua -f
määrittääksesi mukautetun määritystiedoston:
lighttpd -t
OR
lighttpd -t -f /path/to/config/file
11. Apache Tomcat
Tomcat-verkkopalvelin mahdollistaa peruskokoonpanon syntaksin tarkistuksen. Siirry ensin tomcatin asennushakemistoon ja anna seuraava komento:
./bin/catalina.sh configtest
OR
$TOMCAT_HOME/bin/catalina.sh configtest
12. Pound Reverse Proxy
Voit jäsentää Pound-palvelimen määritystiedoston ennen palvelimen käynnistämistä. Tarkista oletusmääritystiedosto suorittamalla pound-komento -c
-lipulla ilman muita argumentteja. Voit määrittää eri asetustiedoston -f
-komentorivivaihtoehdolla:
pound -c
OR
pound -f /path/to/config/file -c
13. Varnishd HTTP Accelerator
Voit tarkistaa varnishd VCL (Varnish Configuration Language) -tiedoston syntaksin mahdollisten virheiden varalta käyttämällä seuraavaa komentoa. Jos kaikki on kunnossa, lakka tyhjentää luodun kokoonpanon, muuten se näyttää tiedostossa tietyn rivinumeron, jossa on virhe:
varnishd -C
OR
varnishd -f /etc/varnish/default.vcl -C
14. Squid Proxy -välimuistipalvelin
Jos haluat välittää Squid-välityspalvelimen välimuistipalvelimen squid-määritystiedoston, anna seuraava komento. Vaihtoehto -k
yhdessä jäsennys- tai debug-alikomentojen kanssa käskee squid-demonia jäsentämään asetustiedoston tai ottamaan käyttöön virheenkorjaustilan:
squid -k parse
squid -k debug
15. Caddy-verkkopalvelin
Jos haluat paljastaa Caddy-verkkopalvelimen kokoonpanon virheet, anna seuraava komento. Ensimmäinen tarkistaa oletuskokoonpanon, vaihtoehtoisesti voit määrittää määritystiedoston --config
-komentorivin avulla:
caddy validate
OR
caddy validate --config /path/to/config/file
16. vsftpd FTP-palvelin
Suorita seuraava komento testataksesi vsftpd FTP-palvelimen määritystiedostoa:
vsftpd
OR
vsftpd -olisten=NO /path/to/vsftpd.testing.conf
17. DHCPD-palvelin
Suorita dhcpd-komento -t
-lipulla tarkistaaksesi dhcpd-palvelimen kokoonpanosyntaksi:
dhcpd -t
OR
dhcpd -t -cf /path/to/dhcpd.conf
18. MySQL-tietokantapalvelin
Käytä seuraavaa komentoa testataksesi MySQL-tietokantapalvelimen määritystiedoston syntaksia. Jos virheitä ei ole komennon suorittamisen jälkeen, palvelin lopettaa poistumiskoodin 0, muussa tapauksessa se näyttää diagnostiikkaviestin ja lopettaa poistumiskoodin 1. :
mysqld --validate-config
19. MariaDB-tietokantapalvelin
Sama komento, jota käytetään MariaDB-tietokantapalvelimelle, toimii myös Mariadb-tietokantapalvelimen määritystiedoston syntaksin tarkistamiseen:
mysqld --validate-config
20. PostgreSQL-palvelin
Seuraava kuvakaappaus näyttää virheen PostgreSQL-määritystiedostossa.
Voit havaita tällaisen virheen siirtymällä postgres-tietokannan käyttäjätiliin ja käyttämällä psql-kuorta. Suorita sitten komento tunnistaaksesi virheet määritystiedostossasi:
postgres=# select sourcefile, name,sourceline,error from pg_file_settings where error is not null;
21. Nagios-valvontatyökalu
Vahvista Nagios-määritykset suorittamalla nagios-komento -v
-lipulla.
nagios -v /usr/local/nagios/etc/nagios.cfg
22. Monitor Monitoring Tool
Suorita oletusmonit-ohjaustiedoston syntaksin tarkistus suorittamalla monit-komento -t
-lipulla. Voit määrittää tietyn ohjaustiedoston käyttämällä -c
-lippua:
monit -t
OR
monit -t -c path/to/control/file
23. Postfix-postipalvelin
Seuraava komento auttaa sinua tarkistamaan Postfixin määritystiedostot syntaksivirheiden varalta.
postfix check
Tämä toinen komento on monisanaisempi kuin ensimmäinen:
postfix -vvv
24. Dovecot IMAP -palvelin
Tarkista Dovecot IMAP -palvelimen määrityssyntaksi doveconf-komennolla. Se poistuu nollavirhekoodilla, jos kaikki on kunnossa, muuten se poistuu nollasta poikkeavalla virhekoodilla ja näyttää virheilmoituksen:
doveconf 1>/dev/null
echo $?
25. Samba-tiedostopalvelin
Voit tarkistaa Samba-tiedostopalvelimen määritystiedoston käyttämällä seuraavaa komentoa:
testparm -v
26. Syslogd/Rsyslogd
Kun käynnistät rsyslod-komennon -N1
-vaihtoehdolla, se ottaa virheenkorjaustilan käyttöön ja tarkistaa myös oletusmääritystiedoston syntaksivirheiden varalta. Käytä -f
-lippua mukautetun määritystiedoston lukemiseen:
rsyslogd -N1
27. DNS (BIND) -palvelin
Voit tarkistaa DNS named -määritystiedoston seuraavasti:
named-checkconf /etc/named.conf
28. NTP – Network Time Protocol
ntpd-määrityssyntaksia voidaan testata seuraavalla komennolla, jossa -d
-lippu mahdollistaa monisanaisen virheenkorjaustilan, -f
määrittää taajuusmuutostiedostonimen. , ja -n
ei tarkoita haarukkaa:
ntpd -d -f /etc/ntp.conf -n
29. OpenStack-Ansible
Suorita seuraava komento tarkistaaksesi OpenStack-ansible-määritystiedoston syntaksi:
openstack-ansible setup-infrastructure.yml --syntax-check
30. Logrotate
Virheenkorjaus logroate (lokin kiertotoiminto) -määritystiedostossa suorita logrotate-komento -d
-vaihtoehdolla ja määritä asetustiedosto:
logrotate -d /etc/logrotate.d/nginx
Siinä kaikki, mitä meillä oli sinulle tässä oppaassa. Jaa ajatuksesi kanssamme tai esitä kysymyksiä alla olevan palautelomakkeen kautta. Voit myös jakaa lisää esimerkkejä siitä, miten voit tarkistaa kaikkien sovellusten tai palveluiden kokoonpanosyntaksin, joita ei ole lueteltu tässä. Lisäämme mielellämme esimerkkejäsi oppaaseen.