Premiere: Totalausfall

Hallo. Ich habe einfach in Gladys ein Update gestartet, indem ich auf …Update… geklickt habe, und meine Konfiguration ist weg. Er erkennt meine E-Mail nicht mehr. Ich bin temp-user… Ich hatte eine Kopie des Gladys-Ordners in var/lib erstellt. Wird mir eine Kopie dieses Ordners wieder Zugriff geben? Danke.

Hallo @canaille17
Wenn du eine « Wiederherstellung » deiner gesicherten Dateien durchführst, solltest du wieder gut loslegen können.
Bei dem, was du beschreibst, hat man den Eindruck, dass Gladys nicht mehr auf dein Datenverzeichnis zeigt :face_with_raised_eyebrow:
Allerdings musst du Gladys vor der Wiederherstellung stoppen: docker stop gladys

ich habe Gemini um Hilfe gebeten. Konkret hat er mich gebeten, Gladys zu stoppen, dann den Ordner gladysassistant aus var/lib von meinem Linux Mint zu kopieren und dann neu zu starten. Immer dieselbe Meldung: E-Mail-Adresse oder Passwort abgelehnt… grrrrr

Entweder ist deine Grundkonfiguration infiziert oder sie zeigt nicht auf das richtige Verzeichnis.

Hast du noch den Befehl für docker run?
Du kannst ihn hier posten, damit wir sehen können, was das Problem sein könnte.

Und wenn du in deinem Gladys-Verzeichnis bist, kannst du das Ergebnis von pwd geben?
Sowie ein ls -a?
Und docker ps -a?

PS: Ich misstraue KIs immer…

cris17@canaille17:~$ docker run
docker: ‹ docker run › erfordert mindestens 1 Argument

Verwendung: docker run [OPTIONS] IMAGE [COMMAND] [ARG…]

Siehe ‹ docker run --help › für weitere Informationen
cris17@canaille17:~$

ich wollte wissen, welchen Befehl du gestartet hast, um Gladys zu starten?

sudo docker stop gladys
sudo docker start gladys

Ich glaube, @mutmut möchte wissen, welchen Befehl du verwendet hast, um Gladys zu installieren. In diesem Befehl steht, wo sich der Ordner mit den Datenbanken von Gladys befindet.

Die Idee ist, den Inhalt dieses Ordners anzusehen und zu versuchen herauszufinden, was nicht funktioniert…

2. Start von Gladys Assistant

Hier ist der „universelle“ Befehl (den du verwendet hast). Er umfasst den Zugriff auf die USB-Ports (Zigbee-Schlüssel) und den Docker-Motor für automatische Updates.

Bash

docker run -d \
  --log-driver json-file \
  --log-opt max-size=10m \
  --restart=always \
  --privileged \
  --network=host \
  --name gladys \
  -e NODE_ENV=production \
  -e SERVER_PORT=80 \
  -e TZ=Europe/Paris \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /var/lib/gladysassistant:/var/lib/gladysassistant \
  -v /dev:/dev \
  gladysassistant/gladys:latest

der Inhalt meines /var/lib

cris17@canaille17:~$ ls -lh /var/lib/gladysassistant
total 1.9M
-rwxrwxrwx 1 root root 476K Feb 27 18:27 gladys-production.db.old
-rwxrwxrwx 1 root root 488K Feb 27 17:56 gladys.db
-rwxrwxrwx 1 root root 488K Feb 27 17:56 gladys.db.bak
-rwxrwxrwx 1 root root 476K Feb 27 17:56 gladys.db.old
drwxrwxrwx 2 root root 4.0K Feb 27 12:15 homekit
drwxrwxrwx 3 root root 4.0K Aug 8 2025 matter
drwxrwxrwx 2 root root 4.0K Aug 8 2025 mosquitto
drwxrwxrwx 4 root root 4.0K Aug 8 2025 zigbee2mqtt
cris17@canaille17:~$

mein Backup-Ordner ist 9,8 MB groß

Normalerweise, wenn dein Backup gut ist, stoppst du Gladys docker stop gladys, kopierst den Inhalt deines Backups nach /car/lib/gladysassistant und kannst dann den Container neu starten docker start gladys.

Achtung, falls du zigbee2mqtt, mqtt oder andere Container über Gladys konfiguriert hast, musst du diese ebenfalls vor der Wiederherstellung stoppen!

Vergiss nicht, deine Webseite nach der Wiederherstellung zu aktualisieren (z. B. einen privaten Browser-Tab verwenden).

ok, ich versuche es ein letztes Mal

Danke

Leere den Ordner /car/lib/gladysassistant, bevor du dein Backup wiederherstellst (falls es gut ist, natürlich!)

ich versuche

danke

für mich gibt es ein Problem: Du hast gladys-production.db.old (Backup der Datenbank) erstellt und dann eine neue Datenbank mit dem Namen gladys.db erstellt, der aber nicht korrekt ist.

Kannst du es testen, indem du gladys-prod…old in gladys-production.db umbenennst? Irgendetwas stimmt jedenfalls bei diesen Umbenennungen nicht.

Ich esse zu Abend, ich komme danach wieder.

ok, ich versuche es

Ich habe gerade den docker run in der Dokumentation überprüft und dir fehlt die Zeile mit der Datenbank:

-e TZ=Europe/Paris \-e SQLITE_FILE_PATH=/var/lib/gladysassistant/gladys-production.db \

Diese Zeile ermöglicht es Gladys, den Speicherort der Datenbank zu erkennen.
Laut deinem ls -lh hast du eine gladys.db um 17:56 Uhr, ich denke, das ist deine ursprüngliche Datenbank (falls du deine Instanz zu dieser Zeit erstellt hast).

Ich würde also sagen, dass du gladys.db in gladys-production.db umbenennen musst.
Dann musst du die fehlende Zeile zum docker run hinzufügen, was dann so aussehen würde:

sudo docker run -d \
--log-driver json-file \
--log-opt max-size=10m \
--cgroupns=host \
--restart=always \
--privileged \
--network=host \
--name gladys \
-e NODE_ENV=production \
-e SERVER_PORT=80 \
-e TZ=Europe/Paris \
-e SQLITE_FILE_PATH=/var/lib/gladysassistant/gladys-production.db \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /var/lib/gladysassistant:/var/lib/gladysassistant \
-v /dev:/dev \
-v /run/udev:/run/udev:ro \
gladysassistant/gladys:v4

danke, ich werde es versuchen…

da ich nicht mehr wusste, wo ich stand, habe ich eine saubere Neuinstallation durchgeführt und so viel wie möglich beibehalten. Ich melde mich wieder an und werde die Datei vorsichtig erneut einfügen, um meine Datenbank wiederherzustellen. Ich werde sehen, ob es läuft… morgen… danke an alle für eure Hilfe…. weiter geht’s, es ist sicher noch nicht vorbei :slight_smile:

kein Problem @canaille17, das Wichtigste ist diese Zeile, die die Datenbank definiert. Die Dateinamen müssen übereinstimmen, damit alles gut funktioniert.
Und vor allem nicht vergessen, den Glady-Container zu stoppen, bevor die Datei ersetzt wird.