Ablakok.  Vírusok.  Jegyzetfüzetek.  Internet.  hivatal.  Segédprogramok.  Drivers

apt-get segédprogram – produktív ingyenes konzol program, az APT (Advanced Packaging Tool) könyvtárat használta és azzal dolgozik új szoftvercsomagok telepítéséhez, a meglévők eltávolításához, a telepítettek frissítéséhez, valamint a teljes operációs rendszer frissítéséhez.

Az apt-cache konzol segédprogram az APT szoftvercsomagok gyorsítótárában való keresésére szolgál. beszél egyszerű szavakkal, ez az eszköz csomagok keresésére, a csomagokról szóló információk gyűjtésére, valamint a Debian vagy Ubuntu alapú operációs rendszerekre telepíthető csomagok megtalálására szolgál.

Hogyan kaphatok listát az összes elérhető csomagról?

Az összes elérhető csomag megtekintéséhez futtassa a következő parancsot:

apt-cache pkgnames

Hogyan találhatom meg a csomag nevét és leírását?

Ha a telepítés előtt meg szeretné találni a csomag nevét és leírását, használja a "keresés" jelzőt. A "search" és az apt-cache használata megjeleníti a megfelelő csomagok listáját rövid leírás. Például, ha meg szeretné találni a vsftpd csomag leírását: ehhez a parancs a következő:

apt-cache keresés vsftpd

Az összes olyan csomag megkereséséhez és listázásához, amelyek neve vsftpd -vel kezdődik, használja a következő parancsot:

apt-cache pkgnames vsftpd

Hogyan nézhetem meg a csomag adatait?

Például, ha információkat szeretne látni egy csomagról, egy rövid leírással, amely tartalmazza a verziószámot, az ellenőrző összegeket, a méretet, a telepítés utáni méretet, a kategóriákat stb., akkor használhatja a "show" alparancsot az alábbiak szerint:

apt-cache show netcat

Hogyan ellenőrizhetem egy csomag függőségét?

Egy adott csomag függőségének ellenőrzéséhez a showpkg alparancsot használhatja annak ellenőrzésére, hogy a függőségek telepítve vannak-e vagy sem. Például használja a showpkg parancsot a csomagnévvel együtt.

apt-cache showpkg vsftpd

Hogyan nézhetem meg a gyorsítótár statisztikáit?

A statisztika alparancs teljes statisztikát jelenít meg a gyorsítótárról, például a gyorsítótárban talált csomagok teljes számát. Használja ezt a parancsot:

apt-cache statisztika

Hogyan frissíthető a csomagok listája a rendszerben?

Az update parancs a csomagindexfájlok szinkronizálására és frissítésére szolgál. A szinkronizálás a fájlban megadott forrásokkal történik /etc/apt/sources.list. Ez a parancs használható például a fontos csomagfrissítések nyomon követésére.

Sudo apt-get frissítés

Hogyan lehet csomagokat frissíteni a rendszerben?

Az upgrade paranccsal frissíthető minden, amire telepítve van Ebben a pillanatban szoftvert a rendszeren. Néha előfordulhat, hogy egy frissítés nem telepíthető más, régebbi verziót igénylő csomag miatt.

sudo apt-get upgrade

Ha azonban a csomagkövetelményektől függetlenül szeretne frissíteni, használja a dist-upgrade alparancsot:

sudo apt-get dist-upgrade

Hogyan telepíthetek vagy frissíthetek egy adott csomagot?

A telepítési alparancs a csomagok telepítésére vagy frissítésére szolgál.

sudo apt-get install netcat

Hogyan telepíthetek több csomagot egyszerre?

Egyszerre több csomag nevének megadásával is telepítheti őket. Például a nethogs és goaccess csomagok telepítéséhez futtassa a következő parancsot:

sudo apt-get install nethogs goaccess

Több csomag telepítése „maszk” névvel

A reguláris kifejezésekkel több csomagot is hozzáadhat speciális karakterek. Használhat például egy csillagot az összes olyan csomag telepítéséhez, amelyek nevében a "name" karakterlánc szerepel:

sudo apt-get install *name*

Hogyan telepítsünk csomagokat frissítés nélkül.

A --no-upgrade jelző használata megakadályozza a már telepített csomagok frissítését.

sudo apt-get install packageName --no-upgrade

Hogyan lehet csak bizonyos csomagokat frissíteni?

A --only-upgrade jelző nem telepít új csomagokat, csak a meglévőket frissíti.

sudo apt-get install csomagnév --only-upgrade

Hogyan telepíthetem bizonyos verzió csomag?

Képzeljük el, hogy telepítenie kell egy csomag egy adott verzióját, csak használjon egyenlőségjelet a csomag nevével együtt, és rendelje hozzá a kívánt verziót.

sudo apt-get install vsftpd=2.3.5-3ubuntu1

Hogyan lehet eltávolítani a csomagokat a beállítások törlése nélkül?

Törölni szoftvercsomagok konfigurációs fájljaik eltávolítása nélkül (későbbi használatra), használja az eltávolítás parancsot az ábrán látható módon.

sudo apt-get Remove vsftpd

Hogyan lehet teljesen eltávolítani a csomagokat?

Egy csomag és konfigurációs fájljainak eltávolításához használja a purge alparancsot az alábbiak szerint.

sudo apt-get purge vsftpd

Vagy kombinálhatja a két parancsot, így:

sudo apt-get remove --purge vsftpd

Hogyan szabadíthatok fel lemezterületet?

A clean paranccsal lemezterület szabadítható fel az így létrejövő .deb csomagfájlok eltávolításával a helyi tárolóból.

sudo apt-get clean

Hogyan lehet letölteni a csomag forráskódját?

Ha csak egy csomag forráskódját szeretné letölteni, használja a --download-only source opciót a csomag nevével együtt, például:

sudo apt-get --csak letöltési forrás vsftpd

Hogyan tudok letölteni és kicsomagolni egy csomagot?

Egy csomag forráskódjának egy speciális könyvtárba való letöltéséhez és kicsomagolásához futtassa a következő parancsot:

sudo apt-get forrás vsftpd

Hogyan tudom letölteni, kicsomagolni és lefordítani egy csomag forráskódját?

Le is töltheti, kicsomagolhatja és lefordíthatja a csomagforrást a „--compile” opcióval, az alábbiak szerint:

sudo apt-get --fordítási forrás goaccess

Hogyan lehet letölteni egy csomagot telepítés nélkül

A "letöltés" opció használatával bármelyik csomagot letöltheti telepítés nélkül. Például a következő parancs csak a nethogs csomagot tölti le az aktuális munkakönyvtárba.

sudo apt-get letöltés nethogs

Hogyan nézhetem meg egy csomag változásnaplóját?

A változásnapló jelző letölti a csomag változásnaplóját, és megjeleníti a csomag verzióját, ha telepítve van.

sudo apt-get changelog vsftpd

Hogyan lehet helyrehozni a megszakadt függőségeket?

A "check" parancs egy diagnosztikai eszköz, amely a csomag-gyorsítótár frissítésére és a megszakadt függőségek ellenőrzésére szolgál.

Sudo apt-get check

Hogyan találhatok és építhetek függőséget?

A build-dep parancs megkeresi és telepíti a szükséges csomag beépített függőségeit. Ha a csomag nincs a helyi tárolóban, hibaüzenetet fog kapni.

sudo apt-get build-dep netcat

Hogyan törölhetem automatikusan az Apt-Get gyorsítótárat?

Az autoclean parancs eltávolítja az összes .deb fájlt a /var/cache/apt/archives mappából, hogy helyet szabadítson fel a merevlemezen.

sudo apt-get autoclean

Hogyan tudom automatikusan eltávolítani a felesleges csomagokat?

Az autoremove alparancsot szokták automatikus eltávolítás olyan csomagok, amelyeket mások függőségeként telepítettek, de már nincs rájuk szükség. Például a következő parancs eltávolít egy telepített csomagot a függőségeivel együtt.

sudo apt-get autoremove vsftpd

Információ az oldal jóvoltából. Köszönöm.

Az APT (az Advanced Packaging Tool rövidítése) a telepítéshez, az eltávolításhoz, a frissítéshez, a csomagok megtalálásához Linuxon és a tárolók kezeléséhez szükséges segédprogramok készlete. Az APT-t csomagkezelőnek is nevezik.

Az APT csomagtárolókat használ. Az APT lerakatainak listája egy fájlban tárolódik /etc/apt/sources.list, valamint a könyvtárban /etc/apt/sources.list.d/.

Az APT-t Dedian és Ubuntu alapú disztribúciókban használják.

Különféle segédprogramok léteznek az APT kezelésére, de a legnépszerűbbek az apt-get és az apt parancssori segédprogramok.

Ebben a cikkben megvizsgáljuk, hogyan kell használni az apt parancsot, és megtudjuk, miben különbözik az apt az apt-gettől.

Mi a különbség az apt és az apt-get között?

Hogy röviden válaszoljak egy nagyon népszerű kérdésre, mi a különbség az apt és az apt-get parancsok között?

Az apt egy segédprogram, amely az apt-get alternatívájaként jelent meg. Szinte ugyanazokat a funkciókat látja el, mint az apt-get, de könnyebb és áttekinthetőbb vele dolgozni.

Például minden apt parancsnak egyszerű szintaxisa van: apt parancsnév. És az apt-get rendelkezik további parancsok, Például, apt-cache. Így az apt használatakor a felhasználónak nem kell emlékeznie további parancskészletekre.

A parancsokkal végzett munka leegyszerűsítése mellett az apt tisztábban jeleníti meg az információkat, látszólag apróságokat, de kényelmesebb vele dolgozni. Például az apt megjeleníthet egy folyamatjelző sávot, és amikor végrehajtják találó frissítés láthatja, hogy hány csomag frissíthető.

Érdemes megjegyezni, hogy az apt-get segédprogram funkcionálisabb, mint az apt. De az átlagos felhasználó számára az apt több mint elég lesz.

találó parancs

Az apt parancs szintaxisa a következő:

sudo apt

Frissítse a csomaglistát

sudo apt frissítés

Az APT rendelkezik azoknak a lerakatoknak a listájával, amelyekből a csomagok telepítve vannak. A lista tárolva van szöveges fájl /etc/apt/sources.list, valamint a könyvtárban /etc/apt/sources.list.d/. A parancs végrehajtásakor találó frissítés, az APT iterál a lerakatok listáján, és a listában szereplő minden lerakatból információkat kap a lerakatban lévő csomagokról. Mindezeket az információkat a rendszer tárolja.

Ha egy csomag új verzióját adják ki, az APT a parancs végrehajtásáig nem tud róla találó frissítés. Ezért ha telepíti ezt a csomagot (az apt frissítés első futtatása nélkül), akkor a csomagnak a rendszerben pillanatnyilag tárolt verziója lesz telepítve.

Minden csomag telepítése előtt le kell futtatnom az apt frissítést?

Nem, az egyes csomagok telepítése előtt találó frissítés persze nem szabad megtenni. Elég, ha rendszeresen futtatja az apt update-et. Ha egynél több csomagot kell telepítenie, először futtassa találó frissítés majd telepítse a csomagokat.

Frissítse a telepített csomagokat

A rendszerre telepített csomagok frissítéséhez használja a következő parancsot:

sudo apt frissítés

Ez a parancs csak a csomagokat frissíti új verziókra, soha nem távolít el és nem telepít más csomagokat.

Van egy másik parancs a csomagok frissítésére:

Sudo apt teljes frissítés

Ez a parancs frissíti a csomagokat, és szükség szerint eltávolítja vagy telepíti az új csomagokat a függőségek feloldásához.

Telepítse a csomagot

A csomag telepítéséhez használja a következő parancsot:

sudo apt install

Több csomag telepítése

Több csomag telepítéséhez a nevüket szóközzel kell elválasztani:

sudo apt install

Telepítsen egy adott csomagverziót

Egy adott csomagverzió telepítéséhez meg kell adnia a szükséges verziót a csomag neve után, egyenlőségjellel:

sudo apt install=

Csomag törlése

A telepített csomag eltávolításához használja a következő parancsot:

Sudo apt eltávolítás

Távolítson el egy csomagot és konfigurációs fájljait

sudo apt purge

apt-purge hasonlóan működik apt-remove, hanem eltávolítja is konfigurációs fájlok, a csomaghoz kapcsolódóan. Ez azt jelenti, hogy ha telepített valamilyen programot, akkor beállította, majd a paranccsal eltávolította apt-remove, akkor ennek a programnak a konfigurációs fájlja a rendszerben marad. Ha most újra telepíti ezt a programot, használhatja az előző konfigurációs fájlt, mivel azt nem távolította el.

apt-purge nem törli a saját könyvtárában tárolt konfigurációs fájlokat.

Ha eltávolította a csomagot a paranccsal apt-remove, akkor megteheti apt-purge egy adott, már eltávolított csomagra, hogy „törölje” annak konfigurációs fájljait.

Távolítsa el a fel nem használt csomagokat

sudo apt autoremove

Amikor telepít egy csomagot, az gyakran települ kiegészítő csomagok, amelyek annak függőségei. Ha most eltávolítja ezt a csomagot, akkor a függőségek a rendszerben maradnak. apt autoremove eltávolítja ezeket a függőségeket, de csak azokat, amelyekre más telepített csomagoknak nincs szükségük.

Csomaglista

Az apt list parancs a csomagok listázására szolgál bizonyos feltételek alapján.

Sorolja fel a rendszerre telepített csomagokat:

Alkalmassági lista --telepítve

Sorolja fel a frissítendő csomagokat (amelyeknek van újabb verziója):

apt list -- frissíthető

Sorolja fel a rendszeréhez elérhető összes csomagot:

Alkalmas lista --all-versions

Csomagok keresése

találó keresés

Ez a parancs a megadottat keresi szavak a csomag nevében és a csomag leírásában. A reguláris kifejezések támogatottak.

Csak csomagnév alapján kereshet a --names-only kapcsolóval:

Találó keresés -- csak nevek

Csomag keresése reguláris kifejezésekkel:

apt search --names-only "^python"

Csomag információ

találó műsor

Információkat jelenít meg a csomagról. Megjelenik a verzió, a méret, a leírás, a függőségek és egyéb információk.

A tárhelyek listájának szerkesztése

sudo apt edit-sources

Megnyit egy fájlt /etc/apt/sources.list V szöveg szerkesztő a szerkesztéshez a változtatások mentése és a szerkesztő bezárása után ellenőrzi a fájl hibáit. Ha hibák vannak, megjelenik egy javaslat a fájl újraszerkesztésére a hibák kijavítása érdekében.

Az apt és apt-get parancsok analógjainak táblázata

Csapat
alkalmas
Parancsanalóg
apt-get
Leírás
apt installapt-get installTelepítse a csomagot
apt-removeapt-get RemoveCsomag törlése
apt-purgeapt-get-purgeTávolítsa el a csomag- és konfigurációs fájlokat
apt autoremoveapt-get autoremoveTávolítsa el a fel nem használt csomagokat
találó frissítésapt-get frissítésFrissítse a csomaglistát
találó frissítésapt-get upgradeFrissítse a csomagokat
alkalmas teljes frissítésapt-get dist-upgradeCsomagok frissítése (ha szükséges, távolítsa el és telepítse az újakat)
találó listaHozzávetőleges analóg:
dpkg-query --list
Csomaglista
találó keresésapt-cache keresésCsomagkeresés
találó műsorapt cache showCsomag információ

Néha vannak olyan helyzetek, amikor meg kell találnia, hogy mely csomagok vannak telepítve a rendszerre. Erre szükség lehet, ha szeretné biztonsági mentés telepített csomagokat, ellenőrizze azok integritását, vigye át az összes csomagot egy másik rendszerre, és sok más feladathoz. Debianon többféle módszer használható erre.

A mai cikkben megnézzük, hogyan listázzuk ki a telepített Debian-csomagokat a terminál, a curses felület és a grafikus felhasználói felület segítségével. Az ilyen listák nem csak a Tartalékmásolat, hanem csak ismételni és eltávolítani felesleges programokat, ezáltal megtisztítja a rendszert a törmeléktől.

A legelső módja annak, hogy megtekintse a telepített Debian csomagok, ez a dpkg segédprogram. Nem csak a Debianban, hanem az összes erre épülő disztribúcióban használható:

dpkg --get-selections | grep -v deinstall

dpkg --get-selections | grep -v deinstall > mylist.txt

Ezenkívül eltávolíthat minden felesleges információt, és csak a csomagneveket tarthatja meg:

dpkg -l | grep ^ii | awk "(2 dollár nyomtatása)" > mylist.txt

A feladat végrehajtásának következő módja a dpkg-query segédprogram használata. Hasonló az előző verzióhoz, de egy kicsit egyszerűbb. Ez a parancs felsorolja az összes telepített csomagot a róluk szóló információkkal együtt:

Itt is csak a -f kapcsolóval lehet csomagneveket kiválasztani:

dpkg-query -f "$(bináris:csomag)\n" -W

A harmadik módszer az apt segédprogram, amelyet alkalmazások telepítéséhez szoktunk használni, és van egy list parancsa:

apt list --telepítve

apt list --installed | grep python

Az apt-tal részletesebben foglalkoztunk a cikkben. Az apt másik érdekes tulajdonsága, hogy megnézheti, mely csomagok lettek manuálisan telepítve. Ehhez írja be:

apt-mark bemutató kézikönyv

És egy másik lehetőség az apt használatával:

apt-cache pkgnames

Az aptitude csomagkezelő eszköz lehetővé teszi a telepített csomagok listázását is:

alkalmassági keresés "~i!~M"

Az aptitude átok módban is futhat, ami nagyon kényelmes:

A telepített csomagok listáját legutoljára a /var/lib/apt/extended_states fájlban láthatja. Ez egy adatbázis, amely tartalmazza telepített programokat debian ebben a formátumban:

Csomag: csomag_neve
Építészet: építészet
Automatikusan telepítve: 0_vagy_1

cat /var/lib/apt/extended_states

A telepített csomagok listájának visszaállítása

Sok felhasználó létrehoz egy listát a csomagokról, nem csak nézegetésre, hanem a későbbi helyreállításra is. Ha a dpkg segítségével készített egy listát, akkor az nagyon könnyen visszaállítható a rendszerbe egy hasonló paranccsal:

sudo dpkg --clear-selections
$ sudo dpkg --set-selections< mylist.txt

Minden nagyon egyszerű. Csomagok telepítéséhez, miután hozzáadta őket a listához, használja a következő parancsot:

sudo apt dselect-upgrade

Ha csak a csomagnevek listája van, akkor egy kicsit másképp kell visszaállítania. Csak adja át ezeket a neveket az apt parancsnak a telepítéshez:

xargs< mylist.txt apt install -y

következtetéseket

Ebben a cikkben megvizsgáltuk, hogyan lehet listázni a telepített Debian csomagokat. Ez nagyon hasznos lehet, és nagyon könnyű megtenni. Remélem, hogy ez az információ hasznos volt az Ön számára.

Annak a ténynek köszönhetően, hogy néhány elvtárs nem érti, mi az apt és a dpkg. Úgy döntöttünk, hogy létrehozunk egy újabb bejegyzést ezekről a segédprogramokról.

APT és minden, minden, minden. Az APT csomagkezelő és a kapcsolódó programok lehetőségeinek feltárása

A Debian sok pozitív újítást hozott a Linux világába, amelyek közül sokat más disztribúciók is átvettek. A Debian legjelentősebb fejlesztése az APT csomagkezelő rendszer volt, megjelenése után az összes többi disztribúció elavult szemétté változott. Ma az APT összetett, intelligens, rugalmas, és sok titkot rejteget az avatatlan Linux-felhasználók elől.

Fejlett csomagkezelő rendszer

Az APT (Advanced Packaging Tool) önmagában nem egy csomagkezelő rendszer a szó legigazibb értelmében. A kicsomagoláshoz, a rendszerbe való regisztrációhoz és a csomagadatbázis megtekintéséhez minden műveletet a dpkg csomagsegédprogramok hajtanak végre, míg az APT segédprogramok egy olyan wrapper, amellyel csomagokat kereshet, ellenőrző összegeket ellenőrizhet, letölthet a tárolóból, feloldhatja a függőségeket és egyéb műveletek száma.

Az APT a következő segédprogramokat tartalmazza:

apt csomag segédprogramok

apt-cache – az elérhető csomagok gyorsítótárát kezeli, általában használt
csomagot keresni és/vagy információt szerezni róla

apt-cdrom - lehetővé teszi CD/DVD hozzáadását csomagforrásként (tárhelyként)

apt-config - beolvassa a konfigurációban megadott opciók értékeit
/etc/apt/apt.conf fájl, amelyet más APT segédprogramok használnak

apt-extracttemplates – Kibontja a DebConf konfigurációs fájlokat
csomagokból, amelyeket más APT segédprogramok használnak

apt-ftparchive - indexfájlokat hoz létre

apt-get - telepítés, eltávolítás, csomaglista frissítése
és maguk a csomagok, a központi APT segédprogram

apt-key – kezeli az ellenőrzéshez használt hitelesítési kulcsokat
a csomagforrások hitelessége

apt-secure – ellenőrzi a mellékelt apt csomagok digitális aláírását
a terjesztésben és a tárolókban

apt-sortpkgs – rendezi az indexfájlokat

A segédprogramok a következő konfigurációs fájlokra támaszkodnak:

APT konfigurációs fájlok

/etc/apt/sources.list - a csomagforrások listája (tárolók)
/etc/apt/apt.conf – a fő APT konfigurációs fájl
/etc/apt/preferences - beállításfájl, amely szabályozza, hogy a csomag melyik verziója legyen
telepítve, ha egyszerre több verzió is található a tárolóban

Az APT használata egyszerű és egyértelmű, az átlagos felhasználónak általában csak hat alábbi parancsra van szüksége:

Alapvető APT parancsok

apt-cache keresési maszk - csomag keresése
apt-cache show package – egy csomag információinak megtekintése
apt-get install csomag – csomag telepítése
apt-get csomag eltávolítása – csomag eltávolítása
apt-get update – az elérhető csomagok gyorsítótárának frissítése
apt-get upgrade – az összes csomag frissítése

Az utolsó két parancs általában egymás után fut le, ami újratelepíti az összes olyan csomagot, amelyhez új verziók érhetők el a tárolóban. Ha csak a megadott csomagot kell frissítenie, akkor az "apt-get update" után futtassa az "apt-get install csomag" parancsot.

Az Ubuntu disztribúció még egyszerűbbé teszi az APT segédprogramokkal való „beszélgetést”, és lecsökkenti a jelölőnégyzetekre való kattintást. GUI. Saját, rendkívül egyszerű csomagkezelővel rendelkezik (úgy hívják: "Csomagkezelő"), amelyet a cron indított el a menedzsertől Frissítés Manager, egy grafikus telepítő a kézzel letöltött GDebi deb csomagokhoz, és egy erősebb grafikus kiegészítő a Synaptic APT segédprogramjaihoz.

Eközben az APT sokkal összetettebb és rugalmasabb, mint amilyennek első pillantásra tűnhet. Ezért a következő szakaszokban számos, nem egészen tipikus felhasználási módot fogunk megvizsgálni.

Harmadik féltől származó csomagforrások

A disztribúciófejlesztők összes csomagját tartalmazó fejtáron kívül sok más csomagforrás is tartalmazhat olyan harmadik féltől származó szoftvereket, amelyek nem érhetők el a hivatalos tárhelyből, vagy annak újabb verzióit biztosítják, vagy egyszerűen csak egy gyorsabb tükör. A tároló lehet egy normál könyvtár a merevlemezen vagy egy CD.

Ahhoz, hogy megtanítsa az APT-t a harmadik féltől származó tárolókkal való együttműködésre, elegendő négy egyszerű lépést követni:

Az uri mező a repository címe, amely a legtöbb esetben egy HTTP-cím, de lehet hivatkozás egy helyi tárhelyre (file:/root/repository), egy FTP- vagy SSH-szerveren lévő tároló címe. A "disztribúció" mező megadja annak a disztribúciónak a nevét, amelyhez a csomagok készülnek. Debian esetén a név lehet stable, oldstable, unstable, testing, míg Ubuntu esetében csak a konkrét disztribúciónevet kell megadni (például jaunty), és azt is. különféle megnevezések ez alapján (például jaunty-updates, jaunty-backports, jaunty-security). Azt kell mondanom, hogy az APT egyáltalán nem ellenzi a különböző disztribúciókból származó csomagok keverését ugyanazon a rendszeren, de ebben az esetben Ön felelős a következményekért. Az összetevő neve általában main, contrib vagy non-free Debian, és main, univerzum, multiverzum, partner, és korlátozott Ubuntu. Ezek mind a különböző csomagtárolók nevei, amelyek bizonyos kritériumok alapján csak külön csomagokra vannak szétválasztva. Például a main csomagok az Ubuntu/Debian fejlesztőcsapat által összeállított csomagok, a bennük található szoftverek minőségére bizonyos garanciák vonatkoznak, ideértve az időszerű frissítéseket és hibajavításokat, míg a contrib és a universe harmadik féltől származó szoftverek, amelyeket Ön telepít a saját webhelyére. saját veszély és kockázat.

2. Adja hozzá az apt kulcstartóhoz a lerakat nyilvános kulcsát, amely a hitelességének és megbízhatóságának ellenőrzésére szolgál. A kulcsot bármilyen módon megszerezhetjük és hozzáadhatjuk az "apt-key add key" parancs futtatásával, de ezt a módszert ritkán alkalmazzák a kényelmetlenség miatt. Az esetek túlnyomó többségében egy csapattal lesz dolgod

sudo apt-key adv --keyserver cert-server --recv-keys kulcsazonosító
amely közvetlenül a tanúsítványszervertől kéri le a kulcsot (Ubuntu esetében ez a keyserver.ubuntu.com). A legtöbb külső fejlesztő így terjeszti a szoftverét Debian/Ubuntu disztribúciókhoz (a többi csak csomagokat és azok ellenőrző összegeit teszi közzé). Például, ha felkeresi az Önt érdeklő projekt launchpad.net oldalát, és rákattint a „Technikai részletek erről a PPA-ról” hivatkozásra, látni fog egy sort, amelyet hozzá kell adni az /etc/apt/sources fájlhoz. .list, az "Aláíró kulcs:" kulcsazonosítót fog tartalmazni.

3. Frissítse az elérhető csomagok gyorsítótárát:

sudo apt-get frissítés
4. Telepítse a csomagot az "apt-get install package" paranccsal.

Sok fejlesztő közvetlenül a deb csomagban helyezi el a tárolóra mutató hivatkozást és annak kulcsazonosítóját, így a csomag letöltése, telepítése és az "apt-get update && apt-get upgrade" parancs futtatása után a csomagok a csomagokkal együtt frissülnek. a források.listában felsorolt ​​megfelelői. Konkrétan így opera böngészőkés a google chrome alfa kiadása.

Egy CD-alapú adattárat sokkal könnyebb hozzáadni a sources.list-hez. Erre van egy speciális apt-cdrom parancs. Egyszerűen helyezze be a CD-t a meghajtóba, és futtassa a parancsot:

sudo apt-cdrom add

Trükkök és szokatlan helyzetek

Az APT az APT, kényelmes és egyszerű, de néha nem nélkülözheti a trükköket, amelyek közül a leghasznosabbat tanulja meg ebből a részből.

1. Alapértelmezés szerint az "apt-get remove" parancs csak akkor távolítja el teljesen a csomagot, ha a telepítés óta egyik fájl sem módosult, ellenkező esetben a módosított fájlok érintetlenek maradnak. Természetesen a konfigurációs fájlok szinte mindig módosulnak, így az apt-get egy rakás szemetet hagy maga után, amelyet kézzel kell kitakarítani. Az „apt-get remove” helyett az „apt-get purge” parancs megoldja ezt a problémát.

2. A rendszerben való szedés hívei, valamint rendszergazdák akiknek a szervereit feltörték, valószínűleg vissza akarják állítani a csomagokat a manipuláció előtti kezdeti állapotba. Ez a parancs segít:

sudo apt-get install --reinstall csomag
3. Az alacsonyabb szintű deb csomagkezelő segédprogramok (például a dselect és a dpkg) egy speciális listát tartanak fenn a csomagállapotokról, amelyek segítségével szabályozható, hogy mely csomagokat kell kötegelt módban telepíteni vagy eltávolítani (így működik a dselect + dpkg csomag) . Számos más célra is használható, például rendszerkonfiguráció átvitelére egy másik gépre. Futtassa a következő parancsot:

dpkg --get-selections > fájl
Vigye át a fájlt egy másik gépre, és futtasson rajta két parancsot:

cat fájl > dpkg --set-selections
apt-get dselect-upgrade

A forrásrendszer összes csomagja hozzáadódik a rendszerhez. Ha azt szeretné, hogy a csomagállapotfájl információkat is tartalmazzon arról, hogy mely csomagokat kell eltávolítani a rendszerből, adjon hozzá egy "\*" karaktert a "--get-selections" argumentum után. Az állapotlista nem tartalmaz csomagverziókat, ezek további telepítése után használhatók új verzió elosztókészlettel, hogy a kívánt állapotba kerüljön.

4. Manuálisan javította az egyik rendszercsomag fájlját, és nem akarja, hogy a csomag frissítésre kerüljön (az összes módosítás törlése) az "apt-get upgrade" hívása után. Ebben az esetben az államok listája ismét a segítségedre lesz. Egy csomag „lefagyhat”, így az apt-get megtagadja a frissítést, és kihagyja:

echo -e "coreutils hold" | dpkg --set-selections
A csomagfrissítést az apt-get meghívásakor a "-u" jelző megadásával kényszerítheti ki.

5. Mint minden hálózati funkcióval rendelkező rendszer, az APT is lehetővé teszi proxy használatát a tárolók eléréséhez. A funkció engedélyezéséhez adja hozzá a következő sort az /etc/apt/apt.conf fájlhoz:

Beszerzés::http::Proxy "http://xxx.xxx.xx:yyyy"

Ahol xxx.xxx.xx a proxy neve, az yyyy a port.

6. Az APT segédprogramok általában a csomagok legújabb verzióját kérik a gyorsítótárában található összesből, így ha különféle kísérleti és instabil tárolókat adott hozzá a sources.list-hez, akkor a frissítés után egy kizárólag kísérleti vagy instabil csomagokból álló disztribúciós készletet kap. , és egy csomó probléma, amelyet ez az állapot okoz. A helyzet azonban könnyen megoldható, ha a következő sort helyezi az /etc/apt/apt.conf fájlba:

APT::Default-Release "release";

Ahol a kiadás régi stabil, stabil, instabil, tesztelési vagy kísérleti Debian esetében, vagy a kiadás neve Ubuntu esetében. Most, ha telepítenie kell egy csomagot a megadott disztribúcióból, írja be a nevét a "-t" argumentum után az apt-get meghívásakor:

sudo apt-get -t instabil telepítőcsomag
7. Az összes kapott apt-get deb csomag a /var/cache/apt/archives könyvtárban van tárolva, ami azt jelenti, hogy ha újratelepíti a rendszert, átmásolhatja a könyvtár tartalmát egy másik lemezre/partícióra, majd visszaállíthatja. és időt takaríthat meg/csomagtelepítési forgalmat. Ezenkívül lényegében egy pillanatfelvétel az Önről telepített rendszer(az a része, amelyet saját maga telepített), amely egy barátnak tulajdonítható (a harmadik bekezdésben leírt állapotok listájával együtt), vagy ha nem szükséges, eltávolíthatja a hely felszabadítása érdekében.

8. Az előző bekezdésben leírt távoli rendszer pillanatképe könnyen visszaállítható a következő konstrukció segítségével:

sudo dpkg --get-selections | grep -v "deinstall" | \
awk "(nyomtatás $1)" | xargs dpkg-repack

9. A bináris csomagokon kívül a Debian/Ubuntu tárolók olyan alkalmazásforrás-csomagokat is tartalmaznak, amelyek a következő paranccsal szerezhetők be és építhetők fel:

sudo apt-get -b forráscsomagnév

Harmadik fél segédprogramjai

Az APT rendszer hosszú utat tett meg a fejlesztésben, így az apt csomagban található hivatalos segédprogramok mellett a Debian és az Ubuntu adattárak rengeteg harmadik féltől származó segédprogramok, amellyel néhány nem szabványos feladatot is el lehet végezni.
Ezek közül a leghasznosabb az apt-file, és a névből sejthető, hogy szükséges annak meghatározásához, hogy egy adott fájl egy adott csomaghoz tartozik-e. Telepítés:

sudo apt-get install apt-file
Megkérjük az apt-file-t, hogy hozzon létre egy gyorsítótárat a csomagrendszerbe telepített összes fájlról (keresni fog):

apt-file keresés /usr/bin/apt-get
apt: /usr/bin/apt-get

Kérje az összes csomagfájl listáját:

apt-fájl lista apt

Egy egyszerű apt-show-versions segédprogram megmutatja, mely csomagok frissíthetők verziókkal és egyéb információkkal. Futtassa a "-u" kapcsolóval, hogy csak a frissítendő csomagok listáját kapja meg (az összes csomag listája helyett).

Ha telepítette nagyszámú különféle csomagokat, és most meg akar szabadulni a felesleges szeméttől, akkor ebben a kérdésben segít a deborphan segédprogram, amely fel nem használt csomagokat és árva függőségeket keres. Csak futtassa a deborphan-t argumentumok nélkül, és látni fogja a csomagok listáját, amelyet azonnal átadhat bemenetként az „apt-get remove” parancsnak, vagy egyszerűen futtassa ezt a parancsot:

sudo apt-get távolítsa el a `deborphan' parancsot

Alapértelmezés szerint a deborphan csak azokat a csomagokat dolgozza fel, amelyek könyvtárakat tartalmaznak, de ez a viselkedés megváltoztatható az "-a" jelző hozzáadásával a parancshíváshoz:

Nem szabad azonnal rohanni a segédprogram által megjelenített csomagok eltávolításával, mert még a legerősebb heurisztikus algoritmus sem képes meghatározni az Ön személyes igényeit. Tehát a program megmutatta a google-chrome, inkscape és még az xorg csomagokat is.

Az apt-move segédprogram lehetővé teszi egy helyi tároló létrehozását. Telepítse a programot, nyissa meg az /etc/apt-move.conf fájlt, adja meg annak a könyvtárnak az elérési útját, ahol a lerakatnak el kell helyezkednie a LOCALDIR opcióban, és futtassa a parancsot:

sudo apt-move frissítés

Ennek eredményeként az apt-get segítségével (/var/cache/apt/archives könyvtár) a webről letöltött összes csomag átkerül a konfigurációban megadott könyvtárba, amelyhez indexfájl készül. Ez kényelmes módja intranetes tároló létrehozása azokra az esetekre, amikor sok azonos csomagot kell telepíteni sok gépre.

Helyi tároló létrehozásához nagyon kényelmes az apt-proxy szerver használata is, amely lehetővé teszi a tárolóból letöltött deb csomagok gyorsítótárazását a szerver oldalon. Ehhez az apt-proxy telepítve van egy dedikált gépre (talán egy átjáróra), és a kliensek sources.listája úgy módosul, hogy ennek a gépnek a címe legyen megadva az összes tároló uri mezőjeként. Ennek eredményeként a deb csomagokra vonatkozó összes kérés az apt-proxy-ra kerül, amely lekéri a csomagot a head repository-ból és tárolja a gyorsítótárában, és a csomagra vonatkozó minden további kérés a gyorsítótárból érkezik.

Először telepítse az apt-proxyt egy dedikált gépre:

sudo apt-get install apt-proxy

Ezután nyissa meg az /etc/apt-proxy/apt-proxy-v2.conf fájlt, lépjen a szakaszba, és cserélje ki az address opció értékét a gép IP-címére, és írja le az apt- által használt csomagforrásokat is. proxy, például:

sudo vi /etc/apt-proxy/apt-proxy-v2.conf


backends = http://en.archive.ubuntu.com/ubuntu/
min_refresh_delay = 1d


backends=http://security.ubuntu.com/ubuntu/
min_refresh_delay = 1d

Általában ez a két cím elegendő az Ubuntu fejlesztők által biztosított csomagok teljes skálájának lefedésére. Indítsa újra az apt-proxyt:

sudo invoke-rc.d apt-proxy újraindítás

A kliensek apt-proxyra való átállításához használjuk a szabványos Ubuntu sources.list listát, lecseréljük az összes valódi uri mezőt a „http://ip-address-apt-proxy:9999/ubuntu/” mezőre, és átmásoljuk ezt a fájlt minden kliensre.

Sok más, kevésbé érdekes segédprogram működik az APT-vel együtt. Például az apt-dater lehetővé teszi a csomagok frissítését nagyszámú távoli csomóponton pszeudografikus interfész segítségével. Az aptsh program egy sh-szerű parancsfelületet valósít meg az apt csomag parancsai mellett, az aptfs az APT kezelésének virtuális fájlrendszere. A debdelta segédprogram, amely lehetővé teszi a csomagok frissítését úgy, hogy letölti a deltákat a webről, egy külön cikk témája lehetne, ha lenne legalább egy naprakész tárhely.

Alkalmasság

Az apt-get segédprogram és rokonai nem az egyetlen elérhető APT megvalósítás. Egy még hatékonyabb, kényelmesebb és sokoldalúbb alternatíva az aptitude, amely az apt-get, apt-cache és dselect koncentrált funkciója egy helyen.
Az Aptitude lehetővé teszi a csomagok telepítését/eltávolítását, keresését, frissítését és sok egyéb művelet elvégzését kétféle interfész használatával: az apt-get és apt-cache parancsmóddal, valamint egy pszeudografikus felülettel, amely úgy néz ki, mint a dselect. de sokkal kényelmesebb.és funkcionális.

Parancssori módban az aptitude a következőkre használható:

aptitude install – csomag telepítése

aptitude remove – Csomag és árva függőségek eltávolítása

aptitude purge – csomag eltávolítása, árva függőségek
és az utánuk fennmaradó konfigurációs fájlok

aptitude search – csomag keresése a gyorsítótárban (az elérhető csomagok listája)

aptitude update – gyorsítótár frissítése

aptitude safe-upgrade – frissítési csomagok

aptitude clean - távolítsa el a korábban letöltött csomagokat

aptitude teljes frissítés - frissítési csomagok,
még akkor is, ha ehhez a művelethez bármilyen csomag eltávolítása szükséges

alkalmassági bemutató – csomaginformáció

aptitude autoclean - távolítsa el az elavult csomagokat

aptitude hold – csomag frissítésének tilalma

Az interaktív mód, amely akkor érhető el, ha az aptitude-ot argumentumok nélkül futtatja, lehetővé teszi ugyanazon műveletek végrehajtását az ncurses könyvtár tetejére épített pszeudografikus interfész segítségével. Kötegelt módban működik (kiválasztott csomagok - elindította a telepítési folyamatot), így kényelmes lesz olyan esetekben, amikor nagy számú csomagot kell telepítenie.

húsvéti tojás

Az APT segédprogramok fejlesztőiről kiderült, hogy kissé torz humorú srácok. Mi az eredménye a következő parancsnak:

sudo apt-get moo
Ami még vadabbnak tűnik, az az, amit az alkalmasság megalkotói beépítettek programjukba. Próbáld ki:

sudo aptitude moo
Egyfajta húsvéti tojás húsvéti tojás. RENDBEN:

sudo aptitude -v moo
sudo aptitude -vv moo
sudo aptitude -vvv moo
sudo aptitude -vvvv moo
sudo aptitude -vvvvv moo

És az utolsó akkord:

sudo aptitude -vvvvvv moo

Hasznos apt-cache parancsok

apt-cache show csomag – részletes információ a csomagról
apt-cache showpkg csomag – általános információk a csomagról
apt-cache függ a csomagtól – a csomagfüggőségek listája
apt-cache rdepends csomag - a fordított függőségek listája (kinek van szüksége az említett csomagra)

APT szótár

Csomag - program, könyvtár, források vagy bármely más fájl, valamint ezek metaadatai, speciálisan kialakított archívumba csomagolva.

Repository - egy hely, ahol a deb csomagokat tárolják.

Az elérhető csomagok gyorsítótára (vagy egyszerűen a gyorsítótár) egy olyan fájl, amely az /etc/apt/sources.list fájlban felsorolt ​​forrásokból származó összes csomagra vonatkozó információkat tárolja. A gyorsítótár minden alkalommal frissül az "apt-get update" parancs meghívásakor.

Index fájl - a tároló fejfájlja, amely tartalmazza a nevet, verziót, méretet, rövid és Teljes leírásés az egyes csomagok függőségeit. Packages.gz néven bináris lerakat, Sources.gz pedig forrástárat. Létrehozva a pkg-scanpackages és a dpkg-scansources segédprogramokkal.

Az Apt keyring (szó szerint: apt keyring) egy kulcstároló, amely hitelesíti a csomagforrásokat (repository).

Mi van belül?

A Deb formátumú csomagok jellemzője az egyszerűségük. Bármely Deb csomag három fájlból áll: data.tar.gz, control.tar.gz és debian-binary, az archiválóval együtt. A data.tar.gz fájl a csomag tartalma (binárisok, man "s, dokumentáció stb.), a control.tar.gz metaadat, a legegyszerűbb változatban két fájl: a csomag leírását tartalmazó vezérlő, függőségek, méret stb. A .d. és az md5sums a csomagban lévő összes fájl ellenőrző összege. A debian-bináris fájl tartalmazza a Deb csomagformátum verzióját (pl. 2.0) A csomag kicsomagolásához a következő parancsot használhatja:

ar -xv package.deb && tar -xzf data.tar.gz

Az Advanced Packaging Tool egy magas szintű csomagolóeszköz.

dpkg csomagokkal való munka

A dpkg a rendszer fő programja a Debian csomagok kezelésére. Ha vannak .deb csomagok, akkor a dpkg teszi lehetővé azok telepítését vagy tartalmuk elemzését. Ez a program azonban csak részben ismeri a Debian világát: tudja, mi van telepítve a rendszerre, és mindent, amit parancssorban átadtak neki, de semmit sem tud a többi elérhető csomagról. Ezért megbukik, ha kielégítetlen függőséget talál. Az olyan eszközök viszont, mint az apt, automatikusan létrehozzák a függőségek listáját, hogy mindent a lehető legautomatikusabban telepítsenek.

dpkg vagy apt?

A dpkg-t alacsony szintű eszköznek (motornak) kell tekinteni, és alkalmasabb felhasználóbarát eszköznek, amely megkerüli az előbbi korlátait. Ezek az eszközök együtt működnek, mindegyiknek megvan a maga sajátossága, egy bizonyos feladatkörre kihegyezve.

Csomagok telepítése

A dpkg elsősorban a már elérhető Debian csomagok telepítésére szolgáló eszköz (mivel nem tölt le semmit). Csomag telepítéséhez használja az -i vagy a --install opciót.

dpkg csomag telepítése

dpkg -i man-db_2.7.0.2-5_amd64.deb




A man-db csomag (2.7.0.2-5) beállítása folyamatban van...

A dpkg minden lépését láthatjuk, így tudjuk, hol történhetett hiba. A telepítés is két lépésben történhet: először kicsomagolás, majd konfiguráció. Ezáltal az apt-get kevesebb dpkg-hívást kezdeményez (minden ilyen hívás költséges művelet, mivel be kell tölteni az adatbázist a memóriába, beleértve a már telepített fájlok teljes listáját).

Külön kicsomagolás és beállítás

dpkg -- unpack man-db_2.7.0.2-5_amd64.deb

(Adatbázis olvasása... 86425 fájl és könyvtár jelenleg telepítve.)
Felkészülés a man-db_2.7.0.2-5_amd64.deb kicsomagolására ...
Kicsomagolja a man-db-t (2.7.0.2-5) a cseréhez (2.7.0.2-5) ...
Mime-támogatás triggereinek feldolgozása (3.58) ...

dpkg --configure man-db

A man-db csomag (2.7.0.2-5) beállítása folyamatban van...
Kézikönyvi oldalak adatbázisának frissítése...

Előfordul, hogy a dpkg ilyen vagy olyan okból nem telepít egy csomagot, és hibát ad vissza; ha a felhasználó a hiba figyelmen kívül hagyására utasítja, csak figyelmeztetés jelenik meg; erre különféle --force-* opciók állnak rendelkezésre. A dpkg --force-help parancs vagy a parancs dokumentációja megadja ezeknek a beállításoknak a teljes listáját. A leggyakoribb hiba, amellyel előbb-utóbb szembe kell néznie, a fájlkonfliktus. Ha egy csomag olyan fájlt tartalmaz, amelyet egy másik csomag már telepített, a dpkg megtagadja a telepítést, és a következő üzenetet kapjuk:

A libgdm csomag ki van csomagolva (a.../libgdm_3.8.3-2_amd64.deb fájlból) ...
dpkg: hibafeldolgozás /var/cache/apt/archives/libgdm_3.8.3-2_amd64.deb (--unpack) opció:
megpróbálja felülírni a "/usr/bin/gdmflexiserver" fájlt, amely már benne van a gdm3 3.4.1-9 csomagban

Ebben az esetben, ha úgy gondolja, hogy ennek a fájlnak a cseréje nem jelent jelentős veszélyt a rendszer stabilitására (gyakran igen), használhatja a --force-overwrite opciót, amely arra utasítja a dpkg-t, hogy figyelmen kívül hagyja ezt a hibát és felülírja. a fájl.
Bár sok --force-* opció létezik, rendszeres használathoz csak a --force-overwrite ajánlott. A többi csak kivételes esetekre vonatkozik, és a legjobb, ha nem nyúl hozzájuk, ameddig csak lehetséges, hogy betartsa a csomag létrehozásakor megállapított szabályokat. Ne felejtse el, hogy ezek a szabályok a rendszer integritásának és stabilitásának garanciái.

FIGYELEM! A --force-* hatékony használata

Ha nem vagy óvatos, a --force-* kapcsoló használata az APT parancsok működésének leállását okozhatja. Ezen opciók némelyike ​​lehetővé teszi olyan csomagok telepítését, amelyeknek nem megfelelő függőségei vagy ütközései vannak. Ennek eredményeként a rendszer konzisztenciája a függőségek tekintetében megszakad, és az APT parancsok megtagadják a rendszert konzisztens állapotba visszaállító műveletek végrehajtását (ez általában egy hiányzó függőség telepítésével vagy egy problémás csomag). Íme egy példa egy ilyen hibát jelző üzenetre, amely az rdesktop új verziójának telepítése után érkezik, figyelmen kívül hagyva a libc6 újabb verziójától való függőséget:

alkalmas teljes frissítés

Használhatja az "apt-get -f install" parancsot a hibák kijavításához.
Ki nem elégített függőséggel rendelkező csomagok:
rdesktop: Attól függ: libc6 (>= 2.5), de a 2.3.6.ds1-13etch7 már telepítve van
E: Ki nem elégített függőségek.

Próbáld meg az -f parancsot.
Az Intrepid rendszergazdák, akik magabiztosak a helyzetelemzésben, figyelmen kívül hagyhatják a függőségi vagy ütközési figyelmeztetést a megfelelő --force-* opció használatával. Ebben az esetben, ha folytatni szeretné az apt vagy aptitude használatát, szerkesztenie kell a /var/lib/dpkg/status fájlt, és el kell távolítania/meg kell változtatnia a függőséget vagy ütközést.
Szerkesztés adott fájl egy piszkos hack, és nem szabad használni, kivéve a legszélsőségesebb esetekben. Gyakran legjobb megoldás A problémát okozó csomag újjáépítése: "Csomag újraépítése abból forráskód”), vagy egy újabb (esetleg javított) verziót használ egy adattárból, például a stable-backports portokból (lásd a 6.1.2.4. szakaszt, „Visszakompatibilis stabil szoftver”).

Csomag eltávolítása

A dpkg futtatása az -r vagy a --remove kapcsolóval, majd a csomagnévvel eltávolítja a csomagot. Ez az eltávolítás azonban nem teljes: minden konfigurációs fájl, karbantartói parancsfájl, naplófájl (rendszernapló) és egyéb, a csomag által használt felhasználói adat megmarad. Ily módon a program eltávolításával könnyen megszabadulhat, de ugyanakkor továbbra is lehetséges ugyanazzal a konfigurációval újratelepíteni. Mert teljes eltávolítása bármi, ami egy csomaggal kapcsolatos, használja a -P vagy --purge kapcsolót, majd írja be a csomag nevét.

A debian-cd csomag teljes eltávolítása

dpkg -r debian-cd

(Adatbázis olvasása... 97747 fájl és könyvtár jelenleg telepítve.)

dpkg -P debian-cd

(Adatbázis olvasása... 97401 fájl és könyvtár jelenleg telepítve.)
A debian-cd (3.1.17) csomag eltávolítva...
A debian-cd (3.1.17) csomag konfigurációs fájljainak tisztítása...

dpkg adatbázis-lekérdezések és .deb fájlok elemzése

A legtöbb beállításnál létezik „hosszú” (egy vagy több szó előtt kettős kötőjel) és „rövid” opciók (egy betű, gyakran a „hosszú” opció első betűje, egyetlen kötőjel után). Ez a konvenció annyira elterjedt, hogy már POSIX szabvány.
Mielőtt befejeznénk ezt a részt, nézzük meg a dpkg opciókat a belső adatbázis különböző információk lekérdezéséhez. Ez először a hosszú opciókat sorolja fel, majd a megfelelő rövid opciókat (amelyek természetesen ugyanazokat az argumentumokat veszik fel). Így a --listfiles csomag (vagy -L) felsorolja a csomag által telepített fájlokat; --search file (vagy -S) megkeresi azt a csomagot, amelyhez ez a fájl tartozik; A --status csomag (vagy -s) információkat jelenít meg egy adott telepített csomagról; --list (vagy -l) listázza a rendszer által ismert csomagokat és azok állapotát; A --contents file.deb (vagy -c) felsorolja a csomagban található fájlokat; Az --info file.deb (vagy -I) egy Debian csomagra vonatkozó információkat jelenít meg.

Információszerzés a dpkg segítségével

dpkg -L base-passwd

/.
/usr
/usr/sbin
/usr/sbin/update-passwd
/usr/share
/usr/share/man
/usr/share/man/ru
/usr/share/man/ru/man8
/usr/share/man/ru/man8/update-passwd.8.gz
/usr/share/man/pl
/usr/share/man/pl/man8
/usr/share/man/pl/man8/update-passwd.8.gz
/usr/share/man/man8
/usr/share/man/man8/update-passwd.8.gz
/usr/share/man/fr
/usr/share/man/fr/man8
/usr/share/man/fr/man8/update-passwd.8.gz
/usr/share/doc-base
/usr/share/doc-base/users-and-groups
/usr/share/base-passwd
/usr/share/base-passwd/passwd.master
/usr/share/base-passwd/group.master
/usr/share/lintian
/usr/share/lintian/overrides
/usr/share/lintian/overrides/base-passwd
/usr/share/doc
/usr/share/doc/base-passwd
/usr/share/doc/base-passwd/copyright
/usr/share/doc/base-passwd/users-and-groups.html
/usr/share/doc/base-passwd/changelog.gz
/usr/share/doc/base-passwd/users-and-groups.txt.gz
/usr/share/doc/base-passwd/README

dpkg -S /bin/dátum

coreutils: /bin/date

dpkg -s coreutils

Csomag: coreutils
Alapvető: igen
Állapot: telepítés rendben telepítve
Prioritás: kötelező
Szakasz: közművek
Telepített méret: 13822
Fenntartó: Michael Stone
Építészet: amd64
Többíves: külföldi
Verzió: 8.13-3.5
Csere: mktemp, timeout
Függ: dpkg (>= 1.15.4) | telepítési információ
Előre függ: libacl1 (>= 2.2.51-8), libattr1 (>= 1:2.4.46-8), libc6 (>= 2.7), libselinux1 (>= 1.32)
konfliktusok: időtúllépés
Leírás: GNU alapvető segédprogramok
Ez a csomag tartalmazza az alapvető fájl-, shell- és szövegkezelést
segédprogramok, amelyek várhatóan minden operációs rendszeren léteznek.
.
Ez a csomag konkrétan a következőket tartalmazza:
arch base64 alapnév cat chcon chgrp chmod chown chroot cksum comm cp
csplit vágás dátuma dd df dir dircolors dirname du echo env expand expr
faktor false flock fmt fold group head hostid id install join link ln
logname ls md5sum mkdir mkfifo mknod mktemp mv nice nl nohup nproc od
paste pathchk pinky pr printenv printf ptx pwd readlink rm rmdir runcon
sha*sum seq shred sleep sort split stat stty sum sync tac tail tee test
timeout touch tr true csonkol tsort tty uname unexpand uniq uniq uniq
felhasználók vdir wc, akik whoami igen
Honlap: http://gnu.org/software/coreutils

dpkg -l "b*"

Desired=unknown[u]/install[i]/remove[r]/clean[p]/fix[h]
| Állapot=nincs[n]/telepítve[i]/konfigurálva[c]/kicsomagolva[U]/részben konfigurálva[F]/
részlegesen beállítva[H]/trig-aWait/Trig-pend
|/ Hiba?=(nincs)/újratelepítés szükséges[R] (nagybetű
az állapot és a hiba mezőben rendellenes helyzetet jelez)
||/ Név Verzió Architektúra Leírás
+++-============-==============-==============-================================
un backupninja<нет>(leírás nem elérhető)
bázis<нет>(leírás nem elérhető)
un base-config<нет>(leírás nem elérhető)
ii base-files 7.1 amd64 Debian alaprendszer egyéb
ii base-passwd 3.5.26 amd64 Debian alaprendszer fő jelszó
[...]

Dpkg -c /var/cache/apt/archives/gnupg_1.4.12-7_amd64.deb

drwxr-xr-x root/root 0 2013-01-02 19:28 ./
drwxr-xr-x root/root 0 2013-01-02 19:28 ./usr/
drwxr-xr-x root/root 0 2013-01-02 19:28 ./usr/share/
drwxr-xr-x root/root 0 2013-01-02 19:28 ./usr/share/doc/
drwxr-xr-x root/root 0 2013-01-02 19:28 ./usr/share/doc/gnupg/
-rw-r--r-- root/root 3258 2012-01-20 10:51 ./usr/share/doc/gnupg/TODO
-rw-r--r-- root/root 308 2011-12-02 18:34 ./usr/share/doc/gnupg/FAQ
-rw-r--r-- root/root 3543 2012-02-20 18:41 ./usr/share/doc/gnupg/Upgrading_From_PGP.txt
-rw-r--r-- root/root 690 2012-02-20 18:41 ./usr/share/doc/gnupg/README.Debian
-rw-r--r-- root/root 1418 2012-02-20 18:41 ./usr/share/doc/gnupg/TODO.Debian
[...]

Dpkg -I /var/cache/apt/archives/gnupg_1.4.12-7_amd64.deb

új debian csomag, 2.0 verzió.
mérete 1952176 bájt: vezérlőarchívum 3312 bájt hosszú.
1449 bájt, 30 vezérlősor
4521 bájt, 65 sor md5sums
479 bájt, 13 sor * postinst #!/bin/sh
473 bájt, 13 sor * preinst #!/bin/sh
Csomag: gnupg
Verzió: 1.4.12-7
Építészet: amd64
Karbantartó: Debian GnuPG-karbantartók
Telepített méret: 4627
Függ: libbz2-1.0, libc6 (>= 2.4), libreadline6 (>= 6.0), libusb-0.1-4 (>= 2:0.1.12), zlib1g (>= 1:1.1.4), dpkg (>= 1.15.4) | install-info, gpgv
Ajánlott: libldap-2.4-2 (>= 2.4.7), gnupg-curl
Javaslatok: gnupg-doc, xloadimage | képmágia | eog, libpcsclite1
Szakasz: közművek
Prioritás: fontos
Többíves: külföldi
Honlap: http://www.gnupg.org
Leírás: GNU adatvédelmi őr – ingyenes PGP csere
A GnuPG a GNU biztonságos kommunikációs és adattárolási eszköze.
Használható adatok titkosítására és digitális aláírások létrehozására.
Tartalmaz egy fejlett kulcskezelési lehetőséget, és megfelel az előírásoknak
a javasolt OpenPGP internetes szabvánnyal, az RFC 4880-ban leírtak szerint.
[...]

TOVÁBB: Verzió-összehasonlítás

Mivel a dpkg egy Debian csomagoló, többek között tartalmazza a verziószám-összehasonlítási logika referencia megvalósítását. Ezért van benne a --compare-versions opció, amely használatban van külső programok(főleg a dpkg által futtatott konfigurációs szkriptek). Ez a beállítás három paramétert igényel: egy verziószámot, egy összehasonlító operátort és egy második verziószámot. Az érvényes összehasonlító operátorok: lt (szigorúan kisebb, mint), le (kisebb vagy egyenlő), eq (egyenlő), ne (nem egyenlő), ge (nagyobb vagy egyenlő), és gt (szigorúan nagyobb). Ha az összehasonlítás igaz, a dpkg 0-t (siker) ad vissza, ha nem, akkor nullától eltérő értéket (hiba jelzése).

$ dpkg --hasonlítsa össze-verziók 1.2-3 gt 1.1-4
$ echo $?
0
$ dpkg --verziók összehasonlítása 1,2-3 lt 1,1-4
$ echo $?
1
$ dpkg --verziók összehasonlítása 2.6.0pre3-1lt 2.6.0-1
$ echo $?
1

Vegyük észre az utolsó összehasonlítás váratlan kudarcát: a dpkg esetében a pre betűknek, amelyek általában kiadás előttieket jelölnek, nincs különösebb jelentésük, és az alfabetikus karaktereket ugyanúgy hasonlítják össze, mint a számokat (a< b < c ...), в алфавитном порядке. Именно поэтому dpkg считает, что «0pre3» больше, чем «0». При необходимости указать в номере версии, что она относится к предварительному выпуску, используется символ тильды «~»:

$ dpkg --verziók összehasonlítása 2.6.0~pre3-1lt 2.6.0-1
$ echo $?
0

dpkg naplófájl

A dpkg minden tevékenységéről naplót vezet a /var/log/dpkg.log fájlban. Ez a napló rendkívül részletes, dokumentálva a dpkg-csomagok feldolgozásának minden lépését. Ez a napló nemcsak a dpkg viselkedésének nyomon követését segíti, hanem a rendszer változásainak történetét is megőrzi: pontosan megtalálhatja az egyes csomagok telepítésének vagy frissítésének időpontját, és ez az információ rendkívül hasznos lehet annak kiderítéséhez, hogy miért a rendszer egésze megváltozott. Ezenkívül az összes verzióra vonatkozó információ rögzítésre kerül, és könnyen ellenőrizhető a megfelelő csomag changelog.Debian.gz fájljával vagy online hibajelentésekkel.

Több architektúra támogatása

Minden Debian-csomag metaadatai között szerepel egy Architektúra mező. Ez a mező tartalmazhatja az "all" értéket (architektúrától független csomagok esetén), vagy annak a konkrét architektúrának a nevét, amelyre a csomagot szánják (pl. "amd64", "armhf", ...). Az utóbbi esetben a dpkg alapértelmezés szerint csak akkor engedélyezi a csomag telepítését, ha annak architektúrája megegyezik a dpkg --print-architecture által visszaadott rendszerarchitektúrával.
Ez a korlátozás biztosítja, hogy a rendszeren ne legyenek rossz architektúrára fordított binárisok. Ez nagyszerű lenne, de (egyes) számítógépeken lehetséges a különböző architektúrákhoz tartozó binárisok futtatása, akár natív módon (például az "amd64" rendszerek bináris fájlokat futtatnak az "i386"-hoz), vagy emulátorokon keresztül.

Több architektúra engedélyezése

A dpkg multiarch támogatása lehetővé teszi az adott rendszerre telepíthető "idegen architektúrák" meghatározását. Ez könnyen megtehető a dpkg --add-architecture paranccsal, amint az az alábbi példában látható. Létezik egy megfelelő dpkg --remove-architecture parancs is, amellyel letiltható az idegen architektúra támogatása, de ez csak akkor használható, ha ebből az architektúrából egyetlen csomag sem maradt a rendszeren.

dpkg --print-architecture
amd64

dpkg: hiba feldolgozási archívum gcc-4.9-base_4.9.1-19_armhf.deb (--install):
csomag architektúra (armhf) nem egyezik a rendszerrel (amd64)
A feldolgozás során hibákat észleltünk:
gcc-4.9-base_4.9.1-19_armhf.deb

dpkg --add-architecture armhf
dpkg --add-architecture armel
dpkg --print-külföldi-architektúrák
armhf
armel

dpkg -i gcc-4.9-base_4.9.1-19_armhf.deb

A korábban ki nem választott gcc-4.9-base:armhf csomag kiválasztása.
(Adatbázis olvasása... 86425 jelenleg telepített fájl és könyvtár.)
Felkészülés a gcc-4.9-base_4.9.1-19_armhf.deb kicsomagolására ...
Gcc-4.9-base:armhf (4.9.1-19) kicsomagolása ...
A gcc-4.9-base:armhf (4.9.1-19) beállítása ...

dpkg --remove-architecture armhf

dpkg: hiba: nem lehet eltávolítani az adatbázis által jelenleg használt "armhf" architektúrát

dpkg --remove-architecture armel
dpkg --print-külföldi-architektúrák
Multiarch támogatás az APT-ben

Az APT automatikusan észleli, hogy a dpkg konfigurálva van-e külföldi architektúrák támogatására, és a frissítési folyamat során megkezdi a megfelelő csomagfájlok letöltését.
A külföldi csomagok az apt install package:architecture paranccsal telepíthetők.

Szabadalmaztatott i386 binárisok használata amd64 rendszereken

Van néhány olyan eset, amikor a több architektúra jól jöhet, de a legáltalánosabb az, hogy lehetővé teszik a 32 bites fájlok (i386) futtatását 64 bites rendszereken (amd64), különösen azért, mert egyes népszerű szabadalmaztatott alkalmazások ( mint a Skype) csak 32 bites verzióban érhetők el.

Több architektúra változásai

Ahhoz, hogy a több íves támogatás valóban hasznos legyen, a könyvtárakat újra kellett csomagolni úgy, hogy egy architektúra-specifikus könyvtárba helyezték át őket, hogy egyszerre több másolatot (különböző architektúrákhoz) lehessen telepíteni. Az ilyen frissített csomagok egy "Multi-Arch: ugyanaz" fejlécet tartalmaznak, amely jelzi a csomagkezelő rendszernek, hogy különböző csomagarchitektúrák együtt telepíthetők (és ezek a csomagok csak az azonos architektúrájú csomagok függőségeit képesek kielégíteni). Mivel a multiarch támogatást csak a Debian Wheezyben adták hozzá, még nem konvertálták át az összes könyvtárat.

dpkg -s gcc-4.9-base

dpkg-query: hiba: a --statushoz érvényes csomagnév szükséges, de a 'gcc-4.9-base' nem: kétértelmű csomagnév: 'gcc-4.9-base' egynél több példány esetén

Használja a --help opciót a csomagkérések súgójának megjelenítéséhez.

Dpkg -s gcc-4.9-base:amd64 gcc-4.9-base:armhf | grep ^Multi

Többíves: ugyanaz
Többíves: ugyanaz

Dpkg -L libgcc1:amd64 |grep .so

/lib/x86_64-linux-gnu/libgcc_s.so.1

dpkg -S /usr/share/doc/gcc-4.9-base/copyright

gcc-4.9-base:amd64, gcc-4.9-base:armhf: /usr/share/doc/gcc-4.9-base/copyright

Érdemes megjegyezni, hogy a Multi-Arch: azonos mezőt tartalmazó csomagokat az architektúra nevével kell elnevezni, hogy egyedileg azonosíthatók legyenek. Nekik is lehet megosztott fájlokat ugyanazon csomag más példányaival; A dpkg ebben az esetben biztosítja, hogy minden csomag bitenként azonos közös fájlokkal rendelkezzen. A csomag minden példányának azonos verziójúnak kell lennie, ezért azokat együtt kell frissíteni.
A több architektúra támogatása néhány érdekes funkciót is hoz a függőségi kezelési mechanizmusba. A függőség kielégítéséhez vagy egy "Multi-Arch: Foreign" jelzésű csomagra, vagy egy ugyanolyan architektúrájú csomagra van szükség (a függőségi feloldáshoz az architektúrától független csomagokat a rendszer architektúrájával megegyezőnek tekintjük). A függőséget enyhíteni is lehet, hogy egy tetszőleges architektúrájú csomag kielégítse azt a package:any szintaxis használatával, de az idegen csomagok csak akkor elégíthetnek ki ilyen függőséget, ha meg vannak jelölve "Multi-Arch: enabled".

Használt anyagok.

Az Ubuntu 16.04 most megjelent, és sok nagyon érdekes változást hoz a felhasználók számára, például fájlrendszer BSD - ZFS támogatás új technológia csomagtelepítések – snap és még sokan mások. De egy dologról valószínűleg még nem hallottál, mert az ilyen apróságok gyakran elvesznek, helyénvaló.

Mi az alkalmas? Ez egy új Ubuntu csomagkezelő, amely készen áll az apt-get munkájára. Úgy tervezték, hogy barátságosabb, hatékonyabb és biztonságosabb legyen. Tehát mire gondolt a Canonical, amikor bemutatta az új csomagkezelőt? Valóban vannak különbségek az apt és az apt-get között? Ezt fogjuk megtudni mai cikkünkből.

Az Apt-ot azért vezették be, hogy megkönnyítsék a csomagkezelővel való munkát, és több parancsot is egyesítsenek egybe. Az apt-get funkcióit átterveztük, hogy megfelelően működjön az apt-ban.

Bár ezek az új parancsok az apt-gethez hasonlóan működnek, a csomagokkal való interakcióhoz új kódon alapulnak.

Az apt bevezetésének fő oka az Ubuntu lényege - az egyszerűség és a könnyű használat. Akár be akarják ismerni az emberek, akár nem, az apt-get egy elavult eszköz, és praktikussága erősen megkérdőjelezhető. Az Apt az alapoktól kezdve úgy lett megtervezve, hogy még hatékonyabb legyen, és az új felhasználók számára is élvezetes legyen.

apt vs apt-get. Mik a különbségek?

apt vagy apt-get. Tehát mi a különbség a két megoldás között? Kezdetben már nem kell az apt-get autoremove parancsot használnia a csomag-gyorsítótár törléséhez. Ezenkívül nem kell beírnia az apt-cache search parancsot a csomagok megtalálásához.

Ezeket a parancsokat az apt search és az apt remove váltotta fel. Az apt fő különbsége, hogy az összes apt-get, apt-cache stb. parancsot helyettesíti. Az összes funkció egyetlen segédprogramban van kombinálva.

Bár nem ez az egyetlen különbség az apt-gettől. A szoftvertelepítés folyamatjelző sávja itt tovább lett javítva. Támogat néhány olyan kiegészítést is, amelyek intelligensebbé teszik a segédprogramot, mint az előző. Például a szoftverforrások apt-get paranccsal történő frissítésekor nincs ilyen egyszerű módja lásd a frissíthető csomagok listáját. Csak sudo apt-get update, majd:

sudo apt list-upgradable

Persze apróságok, de szépek. Új, modern kimeneti színek is hozzáadásra kerültek, és a csomagok általános telepítése gyorsabb. A Canonical nem siet eltávolodni az apt-gettől, de pozitív változást fognak elérni.

Új Apt parancsok

Itt található az apt által támogatott parancsok listája, közvetlenül a --help kimenetből. Ezek a parancsok nagyon hasonlítanak az apt-get és apt-cache megvalósításához, de jobban szervezettek és csoportosítottak.

Alapvető parancsok:

  • lista- csomaglista
  • keresés- csomagok keresése név szerint
  • előadás- részletes információk megjelenítése a csomagról
  • frissítés- frissítse az elérhető csomagok listáját
  • telepítés- telepítse a csomagot
  • távolítsa el- távolítsa el a csomagot
  • frissíteni- az elérhető új csomagverziók telepítése
  • teljes frissítés- teljes rendszerfrissítés
  • edit-sources- Szoftverforrás fájl szerkesztése

További információért futtassa a man apt terminálban. Az ott tárolt információk segítenek az új segédprogram alapos tanulmányozásában.

következtetéseket

Az Apt-get a szoftverkezelő bevált része. Ez az eszköz már régóta létezik, és alapértelmezés szerint számos Ubuntu és Debian kiadásban megtalálható. Mindig akkor használtuk, ha valamit frissíteni, frissíteni kellett szoftver vagy akár csak megtisztítja a rendszert a szeméttől.

Azonban kezd elöregedni. A csomagkezelő már nem elégíti ki a felhasználók minden igényét, ezért lassan felváltja az apt. Az Ubuntu fejlesztői megértik, hogy frissíteniük kell csomagkezelőjüket, hogy egyszerűbbé, elegánsabbá és biztonságosabbá tegyék. De bár mindkét segédprogram létezik a rendszerben, Ön dönti el, hogy az apt vagy az apt-get parancsot használja. Használja az új csomagkezelőt? Vagy már használod?

Ha hibát észlel, jelöljön ki egy szövegrészt, és nyomja meg a Ctrl + Enter billentyűket
OSSZA MEG: