Skip to content

Dateien und Befehle

Stefan Apetz edited this page Nov 10, 2026 · 2 revisions

Dateien und Befehle

Diese Seite dient der Administration. Für normale Inhaltsänderungen den grafischen Editor verwenden, nicht JSON-Dateien manuell verändern.

Wo liegen die Daten?

Alle Pfade beziehen sich auf das FHEM-Modulverzeichnis (<modpath>). <Device> ist der tatsächliche Name des CMS-Devices.

Pfad Inhalt
FHEM/01_FHEMCMS.pm FHEM-Modul.
FHEM/lib/FHEMCMS/Assets.pm Zugehörige serverseitige Assetverwaltung.
www/fhem-cms/ Gemeinsame Frontenddateien.
www/fhem-cms/<Device>/index.html Generierte Startseite; nicht manuell bearbeiten.
www/fhem-cms/<Device>/media/ Bilder unter Hash-Dateinamen.
fhem-cms-data/<Device>/config.json Live-Konfiguration.
fhem-cms-data/<Device>/draft.json Entwurf, sofern vorhanden.
fhem-cms-data/<Device>/config.json.<Zeit>.bak Konfigurationsbackups.
fhem-cms-data/<Device>/assets.json Assetkatalog mit Namen, Ordnern und Richtlinien.
fhem-cms-data/<Device>/assets/ Privat abgelegte Dokumentdateien.
fhem-cms-data/<Device>/layout-upgrade.json Journal eines begonnenen Layoutupgrades, falls vorhanden.

Dokumente werden über den vom CMS erzeugten Downloadlink ausgeliefert, nicht durch Freigabe des privaten Datenverzeichnisses. Dateinamen auf dem Dateisystem und Anzeigenamen sind bewusst getrennt.

Rechte

Das FHEM-Betriebssystemkonto benötigt passende Schreibrechte. Die Projektanleitung empfiehlt Verzeichnisrechte 0750 und Dateirechte 0640, jeweils mit zur Installation passendem Eigentümer/Gruppe. Nicht pauschal alles mit 777 freigeben.

Fehlende Live-Daten in einem bereits vorhandenen Verzeichnis werden nicht stillschweigend als neue leere Installation ersetzt. Zuerst Sicherung prüfen.

Häufige lesende Befehle

CMS jeweils durch deinen CMS-Device-Namen ersetzen.

Befehl Zweck
get CMS url Relativer Homepagepfad.
get CMS status Vorhandensein eines Entwurfs.
get CMS backups Verfügbare Konfigurationsbackups.
get CMS config Technische Live-Konfiguration als JSON.
get CMS draft Technischer Entwurfsstand; ohne Entwurf der Live-Stand.
get CMS media Gespeicherte Bilder.
get CMS icons Verfügbare FHEM-Icons.
get CMS layoutformat Gespeichertes Layoutformat.
get CMS logreadings MeinSensor auto Geloggte Readings für ein Device.
get CMS history MeinSensor temperature 24h auto auto Historische Punkte zu einem Reading.

Konfigurationen können private Namen, Links und Messwerte enthalten. Ausgaben nicht unbereinigt öffentlich teilen.

Startseite neu erzeugen

set CMS rebuild

Aktualisiert die generierte Startseite und die Frontend-Versionsparameter. Seiten, Entwurf und Backups bleiben erhalten. Nicht mit einem Reset verwechseln.

Alte Layoutdaten umstellen

set CMS layoutupgrade

Das ist eine schreibende Datenumstellung, kein reiner Test. Vorher Sicherungen und Umstellung lesen.

CMS vollständig entfernen

Destruktiv: Die folgenden Befehle entfernen die Daten des genannten CMS-Devices. Nicht zum Beheben eines Anzeige- oder Cachefehlers verwenden.

  1. Vollständige Sicherung anlegen und Wiederherstellbarkeit prüfen.
  2. Tatsächlichen CMS-Device-Namen kontrollieren.
  3. Die Folgen für Seiten, Entwurf, Backups, Bilder und Dokumente berücksichtigen.

Beispiel ausschließlich für ein wirklich zu löschendes Device namens CMS:

set CMS purge CMS
delete CMS

Der wiederholte Name bestätigt die Datenlöschung. delete CMS allein lässt die CMS-Dateien bewusst bestehen. Keine anderen Device-Verzeichnisse oder gemeinsamen Frontenddateien mitlöschen.

Nicht direkt bearbeiten

Generierte Startseiten, Hash-Dateien und den Katalog nicht unabhängig voneinander umbenennen oder verschieben. Auch die alte Anleitung zum direkten Schreiben von Base64-JSON ersetzt nicht die Schema-5-Transaktionsprüfung.

Sicherungen · Fehlerhilfe

Clone this wiki locally