Übersicht
ldd zeigt die Liste der dynamischen Bibliotheken an, die eine ausführbare Datei oder eine gemeinsam genutzte Bibliothek im ELF-Format (Executable and Linkable Format) zur Laufzeit benötigt. Dies kann zur Behebung von Problemen mit fehlenden Bibliotheken, zur Überprüfung von Build-Umgebungen und zur Sicherheitsanalyse verwendet werden.
Hauptfunktionen
- Überprüfung der dynamischen Bibliotheksabhängigkeiten eines Programms
- Anzeige des Pfads jeder Bibliothek im System
- Identifizierung fehlender Bibliotheken und Unterstützung bei der Fehlerbehebung
Wichtige Optionen
Der Befehl ldd kann verschiedene Optionen verwenden, um den Detaillierungsgrad der ausgegebenen Informationen zu steuern.
Steuerung der Ausgabe
Erzeugter Befehl:
Kombinieren Sie die Befehle.
Beschreibung:
`ldd` Führen Sie den Befehl aus.
Kombinieren Sie diese Optionen und führen Sie die Befehle virtuell zusammen mit der KI aus.
Anwendungsbeispiele
Grundlegende Verwendung: Überprüfung der Abhängigkeiten von /bin/ls
ldd /bin/ls
Gibt die Liste der gemeinsam genutzten Bibliotheken aus, die von der ausführbaren Datei /bin/ls benötigt werden.
Überprüfung der Abhängigkeiten von /usr/bin/python3 mit detaillierten Informationen
ldd -v /usr/bin/python3
Gibt die Abhängigkeiten der ausführbaren Datei /usr/bin/python3 mit detaillierten Informationen aus.
Überprüfung der Abhängigkeiten einer bestimmten gemeinsam genutzten Bibliothek
ldd /lib/x86_64-linux-gnu/libc.so.6
Überprüft die Abhängigkeiten der gemeinsam genutzten Bibliothek libc.so.6 selbst.
Tipps & Hinweise
Wichtige Hinweise und nützliche Tipps zur Verwendung von ldd.
Sicherheitshinweis
ldd überprüft die Bibliotheksabhängigkeiten, indem es die ausführbare Datei direkt ausführt. Daher kann die Verwendung von ldd für nicht vertrauenswürdige ausführbare Dateien ein Sicherheitsrisiko darstellen. Für unbekannte Binärdateien ist die Verwendung von Tools wie `readelf -d` sicherer.
Anwendungstipps
- **Fehlerbehebung bei fehlenden Bibliotheken**: Wenn beim Ausführen eines Programms der Fehler 'shared library not found' auftritt, kann ldd schnell identifizieren, welche Bibliothek fehlt.
- **Vorbereitung von Container-Umgebungen**: Beim Erstellen von Docker-Images oder ähnlichen Container-Images kann ldd verwendet werden, um die minimal erforderliche Liste von Bibliotheken zu ermitteln und die Image-Größe zu optimieren.
- **Überprüfung von Cross-Compile-Umgebungen**: Nützlich, um zu überprüfen, ob eine für eine bestimmte Architektur kompilierte Binärdatei mit den richtigen Bibliotheken verknüpft wurde.