[Tester gesucht] Neues Gladys Raspberry Pi OS-Bild unter Bullseye

Hallo zusammen!

Die Raspberry Pi Foundation hat letzten Monat eine neue Version von Raspberry Pi OS veröffentlicht, diesmal basierend auf Debian Bullseye.

Bei Gladys hat @VonOx ein neues Build des offiziellen Gladys Raspberry Pi Images auf Bullseye Basis gestartet, damit Gladys-Nutzer auf diese neue Version umsteigen können :slight_smile:

Da es sich um ein großes Systemupdate handelt, werde ich es erst einmal nicht als Standard-Image auf der Website veröffentlichen. Zuerst wäre es toll, wenn Tester, insbesondere im Bereich der Integrationen, die Hardware-Funktionen des OS nutzen (Bluetooth, Zigbee2mqtt per USB, Z-Wave per USB, USB-Kamera) dabei helfen könnten.

Für alle, die uns unterstützen möchten, ist das neue Image hier verfügbar:

ACHTUNG: Dieses Image richtet sich an erfahrene Nutzer und ist nicht „production ready“. Vorerst dient es nur zum Testen, bitte übertragt nicht eure Produktionsinstanz darauf!!

EDIT: Nach den ersten Rückmeldungen hat das Bullseye-Image viele Probleme, ich empfehle derzeit nicht, es zu verwenden. Das Buster-Image auf der Website ist weiterhin das empfohlene Image.

EDIT: Neues Build weiter unten.

(Die .zip-Datei)

Die Installation erfolgt wie gewohnt, ihr müsst dem gleichen Installationshandbuch der Dokumentation folgen :slight_smile:

Falls diese Version laut Feedback ausreichend stabil ist, werde ich das Image auf der Gladys-Website aktualisieren.

Vielen Dank an alle, die Feedback geben!

Hallo Pierre Gilles,
Ich habe gerade dein neues Image V0.2.1 unter bullseye installiert.
Zuerst wird mein USB-Zigbee2mqtt-Dongle nicht erkannt, es ist ein CC2652R. Ich habe neu gestartet, ihn entfernt, wieder eingesteckt… aber ohne Erfolg.
Der USB-Port wird korrekt erkannt (/dev/ttyUSB0-1a86-1a86).
Ich sehe nicht, wo ich einen Fehler gemacht haben könnte.
Ich habe ihn erneut mit meinem offiziellen Produktionsimage (selbe RPI) getestet, es funktioniert einwandfrei.
Bisher habe ich keine anderen Integrationen getestet.
Jean Paul

Danke für dein Feedback und den Test @jparbel! :slight_smile:

Seltsamer Port, das sollte /dev/ttyUSB0 sein

Ich hatte dieses Verhalten immer auf Ubuntu (18.04 & 20.04), ich muss warten, bis der Host gestartet ist, um den Dongle anzuschließen. (Ich habe nie eine Lösung gefunden)

Kannst du mir diese Infos zurückgeben?

  • lsusb
  • ls /dev
  • ls /dev/serial/by-id
  • udevadm info --name=/dev/ttyUSB0
  • docker inspect gladys
  • apt -qq list linux-image-rpi

Danke

@VonOx Kann ich dir die Ergebnisse in einer Datei schicken?
Danke

Ja, kein Problem, ich werde die Formatierung im Forum vornehmen.

Habe ich keine Berechtigung, um eine Textdatei zu senden?

Zur Info, ich schicke dir einen Screenshot der Zigbee2mqtt-Einstellungen

Kannst du dich per SSH mit deinem Raspberry verbinden? (Die verschiedenen Befehle müssen auf dem Pi ausgeführt werden)

Du kannst den Text ohne Probleme in das Forum einfügen oder im schlimmsten Fall Screenshots machen.

@VonOx
Nein, kein Problem mit ssh.
Ach so, das war nur, um es übersichtlicher zu machen und das Forum nicht zu überladen. Hier also der reine Text:

lsusb vor dem Anschließen des Dongles

Bus 001 Gerät 004: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
Bus 001 Gerät 003: ID 0424:ec00 Microchip Technology, Inc. (ehemals SMSC) SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Gerät 002: ID 0424:9514 Microchip Technology, Inc. (ehemals SMSC) SMC9514 Hub
Bus 001 Gerät 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

lsusb nach dem Anschließen des Dongles

Bus 001 Gerät 004: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
Bus 001 Gerät 006: ID 1a86:7523 QinHeng Electronics CH340 serial converter
Bus 001 Gerät 003: ID 0424:ec00 Microchip Technology, Inc. (ehemals SMSC) SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Gerät 002: ID 0424:9514 Microchip Technology, Inc. (ehemals SMSC) SMC9514 Hub
Bus 001 Gerät 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

ls /dev

autofs         loop-control  raw      tty28  tty56                 vcsa1
block          mapper        rfkill   tty29  tty57                 vcsa2
btrfs-control  media0        serial   tty3   tty58                 vcsa3
bus            media1        serial0  tty30  tty59                 vcsa4
cachefiles     mem           shm      tty31  tty6                  vcsa5
cec0           mmcblk0       snd      tty32  tty60                 vcsa6
char           mmcblk0p1     stderr   tty33  tty61                 vcsm-cma
console        mmcblk0p2     stdin    tty34  tty62                 vcsu
disk           net           tty      tty35  tty63                 vcsu1
dma_heap       null          tty0     tty36  tty7                  vcsu2
dri            ppp           tty1     tty37  tty8                  vcsu3
fb0            ptmx          tty10    tty38  tty9                  vcsu4
fd             pts           tty11    tty39  ttyAMA0               vcsu5
full           ram0          tty12    tty4   ttyprintk             vcsu6
fuse           ram1          tty13    tty40  ttyUSB0               vhci
gpiochip0      ram10         tty14    tty41  tty-usb-arduino-nano  video10
gpiomem        ram11         tty15    tty42  uhid                  video11
hwrng          ram12         tty16    tty43  uinput                video12
initctl        ram13         tty17    tty44  urandom               video13
input          ram14         tty18    tty45  v4l                   video14
kmsg           ram15         tty19    tty46  vchiq                 video15
log            ram2          tty2     tty47  vcio                  video16
loop0          ram3          tty20    tty48  vc-mem                video18
loop1          ram4          tty21    tty5   vcs1                  watchdog
loop2          ram5          tty22    tty50  vcs2                  watchdog0
loop3          ram6          tty23    tty51  vcs3
loop4          ram7          tty24    tty52  vcs4
loop5          ram8          tty25    tty53  vcs5
loop6          ram9          tty26    tty54  vcs6
loop7          random        tty27    tty55  vcsa

ls /dev/serial/by-id

usb-1a86_USB_Serial-if00-port0

udevadm info --name=/dev/ttyUSB0

P: /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2/1-1.2:1.0/ttyUSB0/tty/ttyUSB0
N: ttyUSB0
L: 0
S: serial/by-id/usb-1a86_USB_Serial-if00-port0
S: serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0
S: tty-usb-arduino-nano
E: DEVPATH=/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2/1-1.2:1.0/ttyUSB0/tty/ttyUSB0
E: DEVNAME=/dev/ttyUSB0
E: MAJOR=188
E: MINOR=0
E: SUBSYSTEM=tty
E: USEC_INITIALIZED=411420474
E: ID_PATH=platform-3f980000.usb-usb-0:1.2:1.0
E: ID_PATH_TAG=platform-3f980000_usb-usb-0_1_2_1_0
E: ID_VENDOR=1a86
E: ID_VENDOR_ENC=1a86
E: ID_VENDOR_ID=1a86
E: ID_MODEL=USB_Serial
E: ID_MODEL_ENC=USB\x20Serial
E: ID_MODEL_ID=7523
E: ID_REVISION=0264
E: ID_SERIAL=1a86_USB_Serial
E: ID_TYPE=generic
E: ID_BUS=usb
E: ID_USB_INTERFACES=:ff0102:
E: ID_USB_INTERFACE_NUM=00
E: ID_USB_DRIVER=ch341
E: DEVLINKS=/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 /dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0 /dev/tty-usb-arduino-nano
E: TAGS=:systemd:
E: CURRENT_TAGS=:systemd:

docker inspect gladys

[
    {
        "Id": "d3ed0186bf1c6ab287f38c6251483577712195aadd77060256aff9f35b28e2af"                                                                                                                                                             ,
        "Created": "2021-12-07T16:36:24.990719676Z",
        "Path": "docker-entrypoint.sh",
        "Args": [
            "npm",
            "run",
            "start:prod"
        ],
        "State": {
            "Status": "running",
            "Running": true,
            "Paused": false,
            "Restarting": false,
            "OOMKilled": false,
            "Dead": false,
            "Pid": 932,
            "ExitCode": 0,
            "Error": "",
            "StartedAt": "2021-12-09T18:03:25.061679071Z",
            "FinishedAt": "2021-12-09T19:03:16.274495163+01:00"
        },
        "Image": "sha256:0b6844316e0e4983271f3441a3c0092fb453dc30896316b0342615e                                                                                                                                                             d0756cb2d",
        "ResolvConfPath": "/var/lib/docker/containers/d3ed0186bf1c6ab287f38c6251                                                                                                                                                             483577712195aadd77060256aff9f35b28e2af/resolv.conf",
        "HostnamePath": "/var/lib/docker/containers/d3ed0186bf1c6ab287f38c625148                                                                                                                                                             3577712195aadd77060256aff9f35b28e2af/hostname",
        "HostsPath": "/var/lib/docker/containers/d3ed0186bf1c6ab287f38c625148357                                                                                                                                                             7712195aadd77060256aff9f35b28e2af/hosts",
        "LogPath": "/var/lib/docker/containers/d3ed0186bf1c6ab287f38c62514835777                                                                                                                                                             12195aadd77060256aff9f35b28e2af/d3ed0186bf1c6ab287f38c6251483577712195aadd770602                                                                                                                                                             56aff9f35b28e2af-json.log",
        "Name": "/gladys",
        "RestartCount": 0,
        "Driver": "overlay2",
        "Platform": "linux",
        "MountLabel": "",
        "ProcessLabel": "",
        "AppArmorProfile": "",
        "ExecIDs": null,
        "HostConfig": {
            "Binds": [
                "/dev:/dev",
                "/run/udev:/run/udev:ro",
                "/sys/class/gpio:/sys/class/gpio",
                "/var/run/docker.sock:/var/run/docker.sock",
                "/var/lib/gladysassistant:/var/lib/gladysassistant"
            ],
            "ContainerIDFile": "",
            "LogConfig": {
                "Type": "json-file",
                "Config": {
                    "max-size": "10m"
                }
            },
            "NetworkMode": "host",
            "PortBindings": {},
            "RestartPolicy": {
                "Name": "always",
                "MaximumRetryCount": 0
            },
            "AutoRemove": false,
            "VolumeDriver": "",
            "VolumesFrom": null,
            "CapAdd": [
                "SYS_RAWIO"
            ],
            "CapDrop": null,
            "CgroupnsMode": "private",
            "Dns": [],
            "DnsOptions": [],
            "DnsSearch": [],
            "ExtraHosts": null,
            "GroupAdd": null,
            "IpcMode": "private",
            "Cgroup": "",
            "Links": null,
            "OomScoreAdj": 0,
            "PidMode": "",
            "Privileged": true,
            "PublishAllPorts": false,
            "ReadonlyRootfs": false,
            "SecurityOpt": [
                "label=disable"
            ],
            "UTSMode": "",
            "UsernsMode": "",
            "ShmSize": 67108864,
            "Runtime": "runc",
            "ConsoleSize": [
                0,
                0
            ],
            "Isolation": "",
            "CpuShares": 0,
            "Memory": 0,
            "NanoCpus": 0,
            "CgroupParent": "",
            "BlkioWeight": 0,
            "BlkioWeightDevice": [],
            "BlkioDeviceReadBps": null,
            "BlkioDeviceWriteBps": null,
            "BlkioDeviceReadIOps": null,
            "BlkioDeviceWriteIOps": null,
            "CpuPeriod": 0,
            "CpuQuota": 0,
            "CpuRealtimePeriod": 0,
            "CpuRealtimeRuntime": 0,
            "CpusetCpus": "",
            "CpusetMems": "",
            "Devices": [],
            "DeviceCgroupRules": null,
            "DeviceRequests": null,
            "KernelMemory": 0,
            "KernelMemoryTCP": 0,
            "MemoryReservation": 0,
            "MemorySwap": 0,
            "MemorySwappiness": null,
            "OomKillDisable": null,
            "PidsLimit": null,
            "Ulimits": null,
            "CpuCount": 0,
            "CpuPercent": 0,
            "IOMaximumIOps": 0,
            "IOMaximumBandwidth": 0,
            "MaskedPaths": null,
            "ReadonlyPaths": null
        },
        "GraphDriver": {
            "Data": {
                "LowerDir": "/var/lib/docker/overlay2/d4d5ca949cfd6f6559c5ede0c41f3efe4f9504515ebe9dcead5c2aa9738f4dfc-init/diff:/var/lib/docker/overlay2/7889caaeab1f642a1b7830571413e3e590398a11ab44cd7790debc4956500db/diff:/var/lib/docker/overlay2/2c2ceefa783fa17b19f041c013bbb728c9f6eebad7178cb76db4ad25d2a3dd05/diff:/var/lib/docker/overlay2/686b23dd703254abc983dbe1cb17dad19881d76f26f11d7c1a04f5aa09b0130/diff:/var/lib/docker/overlay2/7e3d517be55c534854ac0d1f585b3941d8b73c558e6a80e1c2da1c4e0deda0c5/diff:/var/lib/docker/overlay2/580c49746035e3e3b67b27559b7306701355b7d4ab9794f3cf208bc07d98cfb3/diff:/var/lib/docker/overlay2/7fabce3dd2c0f19017e69d5a5ae6395286fb25dd3d22c8271ce7e75012f796bc/diff:/var/lib/docker/overlay2/3daeb66b469762e0655dd9442fd129974bf93bdff5813563234b2e08bbdd2251/diff:/var/lib/docker/overlay2/fe289df30523cecbdb56a0ff434adf861a3231233064ca4f76fea6b025ea3798/diff:/var/lib/docker/overlay2/a0682d9bc97dbbf59ff4b1e82aff0a81fc706609a3c56d1bdae29801910b2bb3/diff:/var/lib/docker/overlay2/d16f6f016a0198f99786286b92119be782f7749e7f3c62662119037062a32ff8/diff:/var/lib/docker/overlay2/1d1d40e6035610e4116b372e6af2b307ec3497a9069ef4d19feb5540533393e4/diff:/var/lib/docker/overlay2/33df0e09450568870c2844b7835f70b74fa57f4fefac53213a25dcf8096feb8b/diff",
                "MergedDir": "/var/lib/docker/overlay2/d4d5ca949cfd6f6559c5ede0c41f3efe4f9504515ebe9dcead5c2aa9738f4dfc/merged",
                "UpperDir": "/var/lib/docker/overlay2/d4d5ca949cfd6f6559c5ede0c41f3efe4f9504515ebe9dcead5c2aa9738f4dfc/diff",
                "WorkDir": "/var/lib/docker/overlay2/d4d5ca949cfd6f6559c5ede0c41f3efe4f9504515ebe9dcead5c2aa9738f4dfc/work"
            },
            "Name": "overlay2"
        },
        "Mounts": [
            {
                "Type": "bind",
                "Source": "/dev",
                "Destination": "/dev",
                "Mode": "",
                "RW": true,
                "Propagation": "rprivate"
            },
            {
                "Type": "bind",
                "Source": "/run/udev",
                "Destination": "/run/udev",
                "Mode": "ro",
                "RW": false,
                "Propagation": "rprivate"
            },
            {
                "Type": "bind",
                "Source": "/sys/class/gpio",
                "Destination": "/sys/class/gpio",
                "Mode": "",
                "RW": true,
                "Propagation": "rprivate"
            },
            {
                "Type": "bind",
                "Source": "/var/lib/gladysassistant",
                "Destination": "/var/lib/gladysassistant",
                "Mode": "",
                "RW": true,
                "Propagation": "rprivate"
            },
            {
                "Type": "bind",
                "Source": "/var/run/docker.sock",
                "Destination": "/var/run/docker.sock",
                "Mode": "",
                "RW": true,
                "Propagation": "rprivate"
            }
        ],
        "Config": {
            "Hostname": "raspberrypi",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "80/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "NODE_ENV=production",
                "SERVER_PORT=80",
                "TZ=Europe/Paris",
                "SQLITE_FILE_PATH=/var/lib/gladysassistant/gladys-production.db",
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "NODE_VERSION=14.18.1",
                "YARN_VERSION=1.22.15",
                "LD_LIBRARY_PATH=/lib"
            ],
            "Cmd": [
                "npm",
                "run",
                "start:prod"
            ],
            "Image": "gladysassistant/gladys:v4",
            "Volumes": null,
            "WorkingDir": "/src/server",
            "Entrypoint": [
                "docker-entrypoint.sh"
            ],
            "OnBuild": null,
            "Labels": {}
        },
        "NetworkSettings": {
            "Bridge": "",
            "SandboxID": "14acb5506d83b7e13f678db2e27b7e0dc4203ba44c865b222b8a42cae5a201d4",
            "HairpinMode": false,
            "LinkLocalIPv6Address": "",
            "LinkLocalIPv6PrefixLen": 0,
            "Ports": {},
            "SandboxKey": "/var/run/docker/netns/default",
            "SecondaryIPAddresses": null,
            "SecondaryIPv6Addresses": null,
            "EndpointID": "",
            "Gateway": "",
            "GlobalIPv6Address": "",
            "GlobalIPv6PrefixLen": 0,
            "IPAddress": "",
            "IPPrefixLen": 0,
            "IPv6Gateway": "",
            "MacAddress": "",
            "Networks": {
                "host": {
                    "IPAMConfig": null,
                    "Links": null,
                    "Aliases": null,
                    "NetworkID": "a3d6ac6eff080c263c66a928a717ab020d06f1211770ab                                                                                                                                                             8e7217fb63c56bd869",
                    "EndpointID": "a4d7f2dc2e2b67da356512e2760e1c860045cb55f271b                                                                                                                                                             7029ca4aa392a6d7e31",
                    "Gateway": "",
                    "IPAddress": "",
                    "IPPrefixLen": 0,
                    "IPv6Gateway": "",
                    "GlobalIPv6Address": "",
                    "GlobalIPv6PrefixLen": 0,
                    "MacAddress": "",
                    "DriverOpts": null
                }
            }
        }
    }
]

apt -qq list linux-image-rpi

Keine Rückmeldung?

Danke @jparbel, nein, das verschmutzt nicht, man kann formatieren (ich habe deine Nachricht bearbeitet)

@VonOx
Hast du etwas gefunden, oder habe ich als Einziger dieses Problem?
Gute Nacht.

Ich hab nicht enorm viel Zeit, aber ich bin dran. :wink:

Ich habe den Beitrag bearbeitet, um zu sagen, dass das Bullseye-Image derzeit wirklich nicht für die Produktion empfohlen wird, angesichts der Probleme, die damit aufgetreten sind :slight_smile:

Das Buster-Image auf der Website (Commencer avec Gladys | Gladys Assistant) bleibt das empfohlene Image.

Hey ihr JS-Devs, ich brauche eure Hilfe, denn ich verstehe das wirklich nicht

In meinem Container erstelle ich testDocker.js (Ordner server), ohne die Abhängigkeiten anzufassen

var Docker = require('dockerode');
var docker = new Docker();

docker.listContainers(function (err, containers) {
  containers.forEach(function (containerInfo) {
    console.log(containerInfo.Names);
  });
});

Standardmäßig verwendet dockerode den Unix-Socket

Diese Datei funktioniert!!!
image


Aber in Gladys funktioniert es nicht, da ist irgendwo ein Sandkorn, aber ich finde es nicht. Warum ist dockerode null/undefined?

dockerode wird hier initialisiert: Gladys/server/lib/system/system.init.js at master · GladysAssistant/Gladys · GitHub

Vielleicht gibt es hier einen Fehler oder wir kommen nie zu dieser Zeile :thinking:

Hallo,

ich habe gerade das neue Bullseye-Image getestet. Neben den Problemen, die @jparbel und ich (RPI4-Konfiguration) hatten, ist es unmöglich, eine USB-Kamera zu verwenden


und MQTT lässt sich nicht starten

Ich habe einen neuen Build erstellt, ich denke, das Problem ist gelöst, aber ich hatte keine Zeit, es zu testen. Falls jemand Lust und Mut hat.

https://github.com/GladysAssistant/gladys-pi-gen/releases/tag/v0.2.2

Ich sehe deinen Commit, was war das Problem am Ende?

Die cgroup wurde in bullseye auf v2 aktualisiert, dadurch sind einige Container-Anwendungen kaputt gegangen.

Mal sehen, ob das ausreicht (Argument cgroupns bei der Container-Erstellung)

Damit bestimmen wir die Container-IDs

@VonOx Ich habe gerade dein letztes Build installiert, leider ist das Problem für mich nicht behoben, mein USB-Zigbee2mqtt-Dongle (Simplelink – USB-2.4G-Schlüssel, CC2652P/CC2652) wird immer noch nicht erkannt, siehe meine Nachricht vom 21/12.
Gute Nacht.