[Eisfair_dev] Erweiterung Verzeichnisbaum

Thomas Quast eisfair at oritopha.de
Fr Mai 15 20:11:00 CEST 2020


Hallo Kay,

Am 14.05.20 um 08:43 schrieb Kay Martinen :

> Am 14.05.20 um 09:34 schrieb Marcus Röckrath:
>>
>> Thomas Quast wrote:
>>
>>> Nun ist es aber so, das vereinzelte Pakete per default eben doch (z.B.)
>>> das Verzeichnis /srv verwenden.
>>
>> Das hat sich in letzter Zeit so ergeben und ist in vielen Distris üblich,
>> dort Daten von Serverdiensten (Datenbanken, WWW, FTP) abzulegen.

> Macht das Nutzen dieser Verzeichnisbäume das portieren/Paketieren nur
> einfacher - entgegen der eigenen Dev Doku? Ich stecke da nicht so drin
> aber ich glaubte immer solche Pfade werden als Optionen oder fest im
> makefile angegeben, das man; vermute ich; eh bearbeiten muß wenn man ein
> Paket für Eisfair macht. So wie für jede andere Distri.

>> Die Skripte selbst sollten von /usr/local nach /usr/lib umziehen.

Was aber eigentlich auch nicht richtig ist.

Im Prinzip kann kann jede Distri ihre Verzeichnisstruktur aufbauen, wie sie
moechte. Da gibt es keine Vorgaben. Man kann auch die Verzeichnisse a, b,
c, ... oder 1, 2, 3, ... oder bla, blub, foo, ... nennen. Aber das macht es
unuebersichtilich und fehlernafaellig.

Um das zu vermeiden, hat man hat sich darauf geeinigt, sich an FHS zu
orientieren.

Im groben kann man es in drei Ebenen unterteiĺen: /, /usr und /usr/local.

/ (ohne /usr, /home, /opt und /srv)
Enthaelt alles, was fuer den Betrieb des Systems notwendig ist.

/usr
Ein Abbild von / enthaelt alles fuer den/die User und den Anwendungen.

/usr/local
Lokal erzeugte Anwendungen (auch Komilate). Also keine von einem Paket
installierte Dateien.

/opt
Dort werden Pakete abgelegt, die sich eben nicht an eine Struktur halten
wollen/koennen. Wird gerne von Paketen verwendet, welche auf beinahe allen
Systemen laufen wollen, ohne sich an einer bestimmten Distributionsspezifischen
Struktur orientieren zu muessen.
Aber auch hier sollte einiges beachtet werden. Pakete sollten in der Form
/opt/<Paket> oder /opt/<Hersteller> abgelegt werden.

/opt/bin, /opt/doc, /opt/include, /opt/info, /opt/lib, und /opt/man sind fuer
den lokalen Admin reserviert.

/srv
Hier werden Daten abgelegt, welche von Diensten, wie z.B. FTP oder Apache
angeboten werden. So z.B. auch /srv/www/html und /srv/www/cgi-bin.

Aber auch Datenbankanwendungen legen hier ihre Daten ab, nicht aber ihre 
Konfigurationen und auch nicht ihre Binaries.

> Das /usr/local frei bleibt finde ich auch sinnvoll. Aber zu /usr/lib
> (und allg. auch zu /var/lib) hätte ich mal ne (theoretische?)
> Grundsatzfrage. Wieso scripte? Oder auch Daten?

Unter /usr/lib sollte nur Bibliotheken (Libraries) zum Programmieren und
fuer Pakete liegen. (Siehe oben). /usr/lib ist das Pendant zu /lib.

> Ich meine, der Verzeichnisast sagt LIB und das sehe ich als Library,
> also als Ort für linux-bibliotheksdateien. Scripte passen da nach meinem
> Verständnis ebenso wenig rein wie z.B. die dhcpd-leases unter /var/lib

/var/lib hat, obwohl es den Anschein erweckt, nichts mit Libraries zu tun.
Dort werden (nach FHS) variable Statusinformationen abgelegt, wie z.B. die
von Dir genannten dhcp-leases.

Gruss,
Thomas

-- 
Packageserver: https://www.oritopha.de/index.txt


Mehr Informationen über die Mailingliste Eisfair_dev