Overzicht
ldd toont de lijst met dynamische bibliotheken die een uitvoerbaar bestand of gedeelde bibliotheek in ELF-formaat (Executable and Linkable Format) nodig heeft tijdens runtime. Dit kan worden gebruikt voor het oplossen van problemen met ontbrekende bibliotheken, het verifiëren van de build-omgeving en beveiligingsanalyses.
Belangrijkste functies
- Controleer de afhankelijkheden van dynamische bibliotheken van een programma
- Controleer het systeem-pad van elke bibliotheek
- Identificeer ontbrekende bibliotheken en ondersteun bij het oplossen van problemen
Belangrijkste opties
Het ldd-commando kan verschillende opties gebruiken om het detailniveau van de uitvoer aan te passen.
Controle van uitvoerinformatie
Gegenereerde opdracht:
Probeer de opdrachtcombinaties.
Uitleg:
`ldd` Voer het commando uit.
Combineer deze opties en voer de opdracht virtueel uit met de AI.
Gebruiksvoorbeelden
Basisgebruik: Controleer afhankelijkheden van /bin/ls
ldd /bin/ls
Toont de lijst met gedeelde bibliotheken die het uitvoerbare bestand /bin/ls nodig heeft.
Controleer afhankelijkheden van /usr/bin/python3 met gedetailleerde informatie
ldd -v /usr/bin/python3
Toont de afhankelijkheden van het uitvoerbare bestand /usr/bin/python3 met gedetailleerde informatie.
Controleer afhankelijkheden van een specifieke gedeelde bibliotheek
ldd /lib/x86_64-linux-gnu/libc.so.6
Controleert de afhankelijkheden van de gedeelde bibliotheek libc.so.6 zelf.
Tips & Aandachtspunten
Belangrijke punten en nuttige tips bij het gebruik van ldd.
Veiligheidswaarschuwing
ldd controleert bibliotheekafhankelijkheden door het uitvoerbare bestand direct uit te voeren. Het gebruik van ldd op onbetrouwbare uitvoerbare bestanden kan daarom een beveiligingsrisico vormen. Voor onbekende binaire bestanden is het veiliger om tools zoals `readelf -d` te gebruiken.
Gebruikstips
- **Debuggen van ontbrekende bibliotheekfouten**: Wanneer u een 'shared library not found'-fout krijgt bij het uitvoeren van een programma, kunt u ldd gebruiken om snel te identificeren welke bibliotheek ontbreekt.
- **Voorbereiden van containeromgevingen**: Bij het maken van containerimages zoals Docker, kunt u ldd gebruiken om de minimale lijst met benodigde bibliotheken te identificeren en de afbeeldingsgrootte te optimaliseren.
- **Verifiëren van cross-compilatieomgevingen**: Nuttig om te controleren of een binair bestand dat is gecompileerd voor een specifieke architectuur, correct is gelinkt aan de juiste bibliotheken.