GNU/Linux >> Znalost Linux >  >> Ubuntu

Příkaz dpkg v Linuxu s příklady

Úvod

dpkg v Linuxu je primární správce balíčků pro Debian a systémy založené na Debianu, jako je Ubuntu. Nástroj instaluje, sestavuje, odstraňuje, konfiguruje a získává informace pro balíčky Debianu. Příkaz pracuje s balíčky v .deb formát.

Tento průvodce zkoumá dpkg syntaxe a možnosti příkazů prostřednictvím různých příkladů.

Předpoklady

  • Systém s Debianem nebo OS založeným na Debianu.
  • Přístup k příkazovému řádku/terminálu jako sudo.
  • A .deb soubor pro práci s příklady.

Syntaxe příkazu dpkg

Základní syntaxe dpkg příkaz je:

dpkg [options] action

Příkaz přijímá jednu akci a nula nebo více možností.

dpkg příkaz funguje jako front-end pro následující dva nástroje:

1. dpkg-deb příkaz, který zobrazuje informace o .deb balíčky.

2. dpkg-query příkaz, který zobrazuje informace z databáze dpkg.

dpkg příkaz spouští akce z dpkg-query a dpkg-deb . Následující dva příkazy proto zobrazují stejný výsledek:

dpkg -l
dpkg-query -l

Akce -l je dpkg-query akce, která vypíše všechny balíčky z databáze dpkg. dpkg příkaz zjistí cizí možnosti a spustí dpkg-query automaticky.

Možnosti příkazu dpkg

Níže uvedená tabulka poskytuje stručný popis běžně používaných možností a akcí pro dpkg příkaz.

Syntaxe Typ Popis
-i <package.deb>
--install <package.deb>
Akce Nainstaluje balíček.
--unpack <package.deb> Akce Rozbalí balíček bez konfigurace.
--configure <package> Akce Konfiguruje rozbalený balíček.
-r <package>
--remove <package>
Akce Odstraní nainstalovaný balíček. Neodstraní konfigurační soubory a další data.
-P <package>
--purge <package>
Akce Vyčistí nainstalovaný nebo odstraněný balíček. Smaže konfigurační soubory a další data.
--get-selections Akce Načte balíčky s aktuálním výběrem.
--set-selections Akce Nastavuje stavy výběru souboru ze souboru načteného ze standardního vstupu.
-b <directory>
--build <directory>
Akce
(z dpkg-deb)
Vytvoří .deb balíček.
-c <package.deb>
--contents <package.deb>
Akce
(z dpkg-deb)
Seznamy obsah balení.
-I <package.deb>
--info <package.deb>
Akce
(z dpkg-deb)
Zobrazuje informace o balíčku.
-l <pattern>
--list <pattern>
Akce
(z dpkg-query)
Vypisuje balíčky podle vzoru.
-L <package>
--listfiles <package>
Akce
(z dpkg-query)
Uveďte umístění souborů nainstalovaného balíčku.
-s <package>
--status <package>
Akce
(z dpkg-query)
Zobrazuje stav nainstalovaného balíčku.
-S <pattern>
--search <pattern>
Akce
(z dpkg-query)
Vyhledejte vzor v nainstalovaných balíčcích.
-R
--recursive
Možnost Zvládá akci rekurzivně v cílovém adresáři a podadresářích.
--log=<file> Možnost Zaznamená do souboru aktualizace změn stavu.
--no-act
--dry-run
--simulate
Možnost Zobrazuje výstup bez potvrzení změn. Použijte před akcí.

Akce, které mění systém, jako je instalace nebo odstranění balíčku, vyžadují oprávnění sudo. Možnosti založené na informacích nevyžadují zvláštní uživatelská oprávnění.

Správa privilegovaného přístupu pomáhá zabezpečit systém tím, že běžným uživatelům neumožňuje provádět změny v celém systému.

Příklady příkazů dpkg

Pokud máte .deb balíček, pokračujte na příklady níže. Pokud ne, stáhněte si jednoduchý .deb balíček pro testování, jako je cowsay trik příkazového řádku.

Chcete-li získat soubor, spusťte následující:

wget http://archive.ubuntu.com/ubuntu/pool/universe/c/cowsay/cowsay_3.03+dfsg2-4_all.deb

Potvrďte .deb soubor stažený výpisem obsahu adresáře pomocí příkazu ls:

ls -l *.deb

Výstup zobrazuje .deb balíček.

Instalovat balíček

Nainstalujte balíček Debianu pomocí dpkg a -i nebo --install tag:

sudo dpkg -i <package.deb>

Například:

sudo dpkg -i cowsay_3.03+dfsg2-4_all.deb

Příkaz vyžaduje sudo k instalaci .deb balíček.

Seznam známých balíčků

Chcete-li vypsat všechny známé balíčky, použijte -l tag:

dpkg -l

Příkaz vytiskne balíčky v režimu pageru. Procházejte pomocí kláves se šipkami nebo použijte mezera k seznamu po stránce. Stiskněte q pro opuštění seznamu. Ve sloupcích je uveden název, verze, architektura a popis každého balíčku.

První tři sloupce poskytují úplný přehled o stavu balíčku:

1. Výběr akce:

  • u - Neznámý
  • i - Instalovat
  • h - Podržte
  • r - Odebrat
  • p - Vyčistit

2. Stav balíčku:

  • n - Není nainstalováno
  • c - Konfigurační soubory
  • H - Napůl nainstalován
  • U - Rozbaleno
  • F - Poloviční konfigurace
  • W - Čekání na spouštěče
  • t – Nevyřízené spouštěče
  • i - Instalováno

3. Příznaky chyb:

  • R - Vyžaduje se přeinstalace
  • <empty> - Žádné chyby

Stav balíčku "ii " znamená dpkg úspěšně nainstaloval balíček vybraný k instalaci bez chyb.

Chcete-li načíst konkrétní instanci ze seznamu, použijte:

dpkg -l <package>

Například:

dpkg -l cowsay

Chcete-li vypsat více balíčků, oddělte každý název balíčku mezerou.

Odebrat balíček

Chcete-li odebrat balíček Debianu, použijte následující příkaz:

dpkg -r <package>

Chcete-li například odstranit balíček cowsay, použijte:

sudo dpkg -r cowsay

-r volba neodstraní konfigurační soubory. Tuto možnost použijte při odebírání softwaru za účelem opětovné instalace.

Vyčistit balíček

K vyčištění balíčku použijte -P možnost:

sudo dpkg -P <package>

Například:

sudo dpkg -P cowsay

Příkaz odstraní balíček spolu se všemi konfiguračními soubory. K úplnému odstranění programu ze systému použijte purge.

Zobrazit obsah balíčku

.deb balíček obsahuje několik souborů a adresářů, které označují, kde se balíček nachází po instalaci nebo rozbalení.

Chcete-li zobrazit obsah balíčku, spusťte:

dpkg -c <package.deb>

Například:

dpkg -c cowsay*

Výstup zobrazuje všechny soubory a adresáře v .deb soubor balíčku. Ukázkový balíček se nachází v /usr/games/ a /usr/share/ po instalaci nebo rozbalení.

Rozbalit balíček

Pro rozbalení balíčku bez konfigurace použijte:

sudo dpkg --unpack <package.deb>

Například:

sudo dpkg --unpack cowsay*

Příkaz rozbalí všechny soubory z balíčku.

Konfigurovat balíček

Konfigurace rozbaleného souboru .deb balíček nebo překonfigurujte nainstalovaný balíček, použijte:

dpkg --configure <package>

Například:

sudo dpkg --configure cowsay

Rozbalení a konfigurace balíčku Debian rozděluje instalační proces do dvou kroků.

Zkontrolujte, zda je balíček nainstalován

Chcete-li zkontrolovat, zda je balíček nainstalován, použijte -s tag:

dpkg -s <package>

Například:

dpkg -s cowsay

Stav řádek ukazuje, zda je balíček nainstalován.

Zobrazit informace o balíčku

Chcete-li zobrazit informace o balíčku přímo z .deb soubor, použijte následující příkaz:

dpkg -I <package.deb>

Například:

dpkg -I cowsay*

Příkaz zobrazuje informace o balíčku, jako je velikost, závislosti a odkazy na dokumentaci. Tuto metodu použijte ke kontrole informací o balíčku před instalací balíčku.

Instalovat všechny balíčky z adresáře

Použijte -R možnost před -i pro rekurzivní instalaci balíčků:

dpkg -R -i <directory>

Příkaz nainstaluje všechny balíčky umístěné v adresáři a všech podadresářích. Pokud se rozbalí více instancí stejného balíčku, dojde pouze k jedné konfiguraci.

Vypsat umístění souborů nainstalovaných balíčků

Chcete-li zobrazit soubory balíčku a jejich umístění, použijte -L tag:

dpkg -L <package>

Například:

dpkg -L cowsay

Výstup uvádí všechny adresáře souborů a umístění souborů.

Získejte výběr balíčků

Chcete-li načíst názvy balíčků podle výběru, použijte:

dpkg --get-selections

Seznam zobrazuje názvy balíků a označení výběru.

Seznam nainstalovaných balíčků

Chcete-li načíst seznam nainstalovaných balíčků, použijte následující příkaz:

dpkg --get-selections | grep -v "deinstall" | awk '{ print $1 }'

Příkaz provede následující:

  • grep odfiltruje balíčky označené "deinstall" .
  • awk vytiskne pouze první sloupec s názvy balíčků.

Tuto metodu použijte, pokud požadujete seznam nainstalovaných programů.

Nastavit výběr balíčků

Nastavte výběr balíčku pro balíček v následujícím formátu:

echo <package> <state> | dpkg --set-selections

Příkaz očekává stav balíčku jako standardní vstup. Možné podmínky jsou:

  • install
  • hold
  • deinstall
  • purge
  • unknown

Chcete-li například zastavit aktualizaci balíčku, použijte:

echo cowsay hold | sudo dpkg --set-selections

Balíček je ve stavu pozastavení, což znamená, že program nedostává žádné automatické aktualizace.

Prohledat balíček obsahující soubory

Chcete-li najít balíček obsahující soubor, použijte -S možnost:

dpkg -S <pattern>

Hledejte například apt-get:

dpkg -S apt-get

Výstup zobrazuje apt-get patří k apt balíček.

Případně vyhledejte konkrétní soubor. Například:

dpgk -S gnu.cow

Výstup ukazuje, že soubor patří do balíčku cowsay.

Porovnat verze

dpkg příkaz nabízí nástroj pro porovnání čísel verzí programu. Syntaxe je:

dpkg --compare-versions <version number> <comparison operator> <version number>

Možné operátory porovnání jsou:

  • lt - Striktně méně než
  • le - Menší nebo rovno
  • eq - Rovný
  • ne - Nerovná se
  • ge - Větší nebo rovno
  • gt - Přísně větší než

dpkg vrátí 0 (úspěch) pro správné porovnání a nenulovou hodnotu pro selhání.

Porovnejte například následující čísla verzí:

dpkg --compare-versions 1.2-3 gt 1.1-4
echo $?

Příkaz vrátí 0 , což znamená, že první číslo verze je větší než druhé.

Podpora více architektur

Všechny balíčky Debianu obsahují informace o podporované architektuře. Omezení zajišťuje, že systém neskončí s binárními soubory pro nesprávnou architekturu.

Některé architektury nativně podporují různé architektury. Například amd64 (64bitový systém) podporuje instalace i386 (32bitový systém).

dpkg příkaz odpovídá architektuře hostitele. Získejte informace pomocí:

dpkg --print-architecture

Chcete-li zobrazit podporu zahraniční architektury, použijte:

dpkg --print-foreign-architectures

Chcete-li přidat nebo odebrat podporu architektury, použijte:

sudo dpkg --add-architecture <architecture name>
sudo dpkg --remove-architecture <architecture name>

V obou případech zahraniční architektury vypisují aktualizace se změnami okamžitě.

Zkontrolujte verzi příkazu dpkg

Chcete-li zkontrolovat, jakou verzi dpkg systém běží, použijte:

dpkg --version

Výstup zobrazuje verzi dpkg spolu s architekturou.

Vytisknout nápovědu

Chcete-li zobrazit jednoduchou nabídku nápovědy, použijte následující příkaz:

dpkg --help 

Pomocí příkazu man vyhledejte úplnou dokumentaci.


Ubuntu
  1. Linux Tee Command s příklady

  2. Příkaz linuxové hlavy s příklady

  3. JQ Command v Linuxu s příklady

  1. Linux Source Command s příklady

  2. wc Linux Command s příklady

  3. Linux řazení příkazů s příklady

  1. Echo Command v Linuxu (s příklady)

  2. man Command v Linuxu s příklady

  3. Příkaz AWK v Linuxu s příklady