Naučite upravljati ovisnostima pomoću naredbe ldd za bolju administraciju vašeg Linux stroja i instaliranih paketa.
Upravljanje ovisnostima sastavni je dio održavanja vašeg Linux sustava. Softver je složen i oslanja se na mnoštvo zajedničkih biblioteka i datoteka. Ponekad postaje teško pratiti datoteke koje zahtijeva aplikacija.
Ovo je mjesto gdje naredba ldd na Linuxu stupa na scenu. ldd je snalažljiv alat naredbenog retka za praćenje ovisnosti zajedničkih objekata koje zahtijeva aplikacija.
Naučimo kako možete koristiti naredbu ldd u svoju korist i postati profesionalac u upravljanju ovisnostima o Linuxu!
Što su ovisnosti paketa?
Softver nije samo samostalni izvorni kod, već kombinacija izvornog izvornog koda i posuđenog koda iz vanjskih biblioteka. Kada te biblioteke i drugi zajednički objekti nedostaju u vašem sustavu, aplikacija koja ovisi o njima može pokvariti rad ili se čak odbiti čak i pokrenuti.
Sve te zajedničke datoteke, paketi, biblioteke itd. kumulativno se nazivaju ovisnostima o Linuxu. Iako vam ova kratka definicija daje okvirnu ideju o ovisnostima, stvarna je slika malo složenija od toga i zato je važno naučiti
što su ovisnosti paketa u dubinu.Što je naredba ldd i kako radi?
ldd je skraćenica za List Dynamic Dependencies. Kao što ime sugerira, ldd ispisuje sve zajedničke objekte potrebne aplikaciji.
Radi pozivanjem dinamičkog povezivača s posebno postavljenim varijable okoline. Kada pokrenete ldd s lokacijom binarne datoteke, ona vraća izlaz koji sadrži popis ovisnosti, njihovu lokaciju i heksadecimalnu vrijednost koja predstavlja mjesto u memoriji gdje su učitane.
Pronalaženje ovisnosti zajedničkih objekata pomoću naredbe ldd
Sada kada imate jasnu predodžbu o tome što je ldd, krenimo praktički i naučimo kako pomoću njega pronaći softverske ovisnosti.
Prije nego naučite kako koristiti ldd, prvo potvrdite da li je instaliran na vašem sustavu tako da ispišete instaliranu verziju ldd-a:
ldd --verzija
Ako se vrati greška "naredba nije pronađena"., morate prvo instalirati ldd.
Na sustavima temeljenim na Ubuntu i Debianu pokrenite:
sudo apt instalirajte libc-bin
Za distribucije temeljene na Archu:
sudo pacman -S glibc
Na RHEL-u i Fedori:
sudo dnf instalirajte glibc-common
S instaliranim ldd-om, sada se možete usredotočiti na učenje kako ga koristiti. Evo osnovne sintakse za naredbu ldd:
ldd binarna_lokacija
U slučaju da ne znate lokaciju binarne datoteke, možete upotrijebiti jedan od mnogi Linux operatori naredbenog retka i kombinirajte izlaz naredbe which s ldd da pronađete ovisnosti za paket:
ldd -zastavica $(koji binarni_naziv)
Naredba ldd nudi četiri različite opcije za izmjenu izlaza. Oni su:
- -v: Ispisuje opširni izlaz uključujući dodatne informacije kao što su informacije o verziji za svaku ovisnost
- -u: Ispisuje sve neiskorištene ovisnosti, što znači ovisnosti koje su učitane, ali nisu implementirane
- -d: Ispisuje nedostajuće objekte i izvodi premještanja
- -r: Ispisuje nedostajuće objekte i funkcije i izvodi premještanja
Upravljanje ovisnostima paketa na Linuxu
S ldd-om u svom softverskom arsenalu, moći ćete riješiti probleme koji se odnose na ovisnost zajedničkog objekta s vašom aplikacijom.
Štoviše, budući da ldd također ispisuje lokaciju na kojoj je biblioteka učitana, moći ćete otkloniti pogreške aplikacije i bolje razumjeti kako je određena biblioteka implementirana. ldd također ispisuje verzije zajedničkih knjižnica koje se koriste u aplikaciji.
Koristeći ovu značajku, možete pregledati svoje aplikacije za potencijalne ranjivosti povezane sa zastarjelom verzijom zajedničke biblioteke.
Upravljanje ovisnostima ključna je vještina koja je ključna za održavanje vašeg Linux sustava zdravim. Međutim, ponekad se paket može pokvariti unatoč tome što su sve njegove ovisnosti ispravne. Važno je da znate kako pronaći i popraviti pokvarene pakete.