Dpkg
Dpkg (Debian Package) je systém správy balíčků v Debianu a linuxových distribucích založených na debianu, jako je Ubuntu.
Dpkg je ve skutečnosti nízkoúrovňový nástroj příkazového řádku pro správu balíčků. Liší se od nástrojů jako apt-get a gdebi.
Apt-get a Gdebi jsou pokročilejší nástroje, které dokážou vyřešit závislosti a nainstalovat je tak, aby hlavní balíček a fungoval správně.
V tomto rychlém tutoriálu se podíváme na některé základní příklady příkazu dpkg a na to, jak jej používat ke správě balíčků ve vašem systému.
Příkaz dpkg funguje na systémech jako Debian, Ubuntu, Linux Mint a Elementary OS.
Příklady příkazů Dpkg
1. Seznam všech nainstalovaných balíčků
Tento příkaz zobrazí seznam všech nainstalovaných balíčků. Informace se vytisknou v tabulkovém formátu se sloupci pro Název, verzi, architekturu a popis. Seznam bude obrovský a můžete se v něm posouvat nahoru a dolů.
$ dpkg -l Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-===============================================-===========================================-============-================================================= ii accountsservice 0.6.55-0ubuntu10 amd64 query and manipulate user account information ii accountwizard 4:19.04.3-0ubuntu1 amd64 wizard for KDE PIM applications account setup ii acl 2.2.53-4 amd64 access control list - utilities ii acpi-support 0.143 amd64 scripts for handling many ACPI events
2. Prohledejte nainstalované balíčky
V seznamu nainstalovaných balíčků můžete vyhledat konkrétní položku a zjistit, zda je nainstalována nebo ne.
Vyhledejte v nainstalovaných balíčcích 'apache'
$ dpkg --get-selections | grep 'apache' apache2 install apache2-mpm-prefork install apache2-suexec install apache2-utils install apache2.2-bin install apache2.2-common install libapache-pom-java install libapache2-mod-fcgid install libapache2-mod-php5 install
Nebo použijte stejnou volbu l k vyhledání nainstalovaných balíčků. To je ve skutečnosti jednodušší.
$ dpkg -l php* Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-===============================-====================-====================-==================================================================== un php-doc <none> (no description available) un php-imlib <none> (no description available) un php-kolab-filter <none> (no description available) un php-openid <none> (no description available) un php-pear <none> (no description available) un php-radius-legacy <none> (no description available) ii php5 5.4.6-1ubuntu1.2 all server-side, HTML-embedded scripting language (metapackage) ii php5-cgi 5.4.6-1ubuntu1.2 amd64 server-side, HTML-embedded scripting language (CGI binary) ii php5-cli 5.4.6-1ubuntu1.2 amd64 command-line interpreter for the php5 scripting language ii php5-common 5.4.6-1ubuntu1.2 amd64 Common files for packages built from the php5 source
3. Seznam souborů nainstalovaných balíčkem
Chcete-li najít cestu ke všem souborům, které jsou nainstalovány určitým balíčkem, použijte volbu "L" s dpkg
$ dpkg -L php5-cli /. /etc /etc/php5 /etc/php5/cli /usr /usr/share /usr/share/man /usr/share/man/man1 /usr/share/man/man1/php5.1.gz /usr/share/doc /usr/share/lintian /usr/share/lintian/overrides /usr/share/lintian/overrides/php5-cli /usr/lib /usr/lib/php5 /usr/lib/php5/20100525 /usr/bin /usr/bin/php5 /etc/php5/cli/conf.d /usr/share/doc/php5-cli
Další příklady
dpkg -i <package.deb> Installs a Debian package file; one that you downloaded manually, for example. dpkg -c <package.deb> Lists the contents of <package.deb>, a .deb file. dpkg -I <package.deb> Extracts package information from <package.deb>, a .deb file. dpkg -r <package> Removes an installed package named <package> dpkg -P <package> Purges an installed package named <package>. The difference between remove and purge is that while remove only deletes data and executables, purge also deletes all configuration files in addition. dpkg -L <package> Gives a listing of all the files installed by <package>. See also dpkg -c for checking the contents of a .deb file. dpkg -s <package> Shows information on the installed package <package>. See also apt-cache show for viewing package information in the Debian archive and dpkg -I for viewing package information extracted from a .deb file. dpkg-reconfigure <package> Reconfigures an installed package, if it uses debconf (debconf provides that consistent configuration interface for package installation). You can reconfigure debconf itself if you want to change the front-end or priority of questions asked. For example, to reconfigure debconf with the dialog front-end, you simply run: dpkg-reconfigure --frontend=dialog debconf echo ``<package> hold'' | dpkg --set-selections Put <package> on hold (command line method) dpkg --get-selections ``<package>'' Get the current status of <package> (command line method) dpkg -S <file> Searches for <file> in package database, telling you which packages have that file in them.
Překonfigurujte nainstalované balíčky
Balíčky lze překonfigurovat pomocí příkazu dpkg-reconfigure.
Například překonfigurování phpmyadmin:
$ dpkg-reconfigure phpmyadmin
Závěr
To byly některé základní příklady příkazu dpkg. Ve většině případů byste pravděpodobně nepoužili balíček dpkg pro správu balíčků, protože je to nízkoúrovňový příkaz a poskytuje pouze základní funkce instalace nebo odstranění balíčků .deb.
Nespravuje repozitáře a nenachází a neinstaluje závislosti, aby hlavní balíček fungoval správně.
Ostatní příkazy jako apt-get, aptitude, apt, gdebi by měly být použity pro instalaci a údržbu balíčků na vašem systému.
Pokud máte nějakou zpětnou vazbu nebo dotazy, dejte nám vědět v komentářích níže.