Pokud používáte Debian nebo systém založený na Debianu (jako Ubuntu), je vysoká pravděpodobnost, že jste narazili na balíčky .deb. Toto jsou balíčky Debianu a příkazová řádka Linuxu nabízí vestavěné příkazy/nástroje pro práci s tímto druhem balíčků. Jedním z takových nástrojů je dpkg , o kterém budeme diskutovat zde v tomto tutoriálu.
Ale než to uděláme, stojí za zmínku, že všechny příklady v tomto tutoriálu byly testovány na počítači Ubuntu 16.04LTS.
Příkaz dpkg pro Linux
Nástroj dpkg je v podstatě správce balíčků pro systémy založené na Debianu/Debianu. Následuje jeho syntaxe:
dpkg ACTIONS
NEBO
dpkg [options] filename
A zde je návod, jak to vysvětluje manuálová stránka:
dpkg is a tool to install, build, remove and manage Debian packages.
The primary and more user-friendly front-end for dpkg is aptitude(1).
dpkg itself is controlled entirely via command line parameters, which
consist of exactly one action and zero or more options. The action-
parameter tells dpkg what to do and options control the behavior of the
action in some way.
dpkg can also be used as a front-end to dpkg-deb(1) and dpkg-query(1).
The list of supported actions can be found later on in the ACTIONS sec?
tion. If any such action is encountered dpkg just runs dpkg-deb or
dpkg-query with the parameters given to it, but no specific options are
currently passed to them, to use any such option the back-ends need to
be called directly.
Následuje několik příkladů ve stylu otázek a odpovědí, které by vám měly poskytnout dobrou základní představu o tom, jak dpkg funguje.
Q1. Jak nainstalovat balíček pomocí dpkg?
To můžete provést pomocí volby příkazového řádku -i.
dpkg -i [package-name]
Například:
dpkg -i google-chrome-stable_current_amd64.deb
Zde jsou uvedeny všechny kroky procesu instalace:
1. Extract the control files of the new package.
2. If another version of the same package was installed before
the new installation, execute prerm script of the old package.
3. Run preinst script, if provided by the package.
4. Unpack the new files, and at the same time back up the old
files, so that if something goes wrong, they can be restored.
5. If another version of the same package was installed before
the new installation, execute the postrm script of the old pack?
age. Note that this script is executed after the preinst script
of the new package, because new files are written at the same
time old files are removed.
6. Configure the package. See --configure for detailed informa?
tion about how this is done.
Q2. Jak odstranit již nainstalovaný balíček pomocí dpkg?
To lze provést pomocí volby příkazového řádku -r.
dpkg -r [package-name]
Například:
dpkg -r googler_3.3.0-1_all.deb
Zde je to, co o této možnosti říká manuálová stránka:
Removing of a package consists of the following steps:
1. Run prerm script
2. Remove the installed files
3. Run postrm script
Q3. Jak vypsat všechny nainstalované balíčky v systému?
K tomu můžete použít volbu -l příkazového řádku.
dpkg -l
Zde je například výstup této možnosti příkazového řádku vytvořený v mém systému:
4. Jak vytvořit dpkg seznam obsahu balíčku?
To lze provést pomocí parametru --contents.
dpkg --contents [package name]
Například:
O5. Jak jednoduše rozbalit balíček pomocí dpkg?
Mohou nastat situace, kdy budete chtít balíček pouze rozbalit, nikoli konfigurovat. No, dpkg poskytuje možnost i pro toto:--unpack.
dpkg --unpack [package-name]
Pokud později budete chtít nakonfigurovat již rozbalený balíček, můžete tak učinit pomocí možnosti příkazového řádku --configure.
dpkg --configure [package-name]
Následující manuálová stránka říká o této možnosti:
Configuring consists of the following steps:
1. Unpack the conffiles, and at the same time back up the old
conffiles, so that they can be restored if something goes wrong.
2. Run postinst script, if provided by the package.
O6. Jak zkontrolovat, zda je balíček nainstalován nebo ne?
Použijte k tomu volbu příkazového řádku -s.
dpkg -s [package-name]
Například:
O7. Jak vytisknout architekturu balíčků, které dpkg nainstaluje?
K těmto informacím lze přistupovat pomocí volby příkazového řádku --print-architecture.
dpkg --print-architecture
Například výstup výše uvedeného příkazu vytvořený v mém systému byl:
amd64
O8. Jak vyčistit balíček pomocí dpkg?
Již jsme diskutovali o tom, jak odstranit balíček pomocí příkazu dpkg. Můžete také vyčistit balíček, což je proces, který odstraní vše, včetně konfiguračních souborů. To lze provést pomocí volby příkazového řádku -P.
dpkg -P [package-name]
Zde je to, co o této možnosti říká manuálová stránka:
Some configuration files might be unknown to dpkg because
they are created and handled separately through the configura?
tion scripts. In that case, dpkg won't remove them by itself,
but the package's postrm script (which is called by dpkg), has
to take care of their removal during purge. Of course, this only
applies to files in system directories, not configuration files
written to individual users' home directories.
Purging of a package consists of the following steps:
1. Remove the package, if not already removed. See --remove for
detailed information about how this is done.
2. Run postrm script.
Závěr
Příkaz dpkg nabízí nepřeberné množství možností. Zde jsme diskutovali o možnostech, které vám pomohou začít s tímto nástrojem. Až budete s jejich procvičováním hotovi, přejděte na stránku manuálu příkazu, kde najdete další informace.