Skip to main content

Rpm - Linux Command - Unix Command

Linux rpm command with examples (centos/redhat 6) (April 2025)

Linux rpm command with examples (centos/redhat 6) (April 2025)
Anonim

Linux / Unix-kommando: rpm

NAMN

rpm - RPM Package Manager

SYNOPSIS

QUERYING OCH VERIFYING PACKAGES:

rpm --fråga Välj inställningar fråge-options

rpm -V Välj inställningar kontrollera-options

rpm --importera PUBKEY …

rpm -K --nosignature --nodigest PACKAGE_FILE …

INSTALLERA, UPPGRADERA OCH AVFALLA PAKET:

rpm -i install-alternativ PACKAGE_FILE …

rpm --upgrade install-alternativ PACKAGE_FILE …

rpm -F install-alternativ PACKAGE_FILE …

rpm -e --allmatches --nodeps --noscripts --notriggers --repackage --testa PAKETNAMN …

DIVERSE:

rpm --initdb

rpm --addsign PACKAGE_FILE …

rpm --showrc

rpm --setugids PAKETNAMN …

Välj inställningar

PAKETNAMN -a, - alla -f, - fil FIL -g, - grupp GRUPP {-p - paket paketfil --fileid MD5 --hdrid SHA1 --pkgid MD5 --tid TID --querybynumber HDRNUM --triggad av PAKETNAMN --whatprovides FÖRMÅGA --whatrequires FÖRMÅGA

fråge-options

--changelog -c, - configfiles -d, - docfiles --dumpa --filesbypkg -i, - info --sista -l - lista --provides --qf, - queryformat QUERYFMT -R, - kräver --scripts -er, - tillstånd --triggers, - triggerscripts

kontrollera-options

--nodeps --inga filer --noscripts --nodigest --nosignature --nolinkto --nomd5 --nosize --nouser --nogroup --nomtime --nomode --nordev

install-alternativ

--hjälpa --alla filer --badreloc --excludepath OLDPATH --excludedocs --tvinga -h, - hash --ignoresize --ignorearch --ignoreos --includedocs --justdb --nodeps --nodigest --nosignature --nosuggest --ingen order --noscripts --notriggers --oldpackage --procent --prefix newpath --förflytta OLDPATH = newpath --repackage --replacefiles --replacepkgs --testa

BESKRIVNING

rpm är en kraftfullPaketchef, som kan användas för att bygga, installera, fråga, verifiera, uppdatera och radera enskilda programvarupaket. enpaket består av ett arkiv med filer och metadata som används för att installera och radera arkivfilerna. Metadata inkluderar hjälprandor, filattribut och beskrivande information om paketet.paket komma i två sorter: binära paket, som används för att inkapslera programvara som ska installeras och källkodspaket, innehållande källkoden och receptet som krävs för att producera binära paket.

Ett av följande grundläggande lägen måste väljas:Fråga, Kontrollera, Signaturkontroll,Installera / Uppgradering / Freshen, Uninstall, Initialisera databasen, Bygga om databasen, Avgå, Lägg till signatur, Ange ägare / grupper, Visa Querytags, ochVisa konfiguration.

GENERELLA VAL

Dessa alternativ kan användas i alla olika lägen.

-?, --hjälp

Skriv ut ett längre användningsmeddelande än normalt.

--version

Skriv ut en enda rad som innehåller versionsnumret förrpm används.

--tyst

Skriv ut så lite som möjligt - normalt visas bara felmeddelanden.

-v

Skriv ut verbos information - vanligtvis visas rutinmässiga statusmeddelanden.

-vv

Skriv ut massor av fula felsökningsinformation.

--rcfile Filelist

Var och en av filerna i kolon separerade Filelist läses sekventiellt avrpm för konfigurationsinformation. Endast den första filen i listan måste finnas, och tildes kommer att expanderas till värdet av$ HOME. Standarden Filelist är / Usr / lib / rpm / rpmrc : / Usr / lib / rpm / redhat / rpmrc : ~ / .Rpmrc .

--rör CMD

Rör utmatningen avrpm till kommandot CMD .

--dbpath KATALOG

Använd databasen i KATALOG rathen än standardvägen / Var / lib / rpm

--rot KATALOG

Använd filsystemet träd rotat på KATALOG för alla operationer. Observera att det här betyder databasen inom KATALOG kommer att användas för beredskapskontroller och eventuella skript (er) (t.ex.%posta om du installerar, eller% prep om byggnad, ett paket) kommer att köras efter en chroot (2) till KATALOG .

INSTALLERA OCH UPGRADERINGAR

Den generella formen av ett rpm-installationskommando är

rpm --Installera install-alternativ PACKAGE_FILE …

Detta installerar ett nytt paket.

Den allmänna formen av ett uppgraderingsuppdrag för rpm är

rpm --upgrade install-alternativ PACKAGE_FILE …

Detta uppgraderar eller installerar paketet som för tillfället installerats till en nyare version. Det här är detsamma som installationen, förutom att alla andra versioner av paketet tas bort efter det att det nya paketet har installerats.

rpm -F install-alternativ PACKAGE_FILE …

Detta kommer att uppgradera paket, men bara om en tidigare version finns för närvarande. De paketfil kan anges som enftp ellerhttp URL, i vilket fall paketet kommer att hämtas innan det installeras. SeFTP/HTTP ALTERNATIV för information omrpms inreftp ochhttp kundsupport.

--hjälpa

Lägg till föreslagna paket till transaktionsuppsättningen när det behövs.

--alla filer

Installerar eller uppgraderar alla missingok-filer i paketet, oavsett om de finns.

--badreloc

Används med--förflytta, tillåta omlokaliseringar på alla filvägar, inte bara de OLDPATH är inkluderad i binärpaketet omflyttningstips (er).

--excludepath OLDPATH

Installera inte filer vars namn börjar med OLDPATH .

--excludedocs

Installera inte några filer som är markerade som dokumentation (som inkluderar man sidor och texinfo-dokument).

--tvinga

Samma som att använda--replacepkgs, --replacefiles, och--oldpackage.

-h, -hash

Skriv ut 50 hashmarkeringar när paketarkivet packas upp. Använd med-v | --verbose för en snyggare bildskärm.

--ignoresize

Kontrollera inte monteringsfilsystem för tillräckligt med diskutrymme innan du installerar det här paketet.

--ignorearch

Tillåt installation eller uppgradering även om arkitekturerna för binärpaketet och värden inte matchar.

--ignoreos

Tillåt installation eller uppgradering även om operativsystemen i binärpaketet och värden inte matchar.

--includedocs

Installera dokumentationsfiler. Detta är standardbeteendet.

--justdb

Uppdatera endast databasen, inte filsystemet.

--nodigest

Bekräfta inte paket- eller rubrikuppslutning vid läsning.

--nosignature

Bekräfta inte paket- eller rubrikteckningar när du läser.

--nodeps

Gör inte en beredskapskontroll innan du installerar eller uppgraderar ett paket.

--nosuggest

Föreslå inte paket (er) som ger ett saknat beroende.

--ingen order

Ändra inte paketet för en installation. Förteckningen över paket skulle normalt ombeställas för att tillgodose dependancies.

--noscripts

--nopre

--nopost

--nopreun

--nopostun

Utför inte skriptet med samma namn. De--noscripts alternativ motsvarar

--nopre --nopost --nopreun --nopostun

och stänger av utförandet av motsvarande% pre, %posta, % preun, och% postunskriptlet (er).

--notriggers

--notriggerin

--notriggerun

--notriggerpostun

Utför inte någon utlösningsskript av den angivna typen. De--notriggers alternativ motsvarar

--notriggerin --notriggerun --notriggerpostun

och stänger av utförandet av motsvarande% triggerin, % triggerun, och% triggerpostun skriptlet (er).

--oldpackage

Tillåt en uppgradering för att ersätta ett nyare paket med en äldre.

--procent

Utskriftsprocentandelar som filer packas ut från paketarkivet. Detta är avsett att görarpm Lätt att springa från andra verktyg.

--prefix newpath

För flyttbara binärpaket, översätt alla filvägar som börjar med installationsprefixet i paketet om flyttningshantering (er) till newpath .

--förflytta OLDPATH = newpath

För omlokaliserbara binära paket, översätt alla filvägar som börjar med OLDPATH i paketförflyttningsanvisningarna till newpath . Detta alternativ kan användas flera gånger om flera OLDPATH s i paketet ska flyttas.

--repackage

Paketera om filerna innan de raderas. Det tidigare installerade paketet kommer att namnges enligt makroen% _repackage_name_fmt och kommer att skapas i katalogen som heter makroen% _repackage_dir (standardvärdet är / Var / tmp ).

--replacefiles

Installera paketet även om de ersätter filer från andra redan installerade paket.

--replacepkgs

Installera paketet även om vissa av dem redan är installerade på det här systemet.

--testa

Installera inte paketet, leta efter och rapportera eventuella konflikter.

ERASE OPTIONS

Den allmänna formen av ett rpm-raderingskommando är

rpm -e --allmatches --nodeps --noscripts --notriggers --repackage --testa PAKETNAMN …

Följande alternativ kan också användas:

--allmatches

Ta bort alla versioner av paketet som matchar PAKETNAMN . Vanligtvis utfärdas ett fel om PAKETNAMN matchar flera paket.

--nodeps

Kontrollera inte beroenden innan du avinstallerar paketet.

--noscripts

--nopreun

--nopostun

Utför inte skriptet med samma namn. De--noscripts Alternativet under paketet raderar motsvarar

--nopreun --nopostun

och stänger av utförandet av motsvarande% preun, och% postun skriptlet (er).

--notriggers

--notriggerun

--notriggerpostun

Utför inte någon utlösningsskript av den angivna typen. De--notriggers alternativ motsvarar

--notriggerun --notriggerpostun

och stänger av utförandet av motsvarande% triggerun, och% triggerpostun skriptlet (er).

--repackage

Paketera om filerna innan de raderas. Det tidigare installerade paketet kommer att namnges enligt makroen% _repackage_name_fmt och kommer att skapas i katalogen som heter makroen% _repackage_dir (standardvärdet är / Var / tmp ).

--testa

Avinstallera inte någonting, bara gå igenom rörelserna. Användbar i samband med-vv alternativ för debugging.

QUERY OPTIONS

Den allmänna formen för ett kommando för rpm-fråga är

rpm --fråga Välj inställningar fråge-options

Du kan ange det format som paketinformation ska skrivas ut i. För att göra detta använder du

--qf | --queryformat QUERYFMT

alternativ, följt av QUERYFMT formatsträng. Query-format är modifierade versioner av standardenprintf (3) formatering. Formatet består av statiska strängar (som kan innefatta standard C-teckenavsläpp för nya linjer, flikar och andra specialtecken) ochprintf (3) typformaterare. Somrpm vet redan vilken typ som ska skrivas ut måste typspecifikationen emellertid utelämnas och ersättas med namnet på rubrikens etikett som ska skrivas ut, bifogad av{} tecken. Taggen är fallet insesitive och den ledandeRPMTAG_ del av taggen namn kan också utelämnas.

Alternativa utgångsformat kan beställas genom att följa taggen med: typetag . För närvarande stöds följande typer:

:rustning

Vik en offentlig nyckel i ASCII-rustning.

: base64

Koda binär data med base64.

:datum

Använd strftime (3) "% c" format.

:dag

Använd strftime (3) "% a% b% d% Y" format.

: depflags

Formatera beroende flaggor.

: fflags

Formatera filflaggor.

: hex

Formatera i hexadecimal.

: oktala

Format i oktal.

: perms

Formatera filbehörigheter.

: shescape

Fly enskilda citat för användning i ett manus.

: triggertype

Visningsutlösarens suffix.

Till exempel kan du bara skriva ut namnen på de paket som du frågade%{NAMN} som formatsträngen. För att skriva ut paketets namn och distributionsinformation i två kolumner, kan du använda% -30 {NAME}% {DISTRIBUTION}. rpm kommer att skriva ut en lista över alla taggar som den vet om när den är påkallad med--querytags argument.

Det finns två delmängder av alternativ för fråga: paketval och informationsval.

PACKAGE SELECTION OPTIONS:

PAKETNAMN

Query installerat paket som heter PAKETNAMN .

-a, --all

Fråga alla installerade paket.

-f, --fil FIL

Query paket äger FIL .

--fileid MD5

Query-paket som innehåller en given filidentifierare, dvs MD5 smälta av filinnehållet.

-g, --grupp GRUPP

Query-paket med gruppen av GRUPP .

--hdrid SHA1

Frågepaket som innehåller en given huvudidentifierare, dvs SHA1 smälta av det oföränderliga huvudområdet.

-p, --package paketfil

Fråga ett (avinstallerat) paket paketfil . De paketfil kan anges som enftp ellerhttp stiladress, i vilket fall pakethuvudet laddas ner och frågas. SeFTP / HTTP OPTIONS för information omrpms inreftp ochhttp kundsupport. De paketfil argument (er), om inte ett binärt paket, kommer att tolkas som ett ASCII-paket manifest. Kommentarer är tillåtna, med början av en "#", och varje rad i en paketmanifestfil kan innefatta separata globala uttryck i vitt utrymme, inklusive webbadresser med fjärranslutna globuttryck, som kommer att utvidgas till banor som ersätts istället för paketmanifestet som ytterligare paketfil argument till frågan.

--pkgid MD5

Query-paket som innehåller en given paketidentifierare, dvs MD5 smälta på innehållet i kombinerad header och nyttolast.

--querybynumber HDRNUM

Fråga HDRNUM direktanslutning av databasen Detta är endast användbart för felsökning.

--specfile SPECFILE

Parse och fråga SPECFILE som om det var ett paket. Även om inte all information (t.ex. fillistor) är tillgänglig, tillåter denna typ av fråga rpm att extrahera information från specfiler utan att behöva skriva en specfile-parser.

--tid TID

Frågepaket (er) som har en given TID transaktionsidentifierare. En unix tidsstämpel används för närvarande som en transaktionsidentifierare. Alla paket som installerats eller raderats inom en enda transaktion har en gemensam identifierare.

--triggad av PAKETNAMN

Query-paket som utlöses av paket (er) PAKETNAMN .

--whatprovides FÖRMÅGA

Fråga alla paket som tillhandahåller FÖRMÅGA förmåga.

--whatrequires FÖRMÅGA

Fråga alla paket som kräver FÖRMÅGA för korrekt funktion.

PACKAGE QUERY OPTIONS:

--changelog

Visa ändringsinformation för paketet.

-c, --konfigiler

Lista endast konfigurationsfiler (innebär-l).

-d, -docfiles

Lista endast dokumentationsfiler (innebär-l).

--dumpa

Dumpa filinformation enligt följande:

vägstorlek mtime md5sum-läge ägargrupp isconfig isdoc rdev symlink

Detta alternativ måste användas med minst en av-l, -c, -d.

--filesbypkg

Lista alla filer i varje valt paket.

-i, --info

Visa paketinformation, inklusive namn, version och beskrivning. Detta använder--queryformat om en var specificerad

--sista

Beställer paketförteckningen efter installationstid så att de senaste paketen är högst upp.

-l, - lista

Lista filer i paketet.

--provides

Listförmåga som det här paketet innehåller.

-R, - kräver

Lista paket som detta paket beror på.

--scripts

Ange paketspecifika scriptletter som används som en del av installations- och avinstallationsprocesserna.

-s, -state

Visa stater av filer i paketet (innebär-l). Status för varje fil är en av vanligt , inte installerad , eller ersatt .

- triggers, - triggerscripts

Visa eventuella utlösningsskript, som finns i paketet.

VERIFIERA OPTIONS

Den allmänna formen av ett rpm-kontrollkommando är

rpm -V Välj inställningar kontrollera-options

Verifiering av ett paket jämför information om de installerade filerna i paketet med information om filerna som tagits från paketmetadata som lagras i rpm-databasen. Bland annat kontrollerar man storlek, MD5 summa, behörigheter, typ, ägare och grupp för varje fil. Eventuella diskrepencer visas.Filer som inte installerades från paketet, till exempel dokumentationsfiler som uteslutits vid installationen med hjälp av "--excludedocs"alternativet, kommer tyst ignoreras.

Alternativen för paketval är desamma som för paketfrågor (inklusive paketmanifestfiler som argument). Andra alternativ som är unika för att verifiera läget är:

--nodeps

Bekräfta inte beroende av paket.

--nodigest

Bekräfta inte paket- eller rubrikuppslutning vid läsning.

--inga filer

Verifiera inte några attribut av paketfiler.

--noscripts

Utför inte% verifyscript scriptlet (om någon).

--nosignature

Bekräfta inte paket- eller rubrikteckningar när du läser.

--nolinkto

--nomd5

--nosize

--nouser

--nogroup

--nomtime

--nomode

--nordev

Verifiera inte motsvarande filattribut.

Formatet för utgången är en sträng med 8 tecken, en möjlig attributmarkör:

c % config konfigurationsfil. d % doc dokumentationsfilen. g %spöke fil (dvs filinnehållet ingår ej i paketets nyttolast). l %licens licensfilen. r % readme readme-fil.

från pakethuvudet följt av filnamnet. Var och en av de 8 tecknena anger resultatet av en jämförelse av attributet till filerna till värdet av de attribut som registrerats i databasen. En enda "."(period) betyder testet passerat, medan en enda"?"(frågetecken) indikerar att testet inte kunde utföras (t ex filbehörighet förhindrar läsning). Annars kommer (mnemonically emBoldened) tecken betecknar misslyckande av motsvarande--kontrollera testa:

S fil SIze skiljer sig åt M Mode skiljer sig (inkluderar behörigheter och filtyp) 5 MD5 summan skiljer sig åt D Device major / minor nummer mis-match L läsaLbläck (2) sökväg felaktig matchning U User ägande skiljer sig åt G Group ägande skiljer sig åt T mTIme skiljer sig åt

DIGITAL SIGNATURE OCH DIGEST VERIFICATION

De allmänna formerna för rpm digital signaturkommandon är

rpm --importera PUBKEY …

rpm {--checksig} --nosignature --nodigest PACKAGE_FILE …

De--checksig Alternativet kontrollerar alla smältningar och signaturer som finns i paketfil för att säkerställa integriteten och ursprunget för paketet. Observera att signaturer nu verifieras när ett paket läses och--checksig är användbar för att verifiera alla smältningar och signaturer som är förknippade med ett paket.

Digitala signaturer kan inte verifieras utan en offentlig nyckel. En ascii pansarad offentlig nyckel kan läggas tillrpm databas med--importera. En importerad offentlig nyckel bärs i en rubrik, och nyckelringhanteringen utförs exakt som pakethantering. Till exempel kan alla nuvarande importerade offentliga nycklar visas med:

rpm -qa gpg-pubkey *

Detaljer om en viss offentlig nyckel, när den importeras, kan visas genom att fråga. Här finns information om Red Hat GPG / DSA-nyckeln:

rpm -qi gpg-pubkey-db42a60e

Slutligen kan de offentliga nycklarna raderas efter att ha importerats precis som paket. Så här tar du bort Red Hat GPG / DSA-tangenten

rpm -e gpg-pubkey-db42a60e

SIGGA EN FÖRPACKNING

rpm --addsign | --resign PACKAGE_FILE …

Båda av--addsign och--avgå alternativ genererar och sätter in nya signaturer för varje paket paketfil ges, ersätter eventuella befintliga signaturer. Det finns två alternativ av historiska skäl, det finns ingen skillnad i beteende för närvarande.

ANVÄNDA GPG ATT SIGNPAKET

För att underteckna paket med GPG,rpm måste konfigureras för att köra GPG och kunna hitta en nyckelring med lämpliga nycklar. Som standardrpm använder samma konventioner som GPG för att hitta nyckelringar, nämligen$ GNUPGHOME miljöfaktor. Om dina nyckelringar inte finns där GPG förväntar sig att de ska vara, måste du konfigurera makroet% _gpg_path att vara placeringen av GPG-nyckelringarna att använda.

För kompatibilitet med äldre versioner av GPG, PGP och rpm, ska endast V3 OpenPGP signaturpaket konfigureras. Antingen DSA eller RSA verifieringsalgoritmer kan användas, men DSA är föredragen.

Om du vill kunna skriva in paket som du skapar dig själv måste du också skapa ditt eget offentliga och hemliga nyckelpar (se GPG manualen). Du måste också konfigurerarpm makron

%_signatur

Signaturtypen. Just nu stöds bara gpg och pgp.

% _gpg_name

Namnet på "användaren" vars nyckel du vill använda för att underteckna dina paket.

Till exempel, för att kunna använda GPG för att underteckna paket som användaren "John Doe < [email protected] >' från nyckelringarna i /etc/rpm/.gpg använder körbar / Usr / bin / gpg du skulle inkludera

% _signature gpg% _gpg_path /etc/rpm/.gpg% _gpg_name John Doe % _gpgbin / usr / bin / gpg

i en makrokonfigurationsfil. Använda sig av / etc / rpm / makron för konfiguration per system och ~ / .Rpmmacros för konfiguration per användare.

REBUILD DATABASE OPTIONS

Den generella formen av ett kommandot för ombyggnad av rpm är

rpm --rebuilddb -v --dbpath KATALOG --rot KATALOG

Använda sig av--initdb att skapa en ny databas, använd--rebuilddb att bygga om databasindexen från de installerade paketrubrikerna.

SHOWRC

Kommandot

rpm --showrc

visar värdenarpm kommer att användas för alla alternativ är för närvarande inställda rpmrc och makron konfigurationsfil (er).

FTP / HTTP OPTIONS

rpm kan fungera som en FTP- och / eller HTTP-klient så att paket kan frågas eller installeras från internet. Paketfiler för installation, uppgradering och frågeoperationer kan anges som enftp ellerhttpstiladress:

ftp: // USER: LÖSENORD @ HOST: PORT / sökväg / till / package.rpm

Om:LÖSENORD del utelämnas, lösenordet blir uppmanat (en gång per användare / värdnamnspar). Om både användaren och lösenordet utelämnas, anonymaftp är använd. I alla fall passivt (PASV)ftp överföringar utförs.

rpm tillåter följande alternativ att användas med ftp-webbadresser:

--ftpproxy VÄRD

Värden VÄRD kommer att användas som en proxyserver för alla ftp-överföringar, vilket gör det möjligt för användare att ftp genom brandväggar som använder proxysystem. Det här alternativet kan också anges genom att konfigurera makroet% _ftpproxy.

--ftpport VÄRD

TCP HAMN nummer som ska användas för ftp-anslutningen på proxy ftp-servern i stället för standardporten. Det här alternativet kan också anges genom att konfigurera makroet% _ftpport.

rpm tillåter följande alternativ att användas medhttp Webbadresser adresser~~POS=HEADCOMP:

--http proxy VÄRD

Värden VÄRD kommer att användas som en proxyserver för allahttp överföringar. Det här alternativet kan också anges genom att konfigurera makroet%_http proxy.

--httpport HAMN

TCP HAMN nummer som ska användas förhttp anslutning på proxyserveren i stället för standardporten. Det här alternativet kan också anges genom att konfigurera makroet% _httpport.

LEGACY-FRÅGOR

Utför rpmbuild

Byggnadsmoderna för varvtalet är nu bosatta i / Usr / bin / rpmbuild körbar. Även om äldre kompatibilitet som tillhandahålls av popt aliaserna nedan har varit tillräcklig, är kompatibiliteten inte perfekt. följaktligen byggs modekompatibilitet genom popt aliaser avlägsnas från varvtal. Installerarpmbuild paket och serpmbuild(8) för dokumentation av allarpm byggnadslägen som tidigare dokumenterats härrpm(8).

Lägg till följande rader till / Etc / popt om du vill fortsätta anroparpmbuild frånrpmkommandorad:

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 - 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 - rpmb -ts rpm exec --rebuild rpmb --rebuild rpm exec --recompile rpmb --recompile rpm exec - ren rpmb - ren rpm exec - rmsource rpmb - rmsource rpm exec --rmspec rpmb --rmspec rpm exec - target rpmb --target rpm exec - kortslutning rpmb - kortslutning

SE ÄVEN

popt(3), rpm2cpio(8), rpmbuild(8),

http://www.rpm.org/ http://www.rpm.org/>

Viktig: Använd man kommando ( % man ) för att se hur ett kommando används på din dator.