Wozu dient /lib32 auf einem reinen amd64-System?

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
Benutzeravatar
ingo2
Beiträge: 1125
Registriert: 06.12.2007 18:25:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Wo der gute Riesling wächst

Wozu dient /lib32 auf einem reinen amd64-System?

Beitrag von ingo2 » 04.03.2011 21:12:07

Ich habe hier eine Neuinstallation vom Release "Squeeze-amd64". 32-bit Libraries habe ich bisher (bewußt) keine installiert, soll auch ein reines 64-bit System bleiben.

Jetzt habe ich aber festgestellt, daß es im /-Verzeichnis 2 Verzeichnisse gibt:

* /lib64 mit einem SymLink auf /lib
* lib32 mit nur 43 Dateien (zusammen ca. 2 MB)

Das gleiche Bild unter /usr/lib32: dort sind 250 lib's mit zusammen 5,5 MB.

Nicht daß mich der Platzbedarf jetzt stören würde, aber gehören die da überhaupt hin? (unter Ubuntu-amd64 gab's das Verzeichnis /lib32 z.B. garnicht).

Gibt es eine Möglichkeit, herauszufinden, woher dies lib's kommen?

Viele Grüße,
Ingo

Benutzeravatar
debdog
Beiträge: 652
Registriert: 11.02.2007 10:53:12
Wohnort: Do,womrkoihochdeitschko

Re: Wozu dient /lib32 auf einem reinen amd64-System?

Beitrag von debdog » 04.03.2011 21:51:21

In /lib gehören die nativen Libs für das System.
In /lib32 gehören die für ein 64bit System nicht nativen Libs.
/lib64 gibt es wohl aus Kompatibilitätsgründen z.B. für nicht mittels des Paketmanagements installierte Programme.
http://www.pathname.com/fhs/pub/fhs-2.3.html

Herausfinden, weshalb ein bestimmtes Paket installiert ist, geht z.B. mit

Code: Alles auswählen

aptitude why PAKETNAME
Oben gemachte Angaben, Falls nicht anderweitig Erwähnt, beziehen sich auf Debian Stable (Squeeze) amd64.
"Die Einen glauben zu Wissen, die Anderen wissen zu Glauben."

Benutzeravatar
ingo2
Beiträge: 1125
Registriert: 06.12.2007 18:25:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Wo der gute Riesling wächst

Re: Wozu dient /lib32 auf einem reinen amd64-System?

Beitrag von ingo2 » 04.03.2011 22:18:36

debdog hat geschrieben: Herausfinden, weshalb ein bestimmtes Paket installiert ist, geht z.B. mit

Code: Alles auswählen

aptitude why PAKETNAME
Danke für den Tipp, kannte ich noch nicht.

Aber meine eigentliche Frage war ja, warum überhaupt das Verzeichnis /lib32 auf einem 64-bit Squeeze existiert? Existirert das bei allen Usern? Legt das der Installer per default immer an?

Wie gesagt, ich habe schon alle Pakete kontrolliert, die ich nachträglich installiert habe und keines führt als "depends" irgendwelche 32-bit lib's auf. Auch das Paket "ia32-libs" ist natürlich nicht installiert, das wären nochmal fast 90MB!

Die Lib's in /lib32 (und /lib = /lib64) sind doch eigentlich nur für den Systemstart relevant, wenn der Kernel darauf zugreifen muß, um alle anderen Prozesse zu starten - so habe ich es gelesen.

Vioele Grüße,
ingo

Benutzeravatar
Emess
Beiträge: 3788
Registriert: 07.11.2006 15:02:26
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Im schönen Odenwald
Kontaktdaten:

Re: Wozu dient /lib32 auf einem reinen amd64-System?

Beitrag von Emess » 04.03.2011 22:38:22

mach doch einfach mal ein

Code: Alles auswählen

aptitude why paketname
dann erklärt sich alles von selbst!
Debian Testing (bleibt es auch)
Debian Bookworm KDE Plasma 5x Kernel 6.1.0-21-amd64 (64-bit)
Notebook HP ZBook 17 G2
Quadro K3100M/PCIe/SSE2

http://www.emess62.de

Benutzeravatar
ingo2
Beiträge: 1125
Registriert: 06.12.2007 18:25:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Wo der gute Riesling wächst

Re: Wozu dient /lib32 auf einem reinen amd64-System?

Beitrag von ingo2 » 04.03.2011 22:52:32

Emess hat geschrieben:mach doch einfach mal ein

Code: Alles auswählen

aptitude why paketname
dann erklärt sich alles von selbst!
Dann verate mir doch bitte, welcher Paketname die Dateien in /lib32 enhält - ich weiß es einfach nicht :-(

Benutzeravatar
towo
Beiträge: 4556
Registriert: 27.02.2007 19:49:44
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Wozu dient /lib32 auf einem reinen amd64-System?

Beitrag von towo » 04.03.2011 22:55:48

dpkg -S /lib32/

Benutzeravatar
debdog
Beiträge: 652
Registriert: 11.02.2007 10:53:12
Wohnort: Do,womrkoihochdeitschko

Re: Wozu dient /lib32 auf einem reinen amd64-System?

Beitrag von debdog » 04.03.2011 23:02:01

Code: Alles auswählen

$ ls /lib32/libdbus-1.so   # zum Beispiel
$ aptitude search libdbus
i A libdbus-1-3                          - Einfaches Inter-Prozeß-Nachrichtensystem
  [...]
$ aptitude why libdbus-1-3
i   hplip Hängt ab von libdbus-1-3 (>= 1.0.2)
Oben gemachte Angaben, Falls nicht anderweitig Erwähnt, beziehen sich auf Debian Stable (Squeeze) amd64.
"Die Einen glauben zu Wissen, die Anderen wissen zu Glauben."

Benutzeravatar
ingo2
Beiträge: 1125
Registriert: 06.12.2007 18:25:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Wo der gute Riesling wächst

Re: Wozu dient /lib32 auf einem reinen amd64-System?

Beitrag von ingo2 » 04.03.2011 23:12:21

Hi towo,

das war's: das Paket ist libc6-i386.

Und das interessante: wird absolut nicht gebraucht, kann man problemlos vollständig entfernen, da es von keinem anderen Paket referenziert wird!

Das ist ja jetzt wirklich noch mysteriöser. Ist das ein Bug im Debian-Installer?

Benutzeravatar
Emess
Beiträge: 3788
Registriert: 07.11.2006 15:02:26
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Im schönen Odenwald
Kontaktdaten:

Re: Wozu dient /lib32 auf einem reinen amd64-System?

Beitrag von Emess » 04.03.2011 23:48:09

Da wär ich aber mal schön vorsichtig!
Für wine wird es auf jedenfall gebraucht.
Außerdem:

Code: Alles auswählen

i   libc6-i386     - Embedded GNU C Library: 32-bit shared libraries for AMD64   
Debian Testing (bleibt es auch)
Debian Bookworm KDE Plasma 5x Kernel 6.1.0-21-amd64 (64-bit)
Notebook HP ZBook 17 G2
Quadro K3100M/PCIe/SSE2

http://www.emess62.de

Benutzeravatar
towo
Beiträge: 4556
Registriert: 27.02.2007 19:49:44
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Wozu dient /lib32 auf einem reinen amd64-System?

Beitrag von towo » 04.03.2011 23:49:36

Dolle Aussage.
Für wine würde auch ia32-libs gebraucht.

Benutzeravatar
Emess
Beiträge: 3788
Registriert: 07.11.2006 15:02:26
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Im schönen Odenwald
Kontaktdaten:

Re: Wozu dient /lib32 auf einem reinen amd64-System?

Beitrag von Emess » 05.03.2011 00:04:17

ja und ia32-libs-gtk braucht man für gooleearth.

Was ich damit sagen will, dass man nicht einfach was löscht was man noch gebrauchen kann. Aber das kann ja jeder machen wie er will.
Debian Testing (bleibt es auch)
Debian Bookworm KDE Plasma 5x Kernel 6.1.0-21-amd64 (64-bit)
Notebook HP ZBook 17 G2
Quadro K3100M/PCIe/SSE2

http://www.emess62.de

Benutzeravatar
debdog
Beiträge: 652
Registriert: 11.02.2007 10:53:12
Wohnort: Do,womrkoihochdeitschko

Re: Wozu dient /lib32 auf einem reinen amd64-System?

Beitrag von debdog » 05.03.2011 11:44:12

ingo2 hat geschrieben:Die Lib's in /lib32 (und /lib = /lib64) sind doch eigentlich nur für den Systemstart relevant, wenn der Kernel darauf zugreifen muß, um alle anderen Prozesse zu starten - so habe ich es gelesen.
AFAIK ist dies der Platz für die essentiellen Libs. Das beinhaltet auch die Programme unter /bin und /sbin, die ja nicht nur unbedingt beim Systemstart gebraucht bzw. geladen werden

http://www.pathname.com/fhs/pub/fhs-2.3 ... IESANDKERN
Oben gemachte Angaben, Falls nicht anderweitig Erwähnt, beziehen sich auf Debian Stable (Squeeze) amd64.
"Die Einen glauben zu Wissen, die Anderen wissen zu Glauben."

Benutzeravatar
ingo2
Beiträge: 1125
Registriert: 06.12.2007 18:25:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Wo der gute Riesling wächst

Re: Wozu dient /lib32 auf einem reinen amd64-System?

Beitrag von ingo2 » 05.03.2011 12:04:55

Leute, vielen Dank für die Info!

Jetzt ist mir zumindest der Sinn dieser libc6-i386 klar: die Installations-CD (netinstall) enthält auch den "win32-loader" und "loadlin.exe" und "wubi", damit man wohl auch aus einem Win32-System heraus installieren kann. Da wird dann wohl auch die Libc-32bit benötigt.

Im Moment ist sie hier überflüssig, denn sie wird automatisch als Abhängigkeit bei der Installation von "ia32-libs" mitgezogen. Ich lasse sie dennoch installiert wie Emess empfohlen hat (z.B. ist sie auch für ein 32-bit fakeroot erforderlich).

Ich habe mich nur gewundert, wieso die installiert wird, obwohl ich keine 32-bit Pakete installiert habe - bin schon bedacht, das System sauber zu halten und nicht wahllos vollzumüllen ;-)

Viele Grüße,
ingo

Antworten