Felsökning av problem med picockpit-client

Pi visas som offline

Kontrollera om tjänsten picockpit-client är aktiv på din Raspberry Pi. Öppna en terminal och skriv:

sudo service picockpit-client status

Detta ger dig följande resultat om picockpit-client är aktiv och fungerar korrekt:

service picockpit-client status, aktiv (körs)

Undersök sedan loggutgången. Du kan dumpa den till en fil med följande kommando och skicka den till oss så att vi kan analysera problemet:

sudo journalctl -u picockpit-client.service -n 1000 > /tmp/log.txt
en del av den logg som tillhandahålls av journalctl

GLIBC-fel

När du försöker installera/köra picockpit-client får du ett meddelande som liknar följande:

/usr/share/picockpit-client/bin/python: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.28' saknas (krävs av /usr/share/picockpit-client/bin/python).
/usr/share/picockpit-client/bin/python: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.25' saknas (krävs av /usr/share/picockpit-client/bin/python).
/usr/share/picockpit-client/bin/python: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.26' saknas (krävs av /usr/share/picockpit-client/bin/python).

Det här problemet visar att du kör en inkompatibelt operativsystem version. Det kan till exempel inträffa om du kör picockpit-client på Raspbian Stretch, den tidigare Raspbian-versionen.

För tillfället är det bara den nuvarande större versionen av Raspberry Pi OS "Buster" stöds.

Teknisk förklaring: Python som levereras med picockpit-client är beroende av en viss version av biblioteket GLIBC, som är 2.28. Andra versioner av Raspbian levereras med äldre/andra versioner av GLIBC.

"Gränssnittet mellan en app och libc är framåtkompatibelt med nyare versioner, men det är inte bakåtkompatibelt med äldre versioner."

lösning för GLIBC-fel

Följande information är inte testad, men jag tillhandahåller den för medlemmar som är villiga att experimentera. Din feedback på den här lösningen är mycket välkommen, Låt oss veta vad som fungerar för dig på vilket operativsystem..

Med hjälp av ett verktyg som kallas patchelfkan du ändra binärer för att använda anpassade versioner av delade (dynamiskt länkade) bibliotek. Du kan alltså lägga till de nödvändiga biblioteken i en egen mapp i ditt katalogträd och ändra picockpit-client's python (som finns i /usr/share/picockpit-client/bin/python ) för att använda dem.

Följande länkar bör vara användbara (observera att de är inte Debian / Raspberry Pi OS-specifik):

Om du går den här vägen och lyckas, meddela oss. så att vi kan dela lösningen med alla.

I framtiden planerar jag att anpassa picockpit-client till språket Go och länka den statiskt mot musl istället för mot glibc. På så sätt bör den kunna flyttas över ett större antal system.

Rapportera problem

När du rapporterar ett annat problem, eller ett problem som inte kan lösas med hjälp av tipsen på den här sidan, se till att inkludera skärmdumpar från PiCockpit-webbgränssnittet och loggar från webbgränssnittet och picockpit-clienten.

logg för picockpit-client

Här finns instruktioner om hur du får tillgång till picockpit-client loggen på Raspberry Pi OS på Raspberry Pis kommandorad:

sudo su
journalctl -u picockpit-client --since "4 dagar sedan" > /tmp/picockpit-client2.txt

Vänligen bifoga loggutdraget till ditt e-postmeddelande.

logg för webbgränssnittet

För att hjälpa oss med ytterligare felsökning kan du också öppna Utvecklingsverktyg (i Chrome: Ctrl + Shift + I) och skicka oss utdata från JavaScript-konsolen. Högerklicka på en av logglinjerna och välj "Spara som" för att spara en loggfil.

Observera: Om du använder Firefox, Edge eller en annan webbläsare kommer du att få tillgång till loggutdata på olika sätt.

För att rapportera ett problem, vänligen kontakta oss via pi3g-kontaktsidan (vårt moderbolag).