rpm {-q|--query} [opcje-wyboru] [opcje-zapyta44]
rpm {-V|--verify} [opcje-wyboru] [opcje-weryfikacji]
rpm --import KLUCZ_PUBLICZNY ...
rpm {-K|--checksig} [--nosignature] [--nodigest] PLIK_PAKIETU ...
rpm {-i|--install} [opcje-instalacji] PLIK_PAKIETU ...
rpm {-U|--upgrade} [opcje-instalacji] PLIK_PAKIETU ...
rpm {-F|--freshen} [opcje-instalacji] PLIK_PAKIETU ...
rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts] [--notriggers] [--test] NAZWA_PAKIETU ...
rpm {--initdb|--rebuilddb}
rpm {--addsign|--resign} PLIK_PAKIETU ...
rpm {--querytags|--showrc}
rpm {--setperms|--setugids} NAZWA_PAKIETU ...
[NAZWA_PAKIETU] [-a,--all] [-f,--file PLIK] [-g,--group GRUPA] {-p,--package PLIK_PAKIETU] [--hdrid SHA1] [--pkgid MD5] [--tid TID] [--querybynumber NUMER_NAGŁÓWKA] [--triggeredby NAZWA_PAKIETU] [--whatprovides WŁASNO5A'C] [--whatrequires WŁASNO5A'C]
[--changelog] [-c,--configfiles] [-d,--docfiles] [--dump] [--filesbypkg] [-i,--info] [--last] [-l,--list] [--provides] [--qf,--queryformat FORMAT_ZAPYTANIA] [-R,--requires] [--scripts] [-s,--state] [--triggers,--triggerscripts]
[--nodeps] [--nofiles] [--noscripts] [--nodigest] [--nosignature] [--nolinkto] [--nomd5] [--nosize] [--nouser] [--nogroup] [--nomtime] [--nomode] [--nordev]
[--aid] [--allfiles] [--badreloc] [--excludepath STARA_5ACIE7BKA] [--excludedocs] [--force] [-h,--hash] [--ignoresize] [--ignorearch] [--ignoreos] [--includedocs] [--justdb] [--nodeps] [--nodigest] [--nosignature] [--nosuggest] [--noorder] [--noscripts] [--notriggers] [--oldpackage] [--percent] [--prefix NOWA_5ACIE7BKA] [--relocate STARA_5ACIE7BKA=NOWA_5ACIE7BKA] [--replacefiles] [--replacepkgs] [--test]
rpm jest pot197Cnym mened7Cerem pakietów, który mo7Ce by'c u7Cywany do budowania, instalowania, odpytywania, weryfikowania, uaktualniania i usuwania pakietów oprogramowania. Pakiet składa si19 z archiwum plików oraz metadanych u7Cywanych do instalowania i usuwania plików. Metadane zawieraj05 pomocnicze skrypty, atrybuty plików oraz informacje opisuj05ce pakiet. Pakiety wyst19puj05 w dwóch wersjach: pakietach binarnych, słu7C05cych do opakowania oprogramowania do instalacji oraz pakietach 7Aródłowych, zawieraj05cych kod 7Aródłowy i przepis na zbudowanie pakietów binarnych.
Nale7Cy wybra'c jeden z nast19puj05cych podstawowych trybów: Odpytywania, Weryfikowania, Sprawdzania sygnatury, Instalowania/Uaktualniania/Od5Bwie7Cania, Odinstalowywania, Inicjalizowania bazy danych, Przebudowywania bazy danych, Ponownego podpisywania, Dodawania sygnatury, ustawiania wła5Bcicieli i grup, Pokazywania etykiet zapyta44, oraz Pokazywania konfiguracji.
Opcje te mog05 by'c u7Cywane we wszystkich trybach.
Ogóln05 postaci05 komendy instalowania rpm-a jest
rpm {-i|--install} [install-options] PLIK_PAKIETU ...
Instaluje to nowy pakiet.
Ogóln05 postaci05 komendy uaktualniania rpm-a jest
rpm {-U|--upgrade} [install-options] PLIK_PAKIETU ...
Uaktualnia to aktualnie zainstalowany lub instaluje pakiet w nowej wersji. Jest to to samo co install, lecz wszystkie inne wersje pakietu b19d05 usuni19te po zainstalowaniu nowego pakietu.
rpm {-F|--freshen} [install-options] PLIK_PAKIETU ...
Od5Bwie7Cy to pakiety, lecz tylko je5Bli wcze5Bniejsza wersja ju7C istnieje. PLIK_PAKIETU mo7Ce by'c podany jako URL ftp lub http. W tym wypadku pakiet zostanie pobrany przed zainstalowaniem. W sekcji OPCJE FTP/HTTP znajduje si19 wi19cej informacji o wewn19trznej obsłudze klienckiej ftp i http w rpm.
--nopre --nopost --nopreun --nopostun
i wył05cza wykonywanie odpowiadaj05cych im skryptów %pre, %post, %preun oraz %postun.
--notriggerin --notriggerun --notriggerpostun
i wył05cza wykonywanie odpowiadaj05cych im skryptów %triggerin, %triggerun oraz %triggerpostun.
Ogóln05 postaci05 komendy usuwania rpm-a jest
rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts] [--notriggers] [--test] NAZWA_PAKIETU ...
Mo7Cna u7Cy'c nast19puj05cych opcji:
--nopreun --nopostun
i wył05cza wykonywanie odpowiadaj05cych im skryptów %preun oraz %postun.
--notriggerun --notriggerpostun
i wył05cza wykonywanie odpowiadaj05cych im skryptów %triggerun oraz %triggerpostun.
Ogóln05 postaci05 komendy zapytania rpm-a jest
rpm {-q|--query} [opcje-wyboru] [opcje-zapyta44]
Mo7Cna poda'c format, w jakim powinna zosta'c wypisywana informacja o pakiecie. Aby tego dokona'c, u7Cyj opcji
--qf|--queryformat FORMAT_ZAPYTANIA
z doł05czonym ła44cuchem formatuj05cym FORMAT_ZAPYTANIA. Formaty zapyta44 s05 zmodyfikowanymi wersjami standardowego formatowania printf(3). Format jest zło7Cony ze statycznych ła44cuchów (które mog05 zawiera'c standardowe znaki specjalne C - dla nowych linii, tabulacji itp.) oraz formatek typu, podobnych do tych z printf(3). Poniewa7C rpm ju7C zna typ do wypisania, specyfikacja typu jest pomijana. W jej miejsce wchodzi nazwa etykiety wypisywanego nagłówka, uj19ta w znaki {}. Nazwy etykiet nie s05 wra7Cliwe na wielko5B'c liter, a pocz05tkowa cz195B'c RPMTAG_ nazwy etykiety mo7Ce by'c opuszczona.
Mo7Cna za7C05da'c innych formatów wyj5Bciowych przez zako44czenie etykiety :znacznik_typu. Obecnie obsługiwane s05 nast19puj05ce typy:
Na przykład aby wypisa'c tylko nazwy odpytywanych pakietów, mo7Cna u7Cy'c jako ła44cucha formatuj05cego samego %{NAME}. Aby wypisa'c nazwy pakietów i informacje o dystrybucji w dwóch kolumnach, mo7Cna u7Cy'c %-30{NAME}%{DISTRIBUTION} (Nazwa b19dzie w 30 znakowym okienku, z wyrównaniem do lewej - zobacz printf(3) - przyp. tłum.)
rpm uruchomiony z argumentem --querytags wypisze list19 wszystkich znanych etykiet.
Istniej05 dwa podzbiory opcji dla odpytywania: wybór pakietu i wybór informacji.
5Bcie7Cka rozmiar czas_mod suma_md5 prawa wła5Bciciel grupa konfig dokum rdev symlink
Ta opcja musi by'c u7Cyta z przynajmniej jednym z -l, -c, -d. --filesbypkg Listuje wszystkie pliki z ka7Cdego z pakietów.
Ogóln05 postaci05 komendy weryfikacji rpm-a jest
rpm {-V|--verify} [opcje-wyboru] [opcje-weryfikacji]
Weryfikowanie pakietu porównuje informacje o zainstalowanych plikach w pakiecie z informacj05 o plikach pobran05 z oryginalnego pakietu, zapisanego w bazie rpm-a. W5Bród innych rzeczy, porównywane s05 rozmiary, sumy MD5, prawa, typ, wła5Bciciel i grupa ka7Cdego pliku. Wszystkie niezgodno5Bci s05 natychmiast wy5Bwietlane. Pliki, które nie były zainstalowane z pakietu, jak na przykład dokumentacja przy instalacji z opcj05 "--excludedocs", s05 po cichu ignorowane.
Opcje wyboru pakietów s05 takie same jak dla odpytywania pakietów (wł05cznie z plikami manifest jako argumentami). Inne opcje unikalne dla trybu weryfikacji to:
Format wyj5Bcia to ła44cuch 9 znaków, z mo7Cliwym znacznikiem atrybutu:
c %config plik konfiguracyjny. d %doc plik dokumentacji. g %ghost plik nie istniej05cy (nie doł05czony do danych pakietu). l %license plik licencji. r %readme plik przeczytaj-to.
z nagłówka pakietu, zako44czonych nazw05 pliku. Ka7Cdy z 9 znaków oznacza wynik porównania jednego atrybutu pliku z warto5Bci05 atrybutu zapisan05 w bazie danych. Pojedyncza "." (kropka) oznacza, 7Ce test przeszedł pomy5Blnie, natomiast pojedynczy "?" (znak zapytania) oznacza, 7Ce test nie mógł by'c przeprowadzony (na przykład uprawnienia pliku uniemo7Cliwiaj05 odczyt). W pozostałych przypadkach znak oznacza niepowodzenie odpowiadaj05cego mu testu --verify:
S (Size) - rozmiar pliku si19 ró7Cni M (Mode) - tryb (uprawnienia lub typ) pliku si19 ró7Cni 5 (MD5) - suma MD5 si19 ró7Cni D (Device) - numery główny/poboczny urz05dzenia si19 nie zgadzaj05 L (Link) - 5Bcie7Cka dowi05zania si19 nie zgadza U (User) - wła5Bciciel pliku si19 ró7Cni G (Grupa) - grupa pliku si19 ró7Cni T (mTime) - czas modyfikacji pliku si19 ró7Cni
Ogólne postacie komend zwi05zanych z sygnaturami cyfrowymi to
rpm --import KLUCZ_PUBLICZNY ...
rpm {--checksig} [--nosignature] [--nodigest] PLIK_PAKIETU ...
Opcja --checksig sprawdza wszystkie skróty kryptograficzne i sygnatury zawarte w PLIKU_PAKIETU, aby zapewni'c jego integralno5B'c i pochodzenie. Zauwa7C, 7Ce sygnatury s05 teraz weryfikowane przy ka7Cdym odczycie pakietu, a --checksig jest przydatne do zweryfikowania wszystkich skrótów i sygnatur zwi05zanych z pakietem.
Sygnatury cyfrowe nie mog05 by'c zweryfikowane bez klucza publicznego. Klucz publiczny w opakowaniu ASCII mo7Ce by'c dodany do bazy rpm-a przy u7Cyciu --import. Zaimportowany klucz publiczny jest przechowywany w nagłówku, a zarz05dzanie pier5Bcieniem kluczy wykonuje si19 dokładnie tak samo, jak zarz05dzanie pakietami. Na przykład, wszystkie aktualnie zaimportowane klucze publiczne mo7Cna wy5Bwietli'c przez:
rpm -qa gpg-pubkey*
Szczegółowe informacje o konkretnym kluczu publicznym po zaimportowaniu mog05 by'c wy5Bwietlone przez odpytywanie. Oto informacje o kluczu GPG/DSA Red Hata:
rpm -qi gpg-pubkey-db42a60e
Na koniec, klucze publiczne mog05 by'c usuni19te po zaimportowaniu tak samo jak pakiety. Oto jak usun05'c klucz GPG/DSA Red Hata:
rpm --addsign|--resign PLIK_PAKIETU ...
Obie opcje, --addsign i --resign generuj05 i umieszczaj05 nowe sygnatury dla ka7Cdego podanego pakietu PLIK_PAKIETU, zast19puj05c wszystkie istniej05ce sygnatury. Dwie opcje istniej05 z przyczyn historycznych, aktualnie nie ma ró7Cnic w ich zachowaniu.
Aby podpisa'c pakiety przy u7Cyciu GPG, rpm musi by'c skonfigurowany, aby mógł uruchamia'c GPG i odnale7A'c pier5Bcie44 kluczy z odpowiednimi kluczami. Domy5Blnie rpm u7Cywa przy szukaniu kluczy tych samych konwencji co GPG, czyli zmiennej 5Brodowiskowej $GNUPGHOME. Je5Bli pier5Bcienie kluczy nie s05 zlokalizowane tam, gdzie GPG ich oczekuje, trzeba skonfigurowa'c makro %_gpg_path aby wskazywała na lokalizacj19 pier5Bcieni kluczy GPG, które maj05 by'c u7Cywane.
Dla kompatybilno5Bci ze starszymi wersjami GPG, PGP oraz rpm-a, powinny by'c skonfigurowane tylko pakiety sygnatur OpenPGP V3. Mog05 by'c u7Cywane algorytmy weryfikacji DSA lub RSA, ale DSA jest preferowany.
Je5Bli chcesz podpisywa'c pakiety, które sam tworzysz, musisz te7C utworzy'c swój własny klucz publiczny i poufny (zobacz podr19cznik GPG). B19dziesz te7C potrzebował skonfigurowa'c makra rpm-a:
Na przykład, aby u7Cy'c GPG do podpisania pakietów jako u7Cytkownik "John Doe <jdoe@foo.com>" z pier5Bcieni kluczy zlokalizowanych w /etc/rpm/.pgp, przy u7Cyciu programu /usr/bin/gpg, zał05czyłby5B
%_gpg_path /etc/rpm/.gpg %_gpg_name John Doe <jdoe@foo.com> %_gpgbin /usr/bin/gpg
w pliku konfiguracji makr. Do ogólnosystemowej konfiguracji u7Cyj /etc/rpm/macros, a dla lokalnej ~/.rpmmacros.
Ogólna posta'c komendy przebudowywania bazy danych rpm-a to
rpm {--initdb|--rebuilddb} [-v] [--dbpath KATALOG] [--root KATALOG]
U7Cyj --initdb aby utworzy'c now05 baz19 danych lub --rebuilddb, aby przebudowa'c indeksy bazy danych z nagłówków zainstalowanych pakietów.
Polecenie
rpm --showrc
pokazuje warto5Bci, których rpm b19dzie u7Cywał dla wszystkich opcji, które s05 aktualnie ustawione w plikach konfiguracyjnych rpmrc oraz macros.
rpm mo7Ce działa'c jako klient FTP i/lub HTTP, co pozwala na odpytywanie lub instalowanie pakietów z Internetu. Pliki pakietów do operacji instalacji, uaktualnienia lub odpytania mog05 by'c podane jako URL w stylu ftp lub http:
ftp://U7BYTKOWNIK:HASŁO@HOST:PORT/5Bcie7Cka/do/pakietu.rpm
Je5Bli cz195B'c :HASŁO jest pomini19ta, u7Cytkownik zostanie o nie zapytany (jednokrotnie na par19 u7Cytkownik/host). Je5Bli pomini19to nazw19 u7Cytkownika i hasło, u7Cywany jest anonimowy ftp. We wszystkich przypadkach u7Cywane s05 pasywne (PASV) transfery ftp.
rpm zezwala na u7Cywanie z URL-ami ftp nast19puj05cych opcji:
rpm zezwala na u7Cywanie z URL-ami http nast19puj05cych opcji:
Tryby budowania rpm-a znajduj05 si19 teraz w programie /usr/bin/rpmbuild. Mimo 7Ce spadkowa kompatybilno5B'c zapewniona przez wymienione ni7Cej aliasy popt jest wystarczaj05ca, kompatybilno5B'c nie jest doskonała; dlatego kompatybilno5B'c trybu budowania poprzez aliasy popt jest usuwana z rpm-a. Zainstaluj pakiet rpm-build i zobacz rpmbuild(8), gdzie znajduje si19 dokumentacja wszystkich trybów budowania rpm poprzednio udokumentowana w niniejszym rpm(8).
Dodaj nast19puj05ce linie do /etc/popt, je5Bli chcesz nadal uruchamia'c rpmbuild z linii polece44 rpm-a:
rpm exec --bp rpmb -bp rpm exec --bc rpmb -bc rpm exec --bi rpmb -bi rpm exec --bl rpmb -bl rpm exec --ba rpmb -ba rpm exec --bb rpmb -bb rpm exec --bs rpmb -bs rpm exec --tp rpmb -tp rpm exec --tc rpmb -tc rpm exec --ti rpmb -ti rpm exec --tl rpmb -tl rpm exec --ta rpmb -ta rpm exec --tb rpmb -tb rpm exec --ts rpmb -ts rpm exec --rebuild rpmb --rebuild rpm exec --recompile rpmb --recompile rpm exec --clean rpmb --clean rpm exec --rmsource rpmb --rmsource rpm exec --rmspec rpmb --rmspec rpm exec --target rpmb --target rpm exec --short-circuit rpmb --short-circuit
/usr/lib/rpm/rpmrc /usr/lib/rpm/<vendor>/rpmrc /etc/rpmrc ~/.rpmrc
/usr/lib/rpm/macros /usr/lib/rpm/<vendor>/macros /etc/rpm/macros ~/.rpmmacros
/var/lib/rpm/Basenames /var/lib/rpm/Conflictname /var/lib/rpm/Dirnames /var/lib/rpm/Filemd5s /var/lib/rpm/Group /var/lib/rpm/Installtid /var/lib/rpm/Name /var/lib/rpm/Packages /var/lib/rpm/Providename /var/lib/rpm/Provideversion /var/lib/rpm/Pubkeys /var/lib/rpm/Removed /var/lib/rpm/Requirename /var/lib/rpm/Requireversion /var/lib/rpm/Sha1header /var/lib/rpm/Sigmd5 /var/lib/rpm/Triggername
popt(3), rpm2cpio(8), rpmbuild(8),
http://www.rpm.org/ <URL:http://www.rpm.org/>
Marc Ewing <marc@redhat.com> Jeff Johnson <jbj@redhat.com> Erik Troan <ewt@redhat.com>