Heim >System-Tutorial >LINUX >ldd-Befehl unter Linux: So finden und verwalten Sie Paketabhängigkeiten einfach

ldd-Befehl unter Linux: So finden und verwalten Sie Paketabhängigkeiten einfach

WBOY
WBOYnach vorne
2024-02-10 16:30:061132Durchsuche

Wenn Sie ein Linux-Benutzer sind, müssen Sie möglicherweise häufig verschiedene Softwarepakete installieren oder deinstallieren. Aber wussten Sie, dass jedes Softwarepaket von einigen gemeinsam genutzten Objektdateien abhängt, die von anderen Softwarepaketen bereitgestellt werden? Wenn diese Objektdateien fehlen oder beschädigt sind, funktioniert Ihr Paket möglicherweise nicht richtig oder startet überhaupt nicht. Daher ist das Wissen, wie man Paketabhängigkeiten findet und verwaltet, eine sehr nützliche Fähigkeit, die Ihnen bei der Wartung und Optimierung Ihres Linux-Systems helfen kann. In diesem Artikel wird ein leistungsstarkes Befehlszeilentool namens ldd vorgestellt, mit dem Sie Softwarepaketabhängigkeiten unter Linux mit dem Befehl ldd wie ein Profi verwalten können.

Was sind Paketabhängigkeiten?

Software ist nicht nur unabhängiger Quellcode, sondern eine Kombination aus lokalem Quellcode und aus externen Bibliotheken entliehenem Code. Wenn diese Bibliotheken und andere gemeinsam genutzte Objekte in Ihrem System fehlen, kann es bei Anwendungen, die von ihnen abhängen, zu Fehlfunktionen kommen oder sich sogar weigern, zu starten.

Alle diese gemeinsam genutzten Dateien, Pakete, Bibliotheken usw. werden unter Linux zusammenfassend als Abhängigkeiten bezeichnet. Während diese kurze Definition Ihnen eine ungefähre Vorstellung vermittelt, ist die Realität komplexer, weshalb es wichtig ist, ein tiefes Verständnis der Paketabhängigkeiten zu haben.

Was ist der LDD-Befehl und wie funktioniert er?

ldd ist die Abkürzung für List Dynamic Dependencies. Wie der Name schon sagt, listet ldd alle von der Anwendung benötigten gemeinsamen Objekte auf.

Es ruft den dynamischen Linker auf, indem es spezielle Umgebungsvariablen festlegt. Wenn Sie ldd mit dem Speicherort der Binärdatei ausführen, wird eine Ausgabe zurückgegeben, die eine Liste von Abhängigkeiten, deren Speicherorte und Hexadezimalwerte enthält, die ihr Laden in den Speicher darstellen.

Verwenden Sie den Befehl ldd, um Abhängigkeiten von gemeinsam genutzten Objekten zu finden

Da Sie nun ein klares Verständnis der Grundkonzepte von ldd haben, können wir uns an die Arbeit machen und lernen, wie man damit Abhängigkeiten von Software findet.

Bevor Sie lernen, wie Sie ldd verwenden, überprüfen Sie bitte, ob auf Ihrem System ldd installiert ist. Sie können dies bestätigen, indem Sie die installierte ldd-Version ausdrucken:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]
└─$ ldd --version
ldd-Befehl unter Linux: So finden und verwalten Sie Paketabhängigkeiten einfach

Wenn der Fehler „Befehl nicht gefunden“ zurückgegeben wird, müssen Sie zuerst ldd installieren.

Führen Sie den folgenden Befehl aus, um auf Ubuntu- und Debian-basierten Systemen zu installieren:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]
└─$ sudo apt install libc-bin

Für Arch-basierte Distributionen:

sudo pacman -S glibc

Für RHEL und Fedora:

sudo dnf install glibc-common

Wenn ldd installiert ist, können Sie sich jetzt darauf konzentrieren, die Verwendung zu erlernen. Hier ist die grundlegende Syntax des ldd-Befehls:

ldd 二进制文件路径
ldd-Befehl unter Linux: So finden und verwalten Sie Paketabhängigkeiten einfach

Wenn Sie den Speicherort der Binärdateien nicht kennen, können Sie einen der Linux-Befehlszeilenoperatoren nutzen und die Ausgabe des Befehls „which“ mit dem Befehl „ldd“ kombinieren, um die Abhängigkeiten des Pakets zu ermitteln:

ldd -flag $(which binary_name)

Der Befehl ldd bietet vier verschiedene Optionen zum Ändern der Ausgabe. Sie sind:

  • -v: Ausführliche Ausgabe einschließlich Versionsinformationen für jede Abhängigkeit ausgeben
  • -u: Alle nicht verwendeten Abhängigkeiten ausgeben, d. h. Abhängigkeiten, die geladen, aber nicht implementiert sind
  • -d: Fehlende Objekte drucken und Neupositionierung durchführen
  • -r: Fehlende Objekte und Funktionen drucken und Verschiebung durchführen
ldd-Befehl unter Linux: So finden und verwalten Sie Paketabhängigkeiten einfach

Um festzustellen, ob ein bestimmter ausführbarer Daemon TCP Wrapper unterstützt, führen Sie den folgenden Befehl aus.

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]
└─$ sudo ldd /usr/sbin/sshd | grep libwrap
ldd-Befehl unter Linux: So finden und verwalten Sie Paketabhängigkeiten einfach

在 Linux 系统中管理软件包依赖关系

通过本文的介绍,我们了解了ldd命令的基本概念、用法和选项,以及如何利用它来查找和管理软件包依赖关系。ldd命令可以帮助我们识别应用程序所需的共享对象文件,它们的位置和版本,以及是否存在缺失或未使用的依赖项。ldd命令还可以帮助我们调试应用程序和库的问题,以及检查潜在的安全漏洞。ldd命令是一个简单而强大的工具,值得每个Linux用户掌握和使用。

Das obige ist der detaillierte Inhalt vonldd-Befehl unter Linux: So finden und verwalten Sie Paketabhängigkeiten einfach. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:lxlinux.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen