Příkaz RPM se používá k instalaci, odinstalaci, upgradu, dotazování, výpisu a kontrole RPM balíčků ve vašem systému Linux .
RPM znamená R ed. Klobouk P ackage M anager.
S oprávněním root můžete ke správě softwarových balíků RPM použít příkaz rpm s příslušnými možnostmi.
V tomto článku si projdeme 15 praktických příkladů příkazu rpm.
Vezměme rpm klienta Mysql a projdeme si všechny naše příklady.
1. Instalace balíčku RPM Pomocí rpm -ivh
RPM název souboru má název balíčku, verzi, verzi a název architektury.
Například v souboru MySQL-client-3.23.57-1.i386.rpm:
- klient MySQL – název balíčku
- 3.23.57 – Verze
- 1 – Vydání
- i386 – Architektura
Když nainstalujete RPM, zkontroluje, zda je váš systém vhodný pro software, který balíček RPM obsahuje, zjistí, kam nainstalovat soubory umístěné uvnitř balíčku rpm, nainstaluje je do vašeho systému a přidá tento software do své databáze. nainstalované balíčky RPM.
Následující příkaz rpm nainstaluje balíček klienta Mysql.
# rpm -ivh MySQL-client-3.23.57-1.i386.rpm Preparing... ########################################### [100%] 1:MySQL-client ########################################### [100%]
rpm příkaz a možnosti
- -i :instalace balíčku
- -v :podrobný
- -h:tiskne značky hash při rozbalování archivu balíčků.
K instalaci balíčků můžete také použít dpkg na Debianu, pkgadd na Solaris, depot na HP-UX.
2. Dotazujte se na všechny balíčky RPM pomocí rpm -qa
Můžete použít příkaz rpm k dotazu na všechny balíčky nainstalované ve vašem systému.
# rpm -qa cdrecord-2.01-10.7.el5 bluez-libs-3.7-1.1 setarch-2.0-1.1 . .
- -q operace dotazu
- -a se dotazuje na všechny nainstalované balíčky
Chcete-li zjistit, zda je na vašem systému nainstalován konkrétní balíček rpm, zkombinujte příkaz rpm a grep, jak je znázorněno níže. Následující příkaz zkontroluje, zda je na vašem systému nainstalován balíček cdrecord.
# rpm -qa | grep 'cdrecord'
3. Dotaz na konkrétní balíček RPM pomocí rpm -q
Výše uvedený příklad uvádí všechny aktuálně nainstalované balíčky. Po instalaci balíčku pro kontrolu instalace se můžete dotázat konkrétního balíčku a ověřit jej, jak je uvedeno níže.
# rpm -q MySQL-client MySQL-client-3.23.57-1 # rpm -q MySQL package MySQL is not installed
Poznámka:Chcete-li se dotazovat na balíček, měli byste zadat přesný název balíčku. Pokud je název balíčku nesprávný, příkaz rpm oznámí, že balíček není nainstalován.
4. Dotazujte se na balíčky RPM v různém formátu pomocí rpm –queryformat
Příkaz Rpm poskytuje volbu –queryformat, která vám umožňuje zadat názvy tagů záhlaví, aby byly uvedeny balíčky. Uzavřete značku záhlaví s v {}.
# rpm -qa --queryformat '%{name}-%{version}-%{release} %{size}\n' cdrecord-2.01-10.7 12324 bluez-libs-3.7-1.1 5634 setarch-2.0-1.1 235563 . . #
5. Ke kterému balíčku RPM soubor patří? – Použijte rpm -qf
Řekněme, že máte seznam souborů a chtěli byste vědět, který balíček vlastní všechny tyto soubory. Příkaz rpm má možnosti, jak toho dosáhnout.
Následující příklad ukazuje, že soubor /usr/bin/mysqlaccess je součástí MySQL-client-3.23.57-1 rpm.
# rpm -qf /usr/bin/mysqlaccess MySQL-client-3.23.57-1
- -f :název souboru
6. Vyhledejte dokumentaci balíčku, který vlastní soubor, pomocí rpm -qdf
Chcete-li znát seznam dokumentace pro balíček, který vlastní soubor, použijte následující. Následující příkaz udává umístění všech manuálových stránek souvisejících s balíčkem mysql.
# rpm -qdf /usr/bin/mysqlaccess /usr/share/man/man1/mysql.1.gz /usr/share/man/man1/mysqlaccess.1.gz /usr/share/man/man1/mysqladmin.1.gz /usr/share/man/man1/mysqldump.1.gz /usr/share/man/man1/mysqlshow.1.gz
- -d :odkazuje na dokumentaci.
7. Informace o nainstalovaném RPM balíčku pomocí rpm -qi
Příkaz rpm poskytuje mnoho informací o nainstalovaném balíčku pomocí rpm -qi, jak je uvedeno níže:
# rpm -qi MySQL-client Name : MySQL-client Relocations: (not relocatable) Version : 3.23.57 Vendor: MySQL AB Release : 1 Build Date: Mon 09 Jun 2003 11:08:28 PM CEST Install Date: Mon 06 Feb 2010 03:19:16 AM PST Build Host: build.mysql.com Group : Applications/Databases Source RPM: MySQL-3.23.57-1.src.rpm Size : 5305109 License: GPL / LGPL Signature : (none) Packager : Lenz Grimmer URL : http://www.mysql.com/ Summary : MySQL - Client Description : This package contains the standard MySQL clients.
Pokud máte soubor RPM, který byste chtěli nainstalovat, ale chcete o něm před instalací zjistit více informací, můžete provést následující:
# rpm -qip MySQL-client-3.23.57-1.i386.rpm Name : MySQL-client Relocations: (not relocatable) Version : 3.23.57 Vendor: MySQL AB Release : 1 Build Date: Mon 09 Jun 2003 11:08:28 PM CEST Install Date: (not installed) Build Host: build.mysql.com Group : Applications/Databases Source RPM: MySQL-3.23.57-1.src.rpm Size : 5305109 License: GPL / LGPL Signature : (none) Packager : Lenz Grimmer URL : http://www.mysql.com/ Summary : MySQL - Client Description : This package contains the standard MySQL clients.
- -i :zobrazení informací o otáčkách za minutu
- -p :zadejte název balíčku
8. Vypište všechny soubory v balíčku pomocí rpm -qlp
Chcete-li zobrazit obsah balíčku RPM, použijte následující příkaz, který vypíše seznam souborů bez rozbalování do složky místního adresáře.
$ rpm -qlp ovpc-2.1.10.rpm /usr/bin/mysqlaccess /usr/bin/mysqldata /usr/bin/mysqlperm . . /usr/bin/mysqladmin
- q :dotaz na soubor rpm
- l :seznam souborů v balíčku
- p :zadejte název balíčku
Můžete také extrahovat soubory z RPM balíčku pomocí rpm2cpio, jak jsme si řekli dříve.
9. Vypište závislé balíčky pomocí rpm -qRP
Chcete-li zobrazit seznam balíčků, na kterých tento balíček závisí,
# rpm -qRp MySQL-client-3.23.57-1.i386.rpm /bin/sh /usr/bin/perl
10. Zjistěte stav souborů v balíčku pomocí rpm -qsp
Následující příkaz slouží k nalezení stavu (nainstalovaný, nahrazený nebo normální) pro všechny soubory v balíčku RPM.
# rpm -qsp MySQL-client-3.23.57-1.i386.rpm normal /usr/bin/msql2mysql normal /usr/bin/mysql normal /usr/bin/mysql_find_rows normal /usr/bin/mysqlaccess normal /usr/bin/mysqladmin normal /usr/bin/mysqlbinlog normal /usr/bin/mysqlcheck normal /usr/bin/mysqldump normal /usr/bin/mysqlimport normal /usr/bin/mysqlshow normal /usr/share/man/man1/mysql.1.gz normal /usr/share/man/man1/mysqlaccess.1.gz normal /usr/share/man/man1/mysqladmin.1.gz normal /usr/share/man/man1/mysqldump.1.gz normal /usr/share/man/man1/mysqlshow.1.gz
11. Ověřte konkrétní balíček RPM pomocí rpm -Vp
Ověření balíčku porovnává informace o nainstalovaných souborech v balíčku s informacemi o souborech převzatých z metadat balíčku uložených v databázi rpm. V následujícím příkazu je -V pro ověření a volba -p se používá k zadání názvu balíčku k ověření.
# rpm -Vp MySQL-client-3.23.57-1.i386.rpm S.5....T c /usr/bin/msql2mysql S.5....T c /usr/bin/mysql S.5....T c /usr/bin/mysql_find_rows S.5....T c /usr/bin/mysqlaccess
Znak ve výše uvedeném výstupu označuje následující:
- Velikost souboru S se liší
- Režim M se liší (zahrnuje oprávnění a typ souboru)
- Součet 5 MD5 se liší
- D Neshoda hlavního/vedlejšího čísla zařízení
- Neshoda cesty L readlink(2)
- U vlastnictví uživatele se liší
- Vlastnictví skupiny G se liší
- T mTime se liší
12. Ověřte soubor vlastnící balíček pomocí rpm -Vf
Následující příkaz ověří balíček, který vlastní daný název souboru.
# rpm -Vf /usr/bin/mysqlaccess S.5....T c /usr/bin/mysql #
13. Upgrade balíčku RPM pomocí rpm -Uvh
Upgrade balíčku je podobná instalaci jednoho, ale RPM automaticky odinstaluje stávající verze balíčku před instalací nového. Pokud nebude nalezena stará verze balíčku, možnost upgradu ji přesto nainstaluje.
# rpm -Uvh MySQL-client-3.23.57-1.i386.rpm Preparing... ########################################### [100%] 1:MySQL-client ###########################################
14. Odinstalace balíčku RPM pomocí rpm -e
Chcete-li odebrat nainstalovaný balíček rpm pomocí -e, jak je znázorněno níže. Po odinstalaci se můžete dotázat pomocí rpm -qa a ověřit odinstalaci.
# rpm -ev MySQL-client
15. Ověření všech RPM balíčků pomocí rpm -Va
Následující příkaz ověří všechny nainstalované balíčky.
# rpm -Va S.5....T c /etc/issue S.5....T c /etc/issue.net S.5....T c /var/service/imap/ssl/seed S.5....T c /home/httpd/html/horde/ingo/config/backends.php . . S.5....T c /home/httpd/html/horde/ingo/config/prefs.php S.5....T c /etc/printcap