GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Was bedeutet das Suffix .d unter Linux?

Lösung 1:

"d" steht für Verzeichnis und ein solches Verzeichnis ist eine Sammlung von Konfigurationsdateien, die oft Fragmente sind, die in der Hauptkonfigurationsdatei enthalten sind. Der Punkt ist, Konfigurationsbedenken zu unterteilen, um die Wartbarkeit zu verbessern.

Wenn Sie eine Unterscheidung wie /etc/httpd/conf haben gegenüber /etc/httpd/conf.d , ist es normalerweise so, dass /etc/httpd/conf enthält verschiedene Arten von Konfigurationsdateien, während eine .d Das Verzeichnis enthält mehrere Instanzen desselben Konfigurationsdateityps (z. B. „zu ladende Module“, „zu aktivierende Sites“ usw.), und der Administrator kann nach Bedarf hinzufügen und entfernen.

Lösung 2:

Die Hauptantriebskraft hinter der Existenz dieser Verzeichnisnamenskonvention ist die einfachere Paketverwaltung von Konfigurationsdateien. Ob es nun rpm, deb oder was auch immer ist, es ist viel einfacher (und wahrscheinlich sicherer), eine Datei in ein Verzeichnis ziehen zu können, sodass sie automatisch in die Konfiguration eines Programms aufgenommen wird, anstatt zu versuchen, eine globale Konfigurationsdatei zu bearbeiten.

Ein gutes Beispiel dafür ist logrotate. Im Verzeichnis /etc/logrotate.d sind Konfigurationsdateien für praktisch jede von Ihnen installierte Anwendung, die ein Protokoll in /var/log führt . Einige sind in der Syslog-Konfiguration gebündelt, da fast jedes System eine Nachrichten-, Wtmp- und Lastlog-Datei hat. Aber wenn Sie Apache auf Ihrem System installieren, brauchen Sie eine einfache Möglichkeit, die Konfiguration zum Rotieren der Apache-Protokolle automatisch hinzuzufügen, also legt es einfach eine Konfigurationsdatei namens httpd in /etc/logrotate.d ab und logrotate ist so konfiguriert, dass die Dateien in diesem Verzeichnis enthalten sind. Jeder gehört dem Paket für den Daemon, und wenn Sie das Paket entfernen, wird die Datei entfernt. Es ist im Grunde eine Möglichkeit, Konfigurationsdateien zu modularisieren. Beachten Sie, dass dies vom Programm unterstützt werden muss, es ist nichts Automatisches, das das System für Sie erledigt oder so. Normalerweise haben Programme, die dies tun, eine Konfigurationsdirektive namens include die angeben, wo sich dieses Verzeichnis im Dateisystem befindet.

logrotate.d könnte sogar der erste Ort sein, an dem diese Konvention außerhalb von init.d verwendet wurde und rc.d Verzeichnisse für Init-Skripte.


Linux
  1. Linux – Was bedeutet ein Punkt nach den Dateiberechtigungsbits?

  2. Was bedeutet in der Ausgabe von Ps?

  3. Linux – Was bedeutet die Errors=mount-Option fortsetzen?

  4. Was bedeutet __init im Linux-Kernel-Code?

  5. Was bedeutet opt ​​(wie im opt-Verzeichnis)? Ist es eine Abkürzung?

Was bedeutet null in Linux und Computing

Was ist die Shell unter Linux?

Was bedeutet Cat-Befehl unter Linux?

Was bedeutet die Tilde (~) am Ende eines Dateinamens??

Absoluter vs. relativer Pfad in Linux:Was ist der Unterschied?

Was bedeutet NT_STATUS_BAD_NETWORK_NAME in Samba?