Debian

Debiani paketi sõltuvused

Debiani paketi sõltuvused
Selliste Linuxi distributsioonide jaoks nagu Debian GNU / Linux on neid üle 60.000 erinevat tarkvarapaketti. Kõigil neil on kindel roll. Selles artiklis selgitame, kuidas haldab paketihaldus usaldusväärselt seda tohutut arvu tarkvarapakette installimise, värskendamise või eemaldamise ajal, et teie süsteem toimiks ja oleks täiesti stabiilne.

Debiani GNU / Linuxi puhul viitab see tööriistadele apt, apt-get, aptitude, apt-cache, apt-depend, apt-rdepends, dpkg-deb ja apt-mark.

Tarkvarapakettide kättesaadavus

Nagu juba eespool öeldud, koosneb Linuxi distributsioon tonnidest erinevatest tarkvarapakettidest. Tänaseks on tarkvara üsna keeruline ja seetõttu on tavaline tarkvara jagada mitmeks üksikpaketiks. Neid pakette saab liigitada funktsionaalsuse või rolli järgi, näiteks binaarpaketid, teegid, dokumentatsioon, kasutusnäited ja keelespetsiifilised kogud ning need pakuvad tarkvara ainult valitud osa. Selle jaoks pole kindlat reeglit ja jaotuse teeb kas tööriista arendustiim või paketi hooldaja, kes hoolitseb teie Linuxi distributsiooni tarkvarapaketi eest. Kasutades sobivust, loetleb joonis 1 paketid, mis sisaldavad veebibrauseri Mozilla Firefox erinevate keelte tõlkeid.

Joonis 1: sobivus-Firefox.png

Selline tööviis võimaldab, et iga paketti saab hooldada erinev arendaja või kogu meeskond. Lisaks võimaldab üksikuteks komponentideks jaotamine ka teistel tarkvarapakettidel seda oma eesmärkidel kasutada. Nõutavat funktsionaalsust saab rakendada ja seda pole vaja uuesti leiutada.

Pakettide korraldus

Debiani GNU / Linuxi jaotuse paketihaldustööriistad hoolitsevad pidevalt selle eest, et installitud pakettide sõltuvused oleksid täielikult täidetud. Seda eriti juhul, kui tarkvarapakett on mõeldud teie süsteemi installimiseks, värskendamiseks või kustutamiseks. Puuduvad paketid lisatakse süsteemi või installitud paketid eemaldatakse süsteemist, juhul kui neid enam vaja pole. Joonis 2 näitab seda paketi „mc-data” eemaldamiseks „apt-get” abil. Pakett 'mc-data' soovitab ka paketi 'mc' automaatselt eemaldada, kuna pole enam mõtet installida ilma 'mc-data'.

Joonis 2: apt-get-remove-mc.png

Pakimärgid ja lipud

Töö ajal austavad paketihalduse tööriistad seatud paketilippe ja -märke. Need määratakse kas automaatselt või süsteemiadministraator määrab need käsitsi. Eriti viitab see käitumine lipule „oluline pakett”, mis on määratud pakettidele, mida ei tohiks eemaldada. Enne seda tehakse selge hoiatus (vt joonis 3).

Joonis 3: apt-get-remove.png

Samuti võetakse arvesse kolme märki "automaatne", "käsitsi" ja "hoia". Nad tähistavad paketti automaatselt installituna, käsitsi installituna või seda ei tohi värskendada (hoidke praegust versiooni). Tarkvarapaketil on kas märge „automaatne” või „käsitsi”, kuid mitte mõlemad.

Muu hulgas käsutab käsk apt-mark märke ja lippe järgmiste alamkäskude abil:

Kõigi käsitsi installitud pakettide loetlemiseks väljastage see käsk:

$ apt-mark showmanual
abisõna
abs-juhend
ack-grep
acl
acpi

$

Pakettversiooni hoidmiseks kasutage alamkäsu 'hold'. Allpool olev näide näitab seda paketi „mc” kohta.

# apt-mark hoidke mc
mc ootel
#

Alamkäsk "showhold" loetleb ootel olevad paketid (meie puhul on see ainult pakett "mc"):

# apt-mark showhold
mc
#

Kasutades alternatiivset meetodit pealkirjaga „tabav kinnitamine”, klassifitseeritakse paketid prioriteetide järgi. Apt rakendab neid, et otsustada, kuidas seda tarkvarapaketti ja tarkvarahoidlast saadaval olevaid versioone käsitseda.

Pakendi kirjeldus

Kasutades alternatiivset meetodit pealkirjaga „tabav kinnitamine“, klassifitseeritakse paketid prioriteetide järgi. Apt rakendab neid, et otsustada, kuidas seda tarkvarapaketti ja tarkvarahoidlast saadaval olevaid versioone käsitseda.

Igal tarkvarapaketil on oma standardiseeritud paketikirjeldus. Lisaks muudele väljadele täpsustab see kirjeldus selgesõnaliselt, millistest pakettidest pakett (id) see sõltub. Levitamise spetsiifilised tööriistad eraldavad selle teabe paketi kirjeldusest ning arvutavad ja visualiseerivad teie jaoks sõltuvused. Järgmine näide kasutab käsku apt-cache show paketi 'poppler-utils' paketikirjelduse kuvamiseks (vt joonis 4).

Joonis 4: package-description-poppler-utils.png

Pakendi kirjeldus sisaldab jaotist nimega 'Sõltub'. Selles jaotises on loetletud muud tarkvarapaketid koos versiooninumbriga, millest praegune pakett sõltub. Joonisel 4 on see jaotis punase raamiga ja näitab, et 'poppler-utils' sõltub pakettidest 'libpoppler64', 'libc6', 'libcairo2', 'libfreetype6', 'liblcms2-2', 'libstdc ++ 6' ja "zlib1g".

Näita paketi sõltuvusi

Pakendi kirjelduse lugemine on keeruline viis paketi sõltuvuste väljaselgitamiseks. Järgmisena näitame teile, kuidas seda lihtsustada.

Paketisõltuvuste kuvamiseks käsureal on mitu võimalust. Deb-paketi jaoks kohaliku failina kasutage kahe parameetriga käsku „dpkg-deb” - paketi failinimi ja märksõna „Sõltub”. Allpool toodud näide näitab seda paketi „skypeforlinux-64” puhul.deb ':

$ dpkg-deb -f Allalaadimised / skypeforlinux-64.deb Sõltub
gconf-service, libasound2 (> = 1.0.16), libatk1.0-0 (> = 1.12.4), libc6 (> = 2.17),
libcairo2 (> = 1.2.4), libcups2 (> = 1.4.0), libexpat1 (> = 2.0.1),
libfreetype6 (> = 2.4.2), libgcc1 (> = 1: 4).1.1), libgconf-2-4 (> = 3.2.5),
libgdk-pixbuf2.0-0 (> = 2.22.0), libglib2.0-0 (> = 2.31.8), libgtk2.0-0 (> = 2.24.0),
libnspr4 (> = 2: 4.9-2 ~), libnss3 (> = 2: 3).13.4-2 ~), libpango-1.0-0 (> = 1.14.0),
libpangocairo-1.0-0 (> = 1.14.0), libsecret-1-0 (> = 0.7), libv4l-0 (> = 0.5.0),
libx11-6 (> = 2: 1.4.99.1), libx11-xcb1, libxcb1 (> = 1.6), libxcomposite1 (> = 1: 0.3–1),
libxcursor1 (>> 1.1.2), libxdamage1 (> = 1: 1).1), libxext6, libxfixes3,
libxi6 (> = 2: 1.2.99.4), libxrandr2 (> = 2: 1.2.99.3), libxrender1, libxss1,
libxtst6, apt-transport-https, libfontconfig1 (> = 2.11.0), libdbus-1-3 (> = 1.6.18),
libstdc ++ 6 (> = 4.8.1)
$

Installitud paketi jaoks sama toimingu tegemiseks kasutage 'apt-cache'. Esimene näide ühendab alamkäsu 'show', millele järgneb paketi nimi. Väljund saadetakse käsule „grep”, mis filtreerib rida „Sõltub”:

$ apt-cache näitab xpdf | grep Oleneb
Sõltub: libc6 (> = 2.4), libgcc1 (> = 1: 4).1.1), libpoppler46 (> = 0.26.2),
libstdc ++ 6 (> = 4.1.1), libx11-6, libxm4 (> = 2.3.4), libxt6
$

Käsk 'grep-status -F package -s Depends xpdf' edastab sama teabe.

Täpsemalt öeldes kasutab teine ​​näide jällegi 'apt-cache', kuid selle asemel alamkäsuga 'sõltub'. Alamkäsule järgneb paketi nimi:

$ apt-cache sõltub xpdf-st
xpdf
Sõltub: libc6
Sõltub: libgcc1
Sõltub: libpoppler46
Sõltub: libstdc ++ 6
Sõltub: libx11-6
Sõltub: libxm4
Sõltub: libxt6
Soovitab: poppler-utils
poppler-utils: i386
Soovitab: poppler-data
Soovitab: gsfonts-x11
Soovitab: tassid-bsd
tassid-bsd: i386
Kokkupõrge:
Kokkupõrge:
Kokkupõrge:
Kokkupõrge:
Asendab:
Asendab:
Asendab:
Asendab:
Kokkupõrge: xpdf: i386
$

Ülaltoodud loetelu on üsna pikk ja seda saab lühendada lülitiga '-i' (lühidalt '-oluline'):

$ apt-cache sõltub -i xpdf-st
xpdf
Sõltub: libc6
Sõltub: libgcc1
Sõltub: libpoppler46
Sõltub: libstdc ++ 6
Sõltub: libx11-6
Sõltub: libxm4
Sõltub: libxt6
$

Käsk 'apt-rdepends' teeb sama, kuid versiooniteabega, kui see on kirjelduses täpsustatud:

$ apt-rdepends xpdf
Pakettide loendite lugemine ... Valmis
Sõltuvuspuu ehitamine
Olekuteabe lugemine ... Valmis
xpdf
Sõltub: libc6 (> = 2.4)
Sõltub: libgcc1 (> = 1: 4.1.1)
Sõltub: libpoppler46 (> = 0.26.2)
Sõltub: libstdc ++ 6 (> = 4.1.1)
Sõltub: libx11-6
Sõltub: libxm4 (> = 2.3.4)
Sõltub: libxt6
libc6
Sõltub: libgcc1

$

Käsk 'aptitude' töötab ka lülititega. Sõltuvuste puhul kasutage lülitit '~ R', millele järgneb paketi nimi. Joonis 5 näitab seda paketi 'xpdf' kohta. A-täht „aptitude” väljundi teises veerus tähistab paketti automaatselt installituna.

Joonis 5: sobivus-rdepends.png

Pakendisõltuvused võivad olla veidi keerulised. See võib aidata näidata pakendisõltuvusi graafiliselt. Paketi sõltuvuste graafilise kujutise loomiseks kasutage käsku 'võlgnevus', millele järgneb paketi nimi. Graphvizi paketi tööriist 'dot' muudab kirjelduse pildiks järgmiselt:

$ võlakiri xpdf | punkt -Tpng> graafik.png

Joonisel 6 näete loodud PNG-pilti, mis sisaldab sõltuvusgraafikut.

Joonis 6: punkt.png

Näidake vastupidiseid sõltuvusi

Siiani oleme vastanud küsimusele, milliseid pakette paketi jaoks vaja on. On ka vastupidi - nn vastupidised sõltuvused. Järgmised näited käsitlevad nii paketti kui ka sellest sõltuvaid pakette. Näide number üks kasutab käsku „apt-cache” koos alamkäsuga „rdepends” järgmiselt:

$ apt-cache rdepps xpdf
xpdf
Tagurpidi sõltub:
| oktaav-doc
xpdf: i386
libfontconfig1: i386
| xmds-doc
xfe
wiipdf
| vim-lateksisuit
python-scapy
| rubiin-tioga
| python-tabelid-doc
| lehe krigistamine
| oktaav-doc
| Muttprint-manual
mozplugger
mlpost
libmlpost-ocaml-dev

$

Pakendid, mis sõltuvad teistest pakenditest, on tähistatud toru sümboliga. Neid pakette ei pea teie süsteemi installima, vaid need peavad olema pakettide andmebaasis loetletud.

Järgmine näide kasutab paketti 'xpdf' viitega pakettide loendil 'aptitude' (vt joonis 7).

Joonis 7: sobivuse otsimine.png

Kontrollige puuduvate pakettide installimist

'Apt-get' pakub alamkäsu 'check', mis võimaldab installi valideerida. Kui näete järgmist väljundit, pole ühtegi paketti puudu:

# apt-get kontroll
Pakettide loendite lugemine ... Valmis
Sõltuvuspuu ehitamine
Olekuteabe lugemine ... Valmis
#

Järeldus

Paketisõltuvuste leidmine töötab õigete tööriistadega hästi. Nende õige kasutamine aitab teil mõista, miks paketid on installitud ja millised võivad puududa.

Lingid ja viited

Hiire keskmine nupp ei tööta Windows 10-s
The hiire keskmine nupp aitab teil sirvida pikki rohke andmega veebisaite ja ekraane. Kui see peatub, siis lõpuks kasutate kerimiseks klaviatuuri, mis...
Kuidas muuta hiire vasakut ja paremat nuppu Windows 10 PC-s
On üsna tavaline, et kõik arvutihiirte seadmed on ergonoomiliselt mõeldud parempoolsete kasutajate jaoks. Kuid on olemas hiire seadmeid, mis on spetsi...
Jäljendage hiireklikke, hõljutades hiirega klõpsutut hiirt Windows 10-s
Hiire või klaviatuuri kasutamine liigses kasutamises vales asendis võib põhjustada palju terviseprobleeme, sealhulgas tüve, karpaalkanali sündroom ja ...