Naučte sa správu závislostí pomocou príkazu ldd, aby ste mohli lepšie spravovať váš počítač so systémom Linux a nainštalované balíky.

Správa závislostí je neoddeliteľnou súčasťou údržby vášho systému Linux. Softvér je zložitý a spolieha sa na množstvo zdieľaných knižníc a súborov. Niekedy je ťažké sledovať súbory požadované aplikáciou.

Tu vstupuje do hry príkaz ldd v systéme Linux. ldd je vynaliezavý nástroj príkazového riadka na sledovanie závislostí zdieľaných objektov požadovaných aplikáciou.

Poďme sa naučiť, ako môžete použiť príkaz ldd vo svoj prospech a stať sa profesionálom v správe závislostí na Linuxe!

Čo sú závislosti balíkov?

Softvér nie je len samostatný zdrojový kód, ale skôr zlúčenie natívneho zdrojového kódu a požičaného kódu z externých knižníc. Keď tieto knižnice a iné zdieľané objekty vo vašom systéme chýbajú, aplikácia, ktorá je na nich závislá, môže zlyhať alebo sa rovno odmietnuť spustiť.

Všetky tieto zdieľané súbory, balíky, knižnice atď. sa kumulatívne nazývajú závislosti na Linuxe. Hoci vám táto krátka definícia poskytuje približnú predstavu o závislostiach, skutočný obraz je o niečo zložitejší, a preto je dôležité naučiť sa

instagram viewer
aké sú závislosti balíkov do hĺbky.

Čo je príkaz ldd a ako funguje?

ldd je skratka pre zoznam dynamických závislostí. Ako už názov napovedá, ldd uvádza zoznam všetkých zdieľaných objektov vyžadovaných aplikáciou.

Funguje to vyvolaním dynamického linkera so špeciálne nastaveným premenné prostredia. Keď spustíte ldd s umiestnením binárneho súboru, vráti výstup obsahujúci zoznam závislostí, ich umiestnenie a hexadecimálnu hodnotu predstavujúcu, kde v pamäti sú načítané.

Hľadanie závislostí zdieľaných objektov pomocou príkazu ldd

Teraz, keď máte jasnú predstavu o tom, o čom je ldd, poďme si to vyskúšať a zistiť, ako s ním môžete nájsť softvérové ​​závislosti.

Predtým, ako sa naučíte používať ldd, najprv potvrďte, či ho máte nainštalovaný vo svojom systéme, vytlačením nainštalovanej verzie ldd:

ldd --verzia

Ak sa vráti chyba "príkaz nenájdený"., musíte najprv nainštalovať ldd.

Na systémoch založených na Ubuntu a Debiane spustite:

sudo apt install libc-bin

Pre distribúcie založené na Arch:

sudo pacman -S glibc

Na RHEL a Fedore:

sudo dnf nainštalujte glibc-common

S nainštalovaným ldd sa teraz môžete sústrediť na učenie sa, ako ho používať. Tu je základná syntax pre príkaz ldd:

ldd binárne_umiestnenie

V prípade, že nepoznáte umiestnenie binárneho súboru, môžete použiť jeden z mnoho operátorov príkazového riadka Linuxu a skombinujte výstup príkazu which s ldd, aby ste našli závislosti pre balík:

ldd -príznak $(ktorý binárny_názov)

Príkaz ldd ponúka štyri rôzne možnosti úpravy výstupu. Oni sú:

  • -v: Vytlačí podrobný výstup vrátane dodatočných informácií, ako sú informácie o verzii pre každú závislosť
  • -u: Vypíše všetky nepoužívané závislosti, čo znamená závislosti, ktoré sú načítané, ale neimplementované
  • -d: Vytlačí chýbajúce objekty a vykoná premiestnenie
  • -r: Vytlačí chýbajúce objekty a funkcie a vykoná premiestnenie

Správa závislostí balíkov v systéme Linux

S ldd vo vašom softvérovom arzenáli budete môcť odstraňovať problémy súvisiace so závislosťou zdieľaných objektov s vašou aplikáciou.

Navyše, keďže ldd zobrazuje aj umiestnenie, kde je načítaná knižnica, budete môcť ladiť aplikáciu a lepšie pochopiť, ako je konkrétna knižnica implementovaná. ldd tiež vytlačí verzie zdieľaných knižníc používaných v aplikácii.

Pomocou tejto funkcie môžete vo svojich aplikáciách auditovať akékoľvek potenciálne zraniteľnosti súvisiace so zastaranou verziou zdieľanej knižnice.

Správa závislostí je základná zručnosť, ktorá je rozhodujúca pre udržanie zdravého systému Linux. Niekedy sa však balík môže pokaziť napriek tomu, že všetky jeho závislosti sú zdravé. Je dôležité, aby ste vedeli nájsť a opraviť poškodené balíky.