Welcome to Linux Knowledge Base and Tutorial
"The place where you learn linux"
International Medical Corps

 Create an AccountHome | Submit News | Your Account  

Tutorial Menu
Linux Tutorial Home
Table of Contents

· Introduction to Operating Systems
· Linux Basics
· Working with the System
· Shells and Utilities
· Editing Files
· Basic Administration
· The Operating System
· The X Windowing System
· The Computer Itself
· Networking
· System Monitoring
· Solving Problems
· Security
· Installing and Upgrading
· Linux and Windows

Glossary
MoreInfo
Man Pages
Linux Topics
Test Your Knowledge

Site Menu
Site Map
FAQ
Copyright Info
Terms of Use
Privacy Info
Disclaimer
WorkBoard
Thanks
Donations
Advertising
Masthead / Impressum
Your Account

Communication
Feedback
Forums
Private Messages
Surveys

Features
HOWTOs
News Archive
Submit News
Topics
User Articles
Web Links

Google
Google


The Web
linux-tutorial.info

Who's Online
There are currently, 79 guest(s) and 0 member(s) that are online.

You are an Anonymous user. You can register for free by clicking here

  

rpm



SYNOPSIS

   QUERYING AND VERIFYING PACKAGES:
       rpm {-q|--query} [select-options] [query-options]

       rpm {-V|--verify} [select-options] [verify-options]

       rpm --import PUBKEY ...

       rpm {-K|--checksig} [--nosignature] [--nodigest]
           PACKAGE_FILE ...

   INSTALLING, UPGRADING, AND REMOVING PACKAGES:
       rpm {-i|--install} [install-options] PACKAGE_FILE ...

       rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...

       rpm {-F|--freshen} [install-options] PACKAGE_FILE ...

       rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts]
           [--notriggers] [--repackage] [--test] PACKAGE_NAME ...

   MISCELLANEOUS:
       rpm {--initdb|--rebuilddb}

       rpm {--addsign|--resign} PACKAGE_FILE ...

       rpm {--querytags|--showrc}

       rpm {--setperms|--setugids} PACKAGE_NAME ...

   select-options
        [--triggers,--triggerscripts]

   verify-options
        [--nodeps] [--nofiles] [--noscripts]
        [--nodigest] [--nosignature]
        [--nolinkto] [--nomd5] [--nosize] [--nouser]
        [--nogroup] [--nomtime] [--nomode] [--nordev]

   install-options
        [--aid] [--allfiles] [--badreloc] [--excludepath OLDPATH]
        [--excludedocs] [--force] [-h,--hash]
        [--ignoresize] [--ignorearch] [--ignoreos]
        [--includedocs] [--justdb] [--nodeps]
        [--nodigest] [--nosignature] [--nosuggest]
        [--noorder] [--noscripts] [--notriggers]
        [--oldpackage] [--percent] [--prefix NEWPATH]
        [--relocate OLDPATH=NEWPATH]
        [--repackage] [--replacefiles] [--replacepkgs]
        [--test]


DESCRIPTION

       rpm  is  a  powerful Package Manager, which can be used to
       build, install, query, verify, update, and erase  individ­
       ual  software  packages.  A package consists of an archive
       of files and meta-data  used  to  install  and  erase  the
       archive files. The meta-data includes helper scripts, file
       attributes, and descriptive information about the package.
       Packages  come  in two varieties: binary packages, used to
       encapsulate software to be installed, and source packages,
       containing the source code and recipe necessary to produce
       binary packages.

       One of the following basic modes must be selected:  Query,
       Verify,  Signature  Check,  Install/Upgrade/Freshen, Unin­
       stall, Initialize Database, Rebuild Database, Resign,  Add
       Signature,  Set  Owners/Groups,  Show  Querytags, and Show
       Configuration.

   GENERAL OPTIONS
       These options can be used in all the different modes.

       -?, --help
              Print a longer usage message then normal.

       --version
              Print a single line containing the  version  number
              of rpm being used.

       --quiet
              /usr/lib/rpm/rpmrc:/usr/lib/rpm/red­
              hat/rpmrc:~/.rpmrc.

       --pipe CMD
              Pipes the output of rpm to the command CMD.

       --dbpath DIRECTORY
              Use  the  database  in  DIRECTORY  rathen  than the
              default path /var/lib/rpm

       --root DIRECTORY
              Use the file system tree rooted  at  DIRECTORY  for
              all  operations.  Note that this means the database
              within DIRECTORY will be used for dependency checks
              and any scriptlet(s) (e.g.  %post if installing, or
              %prep if building, a package) will be run  after  a
              chroot(2) to DIRECTORY.

   INSTALL AND UPGRADE OPTIONS
       The general form of an rpm install command is

       rpm {-i|--install} [install-options] PACKAGE_FILE ...

       This installs a new package.

       The general form of an rpm upgrade command is

       rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...

       This  upgrades or installs the package currently installed
       to a newer version.  This is the same as  install,  except
       all  other version(s) of the package are removed after the
       new package is installed.

       rpm {-F|--freshen} [install-options] PACKAGE_FILE ...

       This will upgrade packages, but only if an earlier version
       currently  exists. The PACKAGE_FILE may be specified as an
       ftp or http URL, in which case the package will  be  down­
       loaded  before  being  installed. See FTP/HTTP OPTIONS for
       information on rpm's internal ftp and http client support.

       --aid  Add  suggested packages to the transaction set when
              needed.

              mentation  (which  includes  man  pages and texinfo
              documents).

       --force
              Same as using  --replacepkgs,  --replacefiles,  and
              --oldpackage.

       -h, --hash
              Print  50  hash  marks  as  the  package archive is
              unpacked.  Use with -v|--verbose for a  nicer  dis­
              play.

       --ignoresize
              Don't  check mount file systems for sufficient disk
              space before installing this package.

       --ignorearch
              Allow installation or upgrading even if the  archi­
              tectures  of  the  binary  package  and  host don't
              match.

       --ignoreos
              Allow installation or upgrading even if the operat­
              ing  systems  of  the binary package and host don't
              match.

       --includedocs
              Install documentation files. This  is  the  default
              behavior.

       --justdb
              Update only the database, not the filesystem.

       --nodigest
              Don't  verify  package or header digests when read­
              ing.

       --nosignature
              Don't verify  package  or  header  signatures  when
              reading.

       --nodeps
              Don't  do  a  dependency check before installing or
              upgrading a package.

       --nosuggest
              Don't suggest package(s)  that  provide  a  missing
              dependency.

       --noorder
              Don't reorder the packages for an install. The list
              of packages would normally be reordered to  satisfy
              --nopre --nopost --nopreun --nopostun

              and turns off the execution  of  the  corresponding
              %pre, %post, %preun, and %postun scriptlet(s).

       --notriggers

       --notriggerin

       --notriggerun

       --notriggerpostun
              Don't  execute  any  trigger scriptlet of the named
              type.  The --notriggers option is equivalent to

              --notriggerin --notriggerun --notriggerpostun

              and turns off execution of the corresponding %trig­
              gerin, %triggerun, and %triggerpostun scriptlet(s).

       --oldpackage
              Allow an upgrade to replace a newer package with an
              older one.

       --percent
              Print  percentages  as  files are unpacked from the
              package archive.  This is intended to make rpm easy
              to run from other tools.

       --prefix NEWPATH
              For  relocateable  binary  packages,  translate all
              file paths that start with the installation  prefix
              in the package relocation hint(s) to NEWPATH.

       --relocate OLDPATH=NEWPATH
              For relocatable binary packages, translate all file
              paths that start with OLDPATH in the package  relo­
              cation hint(s) to NEWPATH.  This option can be used
              repeatedly if several OLDPATH's in the package  are
              to be relocated.

       --repackage
              Re-package the files before erasing. The previously
              installed package will be named  according  to  the
              macro  %_repackage_name_fmt  and will be created in
              the directory named by  the  macro  %_repackage_dir
              (default value is /var/tmp).

       --replacefiles
              Install  the  packages  even  if they replace files
              from other, already installed, packages.


       The following options may also be used:

       --allmatches
              Remove  all  versions  of  the  package which match
              PACKAGE_NAME. Normally an error is issued if  PACK­
              AGE_NAME matches multiple packages.

       --nodeps
              Don't  check  dependencies  before uninstalling the
              packages.

       --noscripts

       --nopreun

       --nopostun
              Don't execute the scriptlet of the same name.   The
              --noscripts  option during package erase is equiva­
              lent to

              --nopreun --nopostun

              and turns off the execution  of  the  corresponding
              %preun, and %postun scriptlet(s).

       --notriggers

       --notriggerun

       --notriggerpostun
              Don't  execute  any  trigger scriptlet of the named
              type.  The --notriggers option is equivalent to

              --notriggerun --notriggerpostun

              and turns off execution of the corresponding %trig­
              gerun, and %triggerpostun scriptlet(s).

       --repackage
              Re-package the files before erasing. The previously
              installed package will be named  according  to  the
              macro  %_repackage_name_fmt  and will be created in
              the directory named by  the  macro  %_repackage_dir
              (default value is /var/tmp).

       --test Don't  really  uninstall  anything, just go through
              the motions.  Useful in conjunction  with  the  -vv
              option for debugging.

   QUERY OPTIONS
       The general form of an rpm query command is
       tabs, and other special  characters)  and  printf(3)  type
       formatters.   As  rpm already knows the type to print, the
       type specifier must be omitted however,  and  replaced  by
       the  name  of the header tag to be printed, enclosed by {}
       characters. Tag names are case insesitive, and the leading
       RPMTAG_ portion of the tag name may be omitted as well.

       Alternate output formats may be requested by following the
       tag with :typetag.  Currently,  the  following  types  are
       supported:

       :armor  Wrap a public key in ASCII armor.

       :base64
              Encode binary data using base64.

       :date  Use strftime(3) "%c" format.

       :day   Use strftime(3) "%a %b %d %Y" format.

       :depflags
              Format dependency flags.

       :fflags
              Format file flags.

       :hex   Format in hexadecimal.

       :octal Format in octal.

       :perms Format file permissions.

       :shescape
              Escape single quotes for use in a script.

       :triggertype
              Display trigger suffix.

       For  example,  to  print  only  the  names of the packages
       queried, you could use %{NAME} as the format  string.   To
       print  the  packages  name and distribution information in
       two columns, you could use %-30{NAME}%{DISTRIBUTION}.  rpm
       will  print  a list of all of the tags it knows about when
       it is invoked with the --querytags argument.

       There are two subsets of  options  for  querying:  package
       selection, and information selection.

   PACKAGE SELECTION OPTIONS:
       PACKAGE_NAME
              Query installed package named PACKAGE_NAME.

              Query package that contains a given header  identi­
              fier,  i.e. the SHA1 digest of the immutable header
              region.

       -p, --package PACKAGE_FILE
              Query an (uninstalled) package  PACKAGE_FILE.   The
              PACKAGE_FILE  may  be  specified  as an ftp or http
              style URL, in which case the package header will be
              downloaded  and  queried.  See FTP/HTTP OPTIONS for
              information on rpm's internal ftp and  http  client
              support.  The  PACKAGE_FILE  argument(s),  if not a
              binary package, will be  interpreted  as  an  ASCII
              package manifest.  Comments are permitted, starting
              with a '#', and each line  of  a  package  manifest
              file may include white space seperated glob expres­
              sions, including URL's  with  remote  glob  expres­
              sions, that will be expanded to paths that are sub­
              stituted in place of the package manifest as  addi­
              tional PACKAGE_FILE arguments to the query.

       -P, --patches
              Limit  the  selected  packages  to patch-rpms. As a
              side effect, limit the file list to patched  files.

       --pkgid MD5
              Query package that contains a given package identi­
              fier, i.e. the MD5 digest of  the  combined  header
              and payload contents.

       --querybynumber HDRNUM
              Query the HDRNUMth database entry directly; this is
              useful only for debugging.

       --specfile SPECFILE
              Parse and query SPECFILE as if it were  a  package.
              Although  not all the information (e.g. file lists)
              is available, this type of query permits rpm to  be
              used to extract information from spec files without
              having to write a specfile parser.

       --tid TID
              Query package(s) that have a given TID  transaction
              identifier.  A unix time stamp is currently used as
              a transaction identifier. All package(s)  installed
              or erased within a single transaction have a common
              identifier.

       --triggeredby PACKAGE_NAME
              Query packages that  are  triggered  by  package(s)
              PACKAGE_NAME.

       --whatprovides CAPABILITY
              Display change information for the package.

       -c, --configfiles
              List only configuration files (implies -l).

       -d, --docfiles
              List only documentation files (implies -l).

       --dump Dump file information as follows:

              path size mtime md5sum mode owner group isconfig isdoc rdev symlink

       This  option must be used with at least one of -l, -c, -d.

       --filesbypkg
              List all the files in each selected package.

       -i, --info
              Display package information, including  name,  ver­
              sion, and description.  This uses the --queryformat
              if one was specified.

       --last Orders the package listing  by  install  time  such
              that the latest packages are at the top.

       -l, --list
              List  files  in  package.  If the -P option is also
              given, only patched files are shown.

       --provides
              List capabilities this package provides.

       -R, --requires
              List packages on which this package depends.

       --scripts
              List the package  specific  scriptlet(s)  that  are
              used as part of the installation and uninstallation
              processes.

       -s, --state
              Display the states of files in the package (implies
              -l).   The state of each file is one of normal, not
              installed, or replaced.

       --triggers, --triggerscripts
              Display the trigger scripts, if any, which are con­
              tained in the package.

   VERIFY OPTIONS
       option, will be silently ignored.

       The  package selection options are the same as for package
       querying (including package manifest files as  arguments).
       Other options unique to verify mode are:

       --nodeps
              Don't verify dependencies of packages.

       --nodigest
              Don't  verify  package or header digests when read­
              ing.

       --nofiles
              Don't verify any attributes of package files.

       --noscripts
              Don't execute the %verifyscript scriptlet (if any).

       --nosignature
              Don't  verify  package  or  header  signatures when
              reading.

       --nolinkto

       --nomd5

       --nosize

       --nouser

       --nogroup

       --nomtime

       --nomode

       --nordev
              Don't verify the corresponding file attribute.

       The format of the output is a string of  8  characters,  a
       possible attribute marker:

       c %config configuration file.
       d %doc documentation file.
       g %ghost file (i.e. the file contents are not included in the package payload).
       l %license license file.
       r %readme readme file.

       from  the package header, followed by the file name.  Each
       of the 8 characters denotes the result of a comparison  of
       attribute(s)   of   the   file   to  the  value  of  those
       T mTime differs

   DIGITAL SIGNATURE AND DIGEST VERIFICATION
       The general forms of rpm digital signature commands are

       rpm --import PUBKEY ...

       rpm {--checksig} [--nosignature] [--nodigest]
           PACKAGE_FILE ...

       The  --checksig  option  checks all the digests and signa­
       tures contained in PACKAGE_FILE to  ensure  the  integrity
       and  origin  of  the package. Note that signatures are now
       verified whenever a package is  read,  and  --checksig  is
       useful to verify all of the digests and signatures associ­
       ated with a package.

       Digital signatures cannot be  verified  without  a  public
       key.   An ascii armored public key can be added to the rpm
       database using --import. An imported public key is carried
       in  a header, and key ring management is performed exactly
       like  package  management.  For  example,  all   currently
       imported public keys can be displayed by:

       rpm -qa gpg-pubkey*

       Details about a specific public key, when imported, can be
       displayed by querying.  Here's information about  the  Red
       Hat GPG/DSA key:

       rpm -qi gpg-pubkey-db42a60e

       Finally,  public  keys  can be erased after importing just
       like packages. Here's how to remove the  Red  Hat  GPG/DSA
       key

       rpm -e gpg-pubkey-db42a60e

   SIGNING A PACKAGE
       rpm --addsign|--resign PACKAGE_FILE ...

       Both  of  the  --addsign and --resign options generate and
       insert new signatures for each package PACKAGE_FILE given,
       replacing  any  existing signatures. There are two options
       for historical reasons, there is no difference in behavior
       currently.
       used, but DSA is preferred.

       If  you  want to be able to sign packages you create your­
       self, you also need to create your own public  and  secret
       key  pair (see the GPG manual). You will also need to con­
       figure the rpm macros

       %_signature
              The signature type.  Right now only gpg and pgp are
              supported.

       %_gpg_name
              The name of the "user" whose key you wish to use to
              sign your packages.

       For example, to be able to use GPG to sign packages as the
       user  "John Doe <jdoe@foo.com>" from the key rings located
       in /etc/rpm/.gpg using  the  executable  /usr/bin/gpg  you
       would include

       %_signature gpg
       %_gpg_path /etc/rpm/.gpg
       %_gpg_name John Doe <jdoe@foo.com>
       %_gpgbin /usr/bin/gpg

       in  a  macro  configuration  file. Use /etc/rpm/macros for
       per-system configuration  and  ~/.rpmmacros  for  per-user
       configuration.

   REBUILD DATABASE OPTIONS
       The general form of an rpm rebuild database command is

       rpm   {--initdb|--rebuilddb}   [-v]  [--dbpath  DIRECTORY]
       [--root DIRECTORY]

       Use --initdb to create a new database, use --rebuilddb  to
       rebuild  the  database  indices from the installed package
       headers.

   SHOWRC
       The command

       rpm --showrc

       shows the values rpm will use for all of the  options  are
       currently set in rpmrc and macros configuration file(s).

   FTP/HTTP OPTIONS
       rpm  can act as an FTP and/or HTTP client so that packages
       can be queried or installed from  the  internet.   Package
              all  ftp  transfers,  which  allows  users  to  ftp
              through firewall machines which use proxy  systems.
              This  option  may  also be specified by configuring
              the macro %_ftpproxy.

       --ftpport HOST
              The TCP PORT number to use for the  ftp  connection
              on  the  proxy  ftp  server  instead of the default
              port. This option may also be specified by  config­
              uring the macro %_ftpport.

       rpm  allows  the  following  options  to be used with http
       URLs:

       --httpproxy HOST
              The host HOST will be used as a  proxy  server  for
              all  http transfers. This option may also be speci­
              fied by configuring the macro %_httpproxy.

       --httpport PORT
              The TCP PORT number to use for the http  connection
              on  the  proxy  http  server instead of the default
              port. This option may also be specified by  config­
              uring the macro %_httpport.


LEGACY ISSUES

   Executing rpmbuild
       The   build   modes   of  rpm  are  now  resident  in  the
       /usr/bin/rpmbuild executable. Although legacy  compatibil­
       ity  provided by the popt aliases below has been adequate,
       the compatibility is not perfect; hence build mode compat­
       ibility  through  popt  aliases is being removed from rpm.
       Install the rpmbuild package, and see rpmbuild(8) for doc­
       umentation  of  all  the  rpm build modes previously docu­
       mented here in rpm(8).

       Add the following lines to /etc/popt if you wish  to  con­
       tinue invoking rpmbuild from the rpm command line:

       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
       ~/.rpmrc

   Macro Configuration
       /usr/lib/rpm/macros
       /usr/lib/rpm/redhat/macros
       /etc/rpm/macros
       ~/.rpmmacros

   Database
       /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

   Temporaray
       /var/tmp/rpm*


SEE ALSO

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

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


AUTHORS

       Marc Ewing <marc@redhat.com>
       Jeff Johnson <jbj@redhat.com>
       Erik Troan <ewt@redhat.com>

Red Hat, Inc.              09 June 2002                    RPM(8)
  




Login
Nickname

Password

Security Code
Security Code
Type Security Code


Don't have an account yet? You can create one. As a registered user you have some advantages like theme manager, comments configuration and post comments with your name.

Help if you can!


Amazon Wish List

Did You Know?
The Linux Tutorial can use your help.


Friends



Tell a Friend About Us

Bookmark and Share



Web site powered by PHP-Nuke

Is this information useful? At the very least you can help by spreading the word to your favorite newsgroups, mailing lists and forums.
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters. Articles are the property of their respective owners. Unless otherwise stated in the body of the article, article content (C) 1994-2013 by James Mohr. All rights reserved. The stylized page/paper, as well as the terms "The Linux Tutorial", "The Linux Server Tutorial", "The Linux Knowledge Base and Tutorial" and "The place where you learn Linux" are service marks of James Mohr. All rights reserved.
The Linux Knowledge Base and Tutorial may contain links to sites on the Internet, which are owned and operated by third parties. The Linux Tutorial is not responsible for the content of any such third-party site. By viewing/utilizing this web site, you have agreed to our disclaimer, terms of use and privacy policy. Use of automated download software ("harvesters") such as wget, httrack, etc. causes the site to quickly exceed its bandwidth limitation and are therefore expressly prohibited. For more details on this, take a look here

PHP-Nuke Copyright © 2004 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Page Generation: 0.10 Seconds