Opi riippuvuuden hallinta käyttämällä ldd-komentoa hallitaksesi paremmin Linux-konettasi ja asennettuja paketteja.
Riippuvuuksien hallinta on olennainen osa Linux-järjestelmän ylläpitoa. Ohjelmisto on monimutkainen ja perustuu lukuisiin jaettuihin kirjastoihin ja tiedostoihin. Joskus on vaikea seurata sovelluksen vaatimia tiedostoja.
Tässä tulee esiin ldd-komento Linuxissa. ldd on kekseliäs komentorivityökalu, jolla voit seurata sovelluksen vaatimia jaettujen objektien riippuvuuksia.
Opitaan kuinka voit käyttää ldd-komentoa eduksesi ja tulla ammattilaiseksi Linux-riippuvuuksien hallinnassa!
Mitä ovat pakettiriippuvuudet?
Ohjelmisto ei ole vain erillistä lähdekoodia, vaan pikemminkin alkuperäisen lähdekoodin ja ulkoisista kirjastoista lainatun koodin yhdistelmä. Kun nämä kirjastot ja muut jaetut objektit puuttuvat järjestelmästäsi, niistä riippuvainen sovellus saattaa toimia virheellisesti tai kieltäytyä edes käynnistymästä.
Kaikkia näitä jaettuja tiedostoja, paketteja, kirjastoja jne. kutsutaan kumulatiivisesti riippuvuuksiksi Linuxissa. Vaikka tämä lyhyt määritelmä antaa karkean käsityksen riippuvuuksista, todellinen kuva on hieman monimutkaisempi, ja siksi on tärkeää oppia
mitä pakettiriippuvuudet ovat perusteellisesti.Mikä on ldd-komento ja miten se toimii?
ldd on lyhenne sanoista List Dynamic Dependencies. Kuten nimestä voi päätellä, ldd luettelee kaikki sovelluksen tarvitsemat jaetut objektit.
Se toimii kutsumalla dynaamista linkkeriä erityisesti asetettuna ympäristömuuttujat. Kun suoritat ldd: n binäärisijainnin kanssa, se palauttaa tulosteen, joka sisältää luettelon riippuvuuksista, niiden sijainnin ja heksadesimaaliarvon, joka ilmaisee, missä muistissa ne on ladattu.
Jaettujen objektien riippuvuuksien etsiminen ldd-komennolla
Nyt kun sinulla on selkeä käsitys siitä, mistä ldd: ssä on kyse, lähdetään käytännön toimiin ja opit kuinka voit löytää ohjelmistoriippuvuuksia sen avulla.
Ennen kuin opit käyttämään ldd: tä, varmista ensin, onko se asennettu järjestelmääsi tulostamalla ldd: n asennettu versio:
ldd -- versio
Jos se palaa "komentoa ei löydy" -virhe, sinun on ensin asennettava ldd.
Suorita Ubuntu- ja Debian-pohjaisissa järjestelmissä:
sudo apt install libc-bin
Arch-pohjaiset jakelut:
sudo pacman -S glibc
RHEL: ssä ja Fedorassa:
sudo dnf asentaa glibc-common
Kun ldd on asennettu, voit nyt keskittyä sen käytön oppimiseen. Tässä on ldd-komennon perussyntaksi:
ldd binaarinen_sijainti
Jos et tiedä binaarin sijaintia, voit käyttää jotakin seuraavista monet Linuxin komentorivioperaattorit ja yhdistä what-komennon tulos ldd: hen löytääksesi paketin riippuvuudet:
ldd -lippu $(joka binäärinimi)
ldd-komento tarjoaa neljä eri vaihtoehtoa tulosteen muokkaamiseen. He ovat:
- -v: Tulostaa monisanaisen tulosteen, joka sisältää lisätietoja, kuten kunkin riippuvuuden versiotiedot
- -u: Tulostaa kaikki käyttämättömät riippuvuudet eli riippuvuudet, jotka on ladattu mutta joita ei ole otettu käyttöön
- -d: Tulostaa puuttuvat esineet ja suorittaa siirtoja
- -r: Tulostaa puuttuvat esineet ja toiminnot ja suorittaa siirrot
Pakettiriippuvuuksien hallinta Linuxissa
Kun ohjelmistoarsenaalissasi on ldd, voit ratkaista sovelluksesi jaettujen objektien riippuvuuteen liittyviä ongelmia.
Lisäksi, koska ldd näyttää myös kirjaston latauspaikan, voit tehdä sovelluksen virheenkorjauksen ja ymmärtää paremmin, kuinka tietty kirjasto on toteutettu. ldd tulostaa myös sovelluksessa käytettyjen jaettujen kirjastojen versiot.
Tämän ominaisuuden avulla voit tarkistaa sovelluksesi mahdollisten haavoittuvuuksien varalta, jotka liittyvät jaetun kirjaston vanhentuneeseen versioon.
Riippuvuuden hallinta on ydintaito, joka on ratkaisevan tärkeä, jotta Linux-järjestelmäsi pysyy kunnossa. Joskus paketti voi kuitenkin rikkoutua, vaikka kaikki sen riippuvuudet ovat terveitä. On tärkeää, että osaat löytää ja korjata rikkinäiset paketit.