Module DMS Geschätzte Lektüre: 3 Minuten Notiz: Im Folgenden wird zwischen physischer und virtueller Ordnerstruktur in LIMBAS unterschieden! Hierbei ist die physische Ordnerstruktur die Ordnerstruktur des Betriebssystems auf dem LIMBAS installiert ist. Im Gegensatz dazu ist die virtuelle Ordnerstruktur in den LIMBAS Systemtabellen (also in der Datenbank) definiert und nicht wirklich auf dem Betriebssystem vorhanden. Ordnerstruktur Funktionsweise Alle im DMS hochgeladenen Dateien werden im gleichen Verzeichnis (‚/UPLOAD‘) mit einem Hash als Dateinamen gespeichert. Die Ordnerstruktur, wie sie z.B. im Datei-Manager zu sehen ist, existiert also auf dem Server nicht physisch, sondern wird von LIMBAS virtuell aus der Datenbank erzeugt. Dies macht Dateien berechtigbar und auch leicht verknüpfbar. Beispiel: Möchte ein User z.B. die Datei ‚öffentlicher Ordner/Bilder/Berge.jpg‘ herunterladen, wird vom Server ein Symlink im entsprechenden User-Verzeichnis (‚/USER/<userid>/download/Berge.jpg‘) auf die entsprechende physische Datei (‚/UPLOAD/<geheimer hash>.jpg‘) erstellt. Physischer / virtueller Dateiname, Mimetype, etc. werden über die Systemtabelle ‚ldms_files‘ verwaltet, die virtuelle Ordnerstruktur wird aus der Systemtabelle ‚ldms_structure‘ erzeugt. Anpassung für entfernte Dateisysteme Will man Teile des Upload-Verzeichnis -jedoch nicht das gesamte Verzeichnis- z.B. auf einen NAS auslagern, kann LIMBAS so eingestellt werden, dass es alle Dateien eines bestimmten virtuellen Ordners auch zusammen in einem physischen Ordner gespeichert werden. Dazu muss zunächst im Verzeichnis ‚/UPLOAD/STORAGE/‘ ein Ordner mit beliebigem Namen erstellt werden.Ein Super-Admin muss danach im entsprechenden virtuellen Ordner im Datei-Manager über das Menü ‚Extras‑>Einstellungen‑>Storage folder‘ den erstellten Ordner auswählen. LIMBAS verschiebt daraufhin die physischen Dateien aus dem entsprechenden virtuellen Ordner mit all seinen virtuellen Unterordnern automatisch aus dem Upload-Verzeichnis in den erstellten Unterordner in ‚/UPLOAD/STORAGE/‘ (dies kann je nach Anzahl der Dateien etwas dauern), welcher dann z.B. auf eine NAS gemounted werden kann. DMS-Systemtabellen ldms_files Diese Tabelle enthält einen Datensatz für jede hochgeladene Datei. Zu jeder Datei werden unter anderem der Ordner, der diese Datei enthält (Fremdschlüssel auf ldms_structure), der virtuelle Dateiname, der geheime physische Dateiname (‚/UPLOAD/<secname>‘) und der Mimetype der Datei (Fremdschlüssel auf lmb_mimetypes) gespeichert. ldms_meta Diese Tabelle enthält zu jedem Datensatz in ldms_files genau einen Datensatz mit der selben ID. Hier werden die Metadaten der Dateien, wie z.B. Creator, Titel, oder Erstell-Datum gespeichert. ldms_rules In dieser Tabelle werden zu je einer Gruppe (lmb_groups) und einem Ordner (ldms_structure) die Rechte gespeichert. Über Filter können auch einzelne Files berechtigt werden. ldms_favorites Diese Tabelle enthält zu jedem User (lmb_userdb) die Ordner/Dateien, die er zu seinen Favoriten hinzugefügt hat. ldms_structure Diese Tabelle repräsentiert die virtuelle Ordnerstruktur in LIMBAS. Zu jedem virtuellen Ordner existiert ein Datensatz, der u.a. den Namen des Ordners und die ID des übergeordneten Ordners enthält.