[Solved] Upgrade Nerd-/Dev-Pack zerstört Abhängigkeiten zwischen Python3 und glibc


hawihoney

Recommended Posts

Ich benötige dringend Eure Hilfe. Ich habe bereits in den beiden Plugin Foren geschrieben aber auf Grund eigener Erfahrung weiß ich, dass eine Reaktion dort etwas dauern kann.

 

Gestern wurde ein Update der beiden o.g. Plugins veröffentlicht. Wie üblich habe ich diese zeitnah installiert. Das war nicht das Problem.

 

Da ich aber einmal dabei war, habe ich gleich auf der Settings-Seite der beiden Plugins "Apply" gedrückt. Dadurch wurden alle installierten Pakete auf den letzten Stand gebracht. Seit dem laufen hier keine Python Skripte mehr:

 

root@Tower:~# python3
python3: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by /usr/lib64/libpython3.9.so.1.0)
python3: /lib64/libc.so.6: version `GLIBC_2.33' not found (required by /usr/lib64/libpython3.9.so.1.0)

 

Das Problem ist, dass selbst nach Deinstallation der Pakete (oder durch Deinstallation der Plugins oder durch einen Reboot) nicht mehr der alte Zustand herzustellen ist. Nerd-Pack enthält Python3 und Dev-Pack (bzw. Unraid) glibc. Deren Abhängigkeiten sind aber ungültig. Egal was ich mache keines meiner dutzenden Python3 Skripte läuft mehr.

 

Hättet Ihr eine Idee?

 

Vielen Dank.

 

Edited by hawihoney
Link to comment
55 minutes ago, hawihoney said:

Hättet Ihr eine Idee?

Probier bitte mal das iSCSI plugin, dort wäre auch Pyhton3 enthalten, ist aber jetzt keine wirkliche Lösung sondern nur ein Workaraound.

Vorher aber das Python3 Paket vom NerdPack deinstallieren.

 

Du könntest dir auch das Python3 Paket selbst installieren oder automatisiert beim booten installieren lassen wenn du das Paket für Slackware 14.2 runterlädst und dann in den Ordner /boot/extra packst.

 

Was ich noch anbieten könnte wäre ein Docker Container (den ich nicht veröffentlicht habe) der Python3 Skripte ausführt (verwende ich selbst für einen Temperatursensor der per USB an unRAID dran hängt).

  • Like 1
  • Thanks 1
Link to comment

Vielen Dank. Ich habe heute die wichtigsten Skripte von Python auf Bash umgestellt. Diese Diskrepanz der Pakete im Dev/Nerd Plugin hatte ich schon Mal. Ich bin das jetzt satt.

 

Bleiben noch meine vielen Plex Skripte die auf die Plex Web API zugreifen und die Ergebnisse interpretieren. Das wird schwierig mit Bash.

 

Link to comment
2 minutes ago, hawihoney said:

Bleiben noch meine vielen Plex Skripte die auf die Plex Web API zugreifen und die Ergebnisse interpretieren. Das wird schwierig mit Bash.

Da steig ich dann wieder aus. Sollte aber mit Bash auch irgendwie möglich sein wahrscheinlich aber ob sich das lohnt...

 

Aber Plex steig ich sowieso aus... Ewiger Emby Nutzer...

 

Nur so als Nebeninfo das Python3 package das in iSCSI enthalten ist sollte eigentlich auf "jeder" version von unRAID funktionieren.

  • Thanks 1
Link to comment
21 minutes ago, ich777 said:

Download the packages for Slackware 14.2 and put it in the folder /boot/extra

 

Das ist eine schwierige Situation. Mir ist nicht bekannt welche anderen Pakete auf der Version von glibc aufgebaut wurden. Wenn ich diese aktualisiere, dann könnte ich doch u.U. andere Funktionalitäten aushebeln, oder ist das bei Linux nicht so?

 

Das bedeutet dann im Umkehrschluss, dass ich Python downgraden müsste. Wo bekäme ich denn ein Downgrade Paket von Python3 von Slackware, welches kompatibel mit der aktuellen Version (6.9.2) von Unraid ist und mit glibc 2.30 läuft?

 

Was mich aber meisten an den beiden Plugins stört: Die stammen von Limetech Entwicklern und dafür reagieren die extrem langsam auf solche Fehler in den Abhängigkeiten ...

 

Link to comment
1 hour ago, hawihoney said:

Das ist eine schwierige Situation. Mir ist nicht bekannt welche anderen Pakete auf der Version von glibc aufgebaut wurden. Wenn ich diese aktualisiere, dann könnte ich doch u.U. andere Funktionalitäten aushebeln, oder ist das bei Linux nicht so?

Sorry hab mich hier falsch ausgedrückt und hab auch meinen Post schon aktualisiert, nicht glibc runterladen, hab tmux/screen gemeint (hätte ich auch so gequotet und hab nicht geschrieben packag sonder packages. ;)

Aber ja kann man falsch verstehen.

 

@hawihoney ich hab auch weiter oben gemeint das du dir Python3 für Slackware 14.2 runterladen könntest und das installieren, oder du kannst dir auch mein Python3 package installieren das ich für iSCSI kompiliert hab: Python3.9 (bitte nichts sagen ich weiß das dort 3.8.5 steht ist aber 3.9, ich habs nicht geändert da ich viele andere Pakete/Skripte bei mir zerstören würd... :P )

Einfach die tgz runterladen und dann mit "installpkg" installieren oder wie oben erwähnt in /boot/extra reinschmeißen.

Link to comment
1 hour ago, ich777 said:

oder du kannst dir auch mein Python3 package installieren das ich für iSCSI kompiliert hab: Python3.9 (bitte nichts sagen ich weiß das dort 3.8.5 steht ist aber 3.9, ich habs nicht geändert da ich viele andere Pakete/Skripte bei mir zerstören würd... :P )

Einfach die tgz runterladen und dann mit "installpkg" installieren oder wie oben erwähnt in /boot/extra reinschmeißen.

hab' das mit deinem Python3.9 package probiert – allerdings ohne neustart – immer noch die gleiche meldung.

zudem auch noch das slackware 14.2 package "tmux-3.2a-x86_64-1.txz" installiert – keine änderung. btw. NerdPack meldet auch danach beim Update-Check ein Update für tmux als vorhanden.

 

ist ein neustart zwingend notwendig? und sehe ich das richtig, daß ich dann dein Python3.9 + tmux package in den /boot/extra/ lege, sodaß diese dann beim neustart installiert werden (und evtl. vorhandene/bereits installierte versionen überschreiben/ersetzen)?

Edited by s.Oliver
Link to comment
10 minutes ago, s.Oliver said:

hab' das mit deinem Python3.9 package probiert – allerdings ohne neustart – immer noch die gleiche meldung.

Hast du die anderen pakete vorher deinstalliert?

Sonst müsstest du mit upgradepkg arbeiten.

 

Wenn mein python package nicht mehr funktioniert würde auch iSCSI nicht mehr funktionieren.

 

11 minutes ago, s.Oliver said:

ist ein neustart zwingend notwendig? und sehe ich das richtig, daß ich dann dein Python3.9 + tmux package in den /boot/extra/ lege

Nein, aber wenn du jetzt schon rumprobiert hast würde ich das alles mal auf deinstallieren setzen im nerdpack sonst hast du wieder das gleiche problem nach einem neustart und dann die 2 packages von hand nachinstallieren.

Link to comment
20 minutes ago, ich777 said:

Hast du die anderen pakete vorher deinstalliert?

Sonst müsstest du mit upgradepkg arbeiten.

hatte ich sowohl als auch.

 

Wenn mein python package nicht mehr funktioniert würde auch iSCSI nicht mehr funktionieren.

kein thema, da würd' ich nicht dran rütteln wollen.

 

Nein, aber wenn du jetzt schon rumprobiert hast würde ich das alles mal auf deinstallieren setzen im nerdpack sonst hast du wieder das gleiche problem nach einem neustart und dann die 2 packages von hand nachinstallieren.

also soeben nochmal mit removepkg sowohl python, als auch tmux deinstalliert. dann von hand installiert, danach leider die gleiche fehlermeldung.

 

nachtrag: funktioniert jetzt wieder.

kann es sein, daß das im zusammenhang mit dem (soeben deinstalliertem) perl package steht?

obwohl ich jetzt sehe, daß es doch wieder installiert ist – strange.

Edited by s.Oliver
Link to comment
1 hour ago, s.Oliver said:

nachtrag: funktioniert jetzt wieder.

Was funktioniert jetzt wieder?

 

1 hour ago, s.Oliver said:

perl

Für was brauchst du das überhaupt? Bitte sag nicht System Temp Plugin... 😅

 

Hast du neu gestartet? Bzw hast im NerdPack die pakete deinstalliert bzw das ganze NerdPack runtergeschmissen?

Link to comment
18 hours ago, ich777 said:

Was funktioniert jetzt wieder?

Für was brauchst du das überhaupt? Bitte sag nicht System Temp Plugin... 😅

Hast du neu gestartet? Bzw hast im NerdPack die pakete deinstalliert bzw das ganze NerdPack runtergeschmissen?

tmux funktioniert bei mir jetzt wieder (ohne neustart von unRAID).

perl ist ein überbleibsel aus alten zeiten, als unRAID noch bare metal lief.

ich hatte alles probiert, inkl. deinstallation via Nerd Pack (aber auch manuell in der shell) – (tmux) hatte nie funktioniert, immer die gleiche obige fehlermeldung. dann schmieß ich perl runter und installierte tmux via Nerd Pack nochmals und voila – funktioniert wieder.

ABER: wenn ich jetzt im Nerd Pack nachsehe, ist perl wieder installiert (evtl. eine abhängigkeit von einem anderen tool? aber kein python package) obwohl ich ja zwischenzeitlich schon mal deine version per shell installierte).

 

unter /boot/config/plugins/NerdPack/packages/6.9 sind bei mir jetzt:

iftop-1.0.4-x86_64-2.txz
iotop-0.6-x86_64-1_fs.tgz
mcelog-161-x86_64-1.txz
ncurses-terminfo-6.1.20191130-x86_64-1.txz
perl-5.32.0-x86_64-1.txz
tmux-3.1.0-x86_64-1.txz
unrar-5.8.5-x86_64-1_SBo.txz
utempter-1.2.0-x86_64-3.txz
 

ich weiß leider nicht mehr genau, was ich per hand letztenendes alles de- bzw. installierte, aber auf jedenfall geht jetzt mein oft benötigtes tmux wieder.

Edited by s.Oliver
Link to comment
  • hawihoney changed the title to [Solved] Upgrade Nerd-/Dev-Pack zerstört Abhängigkeiten zwischen Python3 und glibc
5 minutes ago, hawihoney said:

Nachdem ich Limetech per Mail auf die beiden Support Threads der Nerd-/Dev-Pack Plugins hingewiesen hatte, erhielt ich eine Antwort von Jon.

Nur als Info: wird intern schon diskutiert und auch aktiv nach einer Lösung gesucht das so etwas nicht mehr passiert.

Link to comment
1 hour ago, ich777 said:

Nur als Info

 

Danke, es betrifft ja nicht nur die beiden Plugins untereinander sondern unter Umständenn auch Unraid selbst. Da gehört eine stabile - ggfs. automatische - Lösung her.

 

Hatte alles Wichtige (Backup, etc.) in Panik sehr schnell von Python auf Bash umgestellt. Lediglich meine Convenience Skripte (z.B. Plex) lagen brach. Die laufen jetzt im Moment der Reihe nach durch.

 

Mein "Wichtigstes" Skript (ich nenne es NZBGet Handler) konnte nicht laufen - das hat mich am meisten gestört. Das Skript prüft ob der Player (Plex) Content nach extern liefert, ein Parity Check (Unraid) läuft, ein vorgegebenes Zeitfenster existiert (22:00-04:00) und NZBGet läuft oder nicht. Abhängig davon wird NZBGet maschinell pausiert oder gestartet.

 

Edited by hawihoney
Link to comment
38 minutes ago, hawihoney said:

Hatte alles Wichtige (Backup, etc.) in Panik sehr schnell von Python auf Bash umgestellt. Lediglich meine Convenience Skripte (z.B. Plex) lagen brach. Die laufen jetzt im Moment der Reihe nach durch.

Wieder nur als Info: wenn ich es weiß oder irgendwer ein spezielles Paket braucht kompilier ich es auch mal gern wenn Bedarf besteht, hab da kein Problem damit. :)

 

39 minutes ago, hawihoney said:

Danke, es betrifft ja nicht nur die beiden Plugins untereinander sondern unter Umständenn auch Unraid selbst. Da gehört eine stabile - ggfs. automatische - Lösung her.

Wie gesagt sollte nicht mehr passieren, ich verstehe aber auch den Maintainer, der kann auch nicht jedes einzelne Paket probieren ob alles funktioniert bei der fülle an Paketen die über das NerdPack angeboten wird.

 

 

Ich vertrete die Philosophie alles in Docker auszulagern bzw. so wenig wie möglich an Skripten selbst auf unRAID laufen zu lassen deshalb hab ich mir auch den Python Container geschrieben, natürlich lässt sich das nicht immer ganz vermeiden alle Skripte in Containern laufen zu lassen...

Link to comment
2 hours ago, ich777 said:

Python Container

 

Ganz ehrlich, ich verstehe das nicht. Habe mal bei Github nachgeschaut aber nix verstanden. Wie geht das?

 

Ich habe ca. 20-30 Python Skripte die täglich/wöchentlich/monatlich/jährlich via User Scripts laufen. Wie packe ich die in einen Python Docker Container?

 

Link to comment
  • 2 weeks later...

I am having a similar issue but with python2.7 which is apparently used by iotop? Running either iotop or python generates the following error:

root@beta:~# python
python: /lib64/libc.so.6: version `GLIBC_2.33' not found (required by /usr/lib64/libpython2.7.so.1.0)
root@beta:~# iotop
/usr/bin/python: /lib64/libc.so.6: version `GLIBC_2.33' not found (required by /usr/lib64/libpython2.7.so.1.0)
root@beta:~#

 

Link to comment
  • 4 weeks later...
2 minutes ago, mgutt said:

Die Frage ist, wenn ich heute ein Script in Python 2 schreibe, worauf ich achten muss, damit ich Probleme beim Update vermeide.

Wie meinst du beim updaten auf Python3 oder bleibst du bei Python2?

 

Wenn du nur eine neuere version von Python2 verwendest solltest du keine Probleme haben, nur beim wechsel von Python2 auf Python3 hast du dann wahrscheinlich Probleme aber das ist dann wieder Python spezifisch...

Link to comment
34 minutes ago, ich777 said:

aber das ist dann wieder Python spezifisch...

Genau das hätte ich gerne gewusst. Aber wenn ich das hier richtig verstehe, dann ist die Schreibweise komplett unterschiedlich, weshalb man gar nichts in Python 2 schreiben kann, was nachher auch in 3 läuft:

http://python-future.org/automatic_conversion.html

 

Also lieber gleich in 3 schreiben und evtl alte Scripte durch den Konverter jagen.

Link to comment
3 minutes ago, mgutt said:

Also lieber gleich in 3 schreiben und evtl alte Scripte durch den Konverter jagen.

Genau, das mit dem converter, ich weiß nicht...

Ich hab mich damals auch für Python3 entschieden als es gerade rauskam und gegen Python2 obwohl mir alle geraten haben das ich Python2 nehmen soll weil es eben etabliert ist, jetzt bin ich froh über die Entscheidung. :)

 

Hab früher viel mit Python gemacht, jetzt keine Zeit mehr für so Späße... :D

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.