zypper man page on SuSE

Man page or keyword search:  
man Server   14857 pages
apropos Keyword Search (all sections)
Output format
SuSE logo
[printable version]

zypper(8)			 System Tools			     zypper(8)

NAME
       zypper  -  Command-line	interface  to  ZYpp  system management library
       (libzypp)

SYNTAX
       zypper [--global-opts] <command> [--command-opts] [command-arguments]

       zypper help [command]

DESCRIPTION
       zypper is a command-line interface to ZYpp system  management  library.
       It  can	be  used to install, update, remove software, manage reposito‐
       ries, perform various queries, and more.

CONCEPTS
       Most of the following concepts are common for all applications based on
       the  libzypp  package  management  library,  but	 there are some zypper
       specifics.

   Repositories
       Libzypp works with package metadata, that is information about packages
       and  their  relations  extracted	 from RPM packages and other data like
       patch information, pattern definitions,	etc.  These  data  are	stored
       together	 with  the RPM files in folders called repositories. Reposito‐
       ries can be placed on various media like an HTTP or FTP server, DVD, or
       a folder on a local disc.

       There  is  a  special  set of commands in zypper intented to manipulate
       repositories.  Also many commands and options take a repository	as  an
       arugment.  See  section	COMMANDS, subsection Repository Management for
       more details.

   Resource Identfiers (URI)
       To specify locations of repositories or	other  resources  (RPM	files,
       .repo  files)  you  can	use any type of URIs supported by libzypp. See
       http://en.opensuse.org/openSUSE:Libzypp_URIs for a  complete  list  and
       usage examples.

       Zypper  also  accepts  special  URIs identifying openSUSE Build Service
       (OBS) repositories in the addrepo command. These URIs have the form  of
       obs://<project>/[platform],  where  project  is	the  name  of  the OBS
       project and platform is the target platform (OS) for which the  reposi‐
       tory is intended. For example: obs://server:http/openSUSE_11.3.

       If  platform is omitted, zypper.conf's obs.platform value is used.  See
       also other options in the [obs] section of zypper.conf.

       In addition to these URIs you can use plain directory and file paths in
       which case zypper automatically treats them as dir:/path URIs.

   Refresh
       Refreshing a repository means downloading metadata of packages from the
       medium  (if  needed),  storing  it  in  local  cache  (typically	 under
       /var/cache/zypp/raw/<alias> directory) and preparsing the metadata into
       .solv   files   (building   the	 solv	 cache),    typically	 under
       /var/cache/zypp/solv/<alias>.

       The  metadata get refreshed either automatically or on user request. An
       automatic refresh takes place right before reading  metadata  from  the
       database	 if  the  auto-refresh	is  enabled for the repository and the
       metada is reported to be out of date. If the auto-refresh is  disabled,
       the  repository will only be refreshed on user request. You can request
       a refresh by calling zypper  refresh  (see  the	documentation  of  the
       refresh command for details).

       The  repository	metadata are checked for changes before actually doing
       the refresh. A change is detected by downloading one  or	 two  metadata
       index  files  (small  files)  and comparing the checksums of the cached
       ones and the remote ones. If the files differ, the repository is out of
       date and will be refreshed.

       To  delay  the  up-to-date check (and thus the automatic refresh) for a
       certain number of minutes, edit the  value  of  the  repo.refresh.delay
       attribute of ZYpp config file (/etc/zypp/zypp.conf). This means, zypper
       will not even try to download and check the index files, and  you  will
       be able to use zypper for operations like search or info without inter‐
       net access or root privileges.

   Services
       Services are one level above repositories and serve to manage reposito‐
       ries  or	 to do some special tasks. Libzypp currently supports only one
       type of services, the Repository Index Service (RIS).

       Repository Index Service (RIS) is a special type	 of  repository	 which
       contains	 a  list  of  other  repositories.  This list can be generated
       dynamically by the server according to  some  URI  parameters  or  user
       name, or can be static. Once such service is added to your system, zyp‐
       per takes care of adding, modifying, or removing these repositories  on
       your  system  to reflect the current list.  See section Service Manage‐
       ment and	 http://old-en.opensuse.org/Standards/Repository_Index_Service
       for more details.

   Package Types
       zypper  works  with  several  types of resource objects, called resolv‐
       ables.  A resolvable is a package, patch, pattern, or a product.

       package - an ordinary RPM package.
       patch - update of one or more packages. A  patch	 can  include  special
       scripts	and  messages  to  be  run or shown during installation of the
       update.
       pattern - group of packages required or	recommended  to	 install  some
       functionality.
       product - group of packages which are necessary to install a product.
       srcpackage  - source code package (.src.rpm). This type works in search
       and install commands.

       Throughout this manual we will refer to resolvables simply as  packages
       and  to resolvable types as package types. These type names can be used
       as arguments of --type option in several commands like  install,	 info,
       or search.

   Package Dependencies
       Software	 packages  depend on each other in various ways. Packages usu‐
       ally require or recommend other packages, they can  declare  that  they
       conflict with other packages, etc. Packages can also depend on specific
       hardware.  See http://old-en.opensuse.org/Software_Management/Dependen‐
       cies  for more information. Zypper uses a dependency solver to find out
       what packages need to be installed to satisfy the user's request.

COMMANDS
       zypper provides a number of commands. Each command accepts the  options
       listed  in  the GLOBAL OPTIONS section. These options must be specified
       before the command name.	 In  addition,	many  commands	have  specific
       options,	 which	are  listed  in	 this  section. These command-specific
       options must be specified after the name of the command and before  any
       of the command arguments.

   General Commands
       help [command]
	      Shows help texts. If invoked without any argument (just ´zypper´
	      or ´zypper help´), zypper displays global help text which	 lists
	      all available global options and commands (except those provided
	      only for compatibility with rug).

	      If invoked with a command name argument,	zypper	displays  help
	      for  the specified command, if such command exists. Long as well
	      as short variants of the command names can be used.

	      For your convenience, zypper help can be invoked in any  of  the
	      following ways:

	      $ zypper help [command]
	      $ zypper -h|--help [command]
	      $ zypper [command] -h|--help

       shell (sh)
	      Starts  a	 shell	for entering multiple commands in one session.
	      Exit the shell using "exit", "quit", or Ctrl-D.

	      The shell support is not complete so expect bugs there. However,
	      there's  no urgent need to use the shell since libzypp became so
	      fast thanks to the SAT solver and its tools (openSUSE 11.0), but
	      still, you're welcome to experiment with it.

   Package Management Commands
       info (if) [options] <name> ...
	      Displays detailed informaion about the specified packages.

	      For each specified package, zypper finds the best available ver‐
	      sion in defined repositories  and	 shows	information  for  this
	      package.

       -r, --repo <alias|name|#|URI>
	      Work only with the repository specified by the alias, name, num‐
	      ber or URI. This option can be used multiple times.

       -t, --type <type>
	      Type of package (default: package). See  section	Package	 Types
	      for list of available package types.

	   --requires
	      Show  also  symbols  required  and  pre-required by the package.
	      Available for package and patch type only.

	   --recommends
	      Show also symbols recommended  by	 the  package.	Available  for
	      package and patch type only.

       Examples:

	      Show information about package 'workrave':
	      $ zypper info workrave

	      Show information about patch 'libzypp':
	      $ zypper info -t patch libzypp

	      Show information about pattern 'lamp_server':
	      $ zypper info -t pattern lamp_server

       install (in) [options] <name|capability|rpm_file_uri> ...
	      Install or update packages.

	      The  packages  can  be selected by their name or by a capability
	      they provide.

	      Capability is: NAME, or "NAME[.ARCH][OP<EDITION>]",  where  ARCH
	      is  architecture	code,  OP is <, <=, =, >=, or > and EDITION is
	      VERSION[-RELEASE].  For example: zypper=0.8.8-2.

	      The NAME component of a capability is not only  a	 package  name
	      but  any	symbol	provided  by  packages: /bin/vi, libcurl.so.3,
	      perl(Time::ParseDate).  Just remember to quote  to  protect  the
	      special  characters  from the shell, for example: zypper\>0.8.10
	      or 'zypper>0.8.10'

	      If EDITION is not specified, the newest installable version will
	      be  installed.   This  also means that if the package is already
	      installed and newer versions are available, it will get upgraded
	      to the newest installable version.

	      If ARCH is not specified, or the last dot of the capability name
	      string is not followed by known architecture,  the  solver  will
	      treat  the  whole	 string	 as  a capability name. If the ARCH is
	      known, the solver will select a package matching that  architec‐
	      ture and complain if such package cannot be found.

	      Zypper  will  report  packages  that it cannot find. Further, in
	      interactive mode, zypper proceeds with installation of the  rest
	      of  requested  packages,	and  it will abort immediately in non-
	      interactive  mode.   In	both   cases   zypper	returns	  ZYP‐
	      PER_EXIT_INF_CAP_NOT_FOUND after finishing the operation.

	      Zypper  is  also able to install plain RPM files while trying to
	      satisfy their dependencies using packages from defined reposito‐
	      ries.  You  can install a plain RPM file by specifying its loca‐
	      tion in the install command arguments either as a local path  or
	      an URI. E.g.:

	      $ zypper install ~/rpms/foo.rpm http://some.site/bar.rpm

	      Zypper   will  download  the  files  into	 its  cache  directory
	      (/var/cache/zypper/RPMS), add  this  directory  as  a  temporary
	      plaindir repository and mark the respective packages for instal‐
	      lation.

	      In the install command, you can specify also packages  you  wish
	      to  remove  in  addition to the packages you wish to install, by
	      prepending their names by a '-' or '~' character. For example:

	      $ zypper install vim -emacs
	      $ zypper remove emacs +vim

	      will both install vim and remove emacs. Note that if you	choose
	      to use '-' with the first package you specify, you need to write
	      '--' before it  to  prevent  its	interpretation	as  a  command
	      option.

	      $ zypper install -- -boring-game great-game great-game-manual

       -r, --repo <alias|name|#|URI>
	      Work only with the repository specified by the alias, name, num‐
	      ber or URI. This option can be used multiple times.

       -t, --type <type>
	      Type of package to install (default: package). See section Pack‐
	      age Types for list of available package types.

	      If  pattern  is specified, and the pattern is not yet installed,
	      all packages required and recommended by	the  pattern  will  be
	      installed.   A  pattern is considered installed if all the pack‐
	      ages and patterns it requires are installed. Thus a pattern  can
	      be  evalueated  as installed even if you do not install the pat‐
	      tern itself, but rather the packages  it	requries.  Use	zypper
	      search -t pattern [name] to look for available patterns and zyp‐
	      per info -t pattern <name> to list its contents.

	      If patch is specified, zypper will install and/or	 remove	 pack‐
	      ages  to	satisfy	 specified patch. This is a way to ensure that
	      specific bug fix is installed. Like patterns, patches  can  also
	      be  evaluated  as installed by installing the packages needed to
	      satisfy the patch.  Use zypper list-patches to look  for	avail‐
	      able  needed  patches and zypper info -t patch <name> to display
	      detailed information about a patch.

	      If product is specified, zypper ensures all packages required by
	      the  product  are	 installed. Use zypper se -t product [name] to
	      look for available products and zypper info -t product <name> to
	      display detailed information about a product.

       -n, --name
	      Select  packages by their name, don't try to select by capabili‐
	      ties.

       -f, --force
	      Install even if the item is already installed (reinstall), down‐
	      graded or changes vendor or architecture.

	   --oldpackage
	      Allow  to	 replace  a newer item with an older one. Handy if you
	      are doing a rollback. Unlike --force it will not enforce a rein‐
	      stall,  if the item is already installed with the requested ver‐
	      sion.

	   --from <alias|name|#|URI>
	      Select packages from specified repository. If strings  specified
	      as  arguments to the install command match packages in reposito‐
	      ries specified in this option, they will be marked for installa‐
	      tion.  This  option  currently  implies --name, but allows using
	      wildcards for specifying packages.

       -C, --capability
	      Select packages by capabilities.

       -l, --auto-agree-with-licenses
	      Automatically say 'yes'  to  third  party	 license  confirmation
	      prompt.  By using this option, you choose to agree with licenses
	      of all third-party software  this	 command  will	install.  This
	      option  is  particularly useful for administators installing the
	      same set of packages  on	multiple  machines  (by	 an  automated
	      process) and have the licenses confirmed before.

	   --debug-solver
	      Create  solver  test case for debugging. Use this option, if you
	      think the dependencies were not solved all right and attach  the
	      resulting	 /var/log/zypper.solverTestCase	 directory to your bug
	      report. To use this option, simply add  it  to  the  problematic
	      install or remove command.

	   --no-recommends
	      By  default,  zypper  installs  also packages recommended by the
	      requested ones.  This option causes the recomended  packages  to
	      be ignored and only the required ones to be installed.

       -R, --no-force-resolution
	      Do  not  force  the  solver  to find a solution. Instead, report
	      dependency problem and prompt the user to resolve it manually.

	   --force-resolution
	      Force the solver to find a  solution,  even  if  it  would  mean
	      removing all packages with unfulfilled requirements.

	      The default behavior is 'force' in the interactive mode and 'no-
	      force' in the non-interactive mode. If this option is specified,
	      it takes the preference.

       -D, --dry-run
	      Test the installation, do not actually install any package. This
	      option will add the --test option to the rpm commands run by the
	      install command.

       Download-and-install mode options:

       -d, --download-only
	      Only download the packages for later installation.

	   --download-in-advance
	      First download all packages, then start installing.

	   --download-in-heaps
	      (Not  yet	 implemented,  currently  the  same  as --download-in-
	      advance).	 Download a  minimal  set  of  packages	 that  can  be
	      installed	 without  leaving  the	system	in  broken  state, and
	      install them. Then download and install another heap  until  all
	      are installed. This helps to keep the system in consistent state
	      without the need to download all package in advance, which  com‐
	      bines the advantages of --download-in-advance and --download-as-
	      needed.  This is the default mode.

	   --download-as-needed
	      Download one package, install it immediately, and continue  with
	      the rest until all are installed.

	   --download <mode>
	      Use  the	specified  download-and-install	 mode. Available modes
	      are: only, in-advance, in-heaps, as-needed.   See	 corresponding
	      --download-<mode> options for their description.

       More examples:

	      Install lamp_server pattern:
	      $ zypper install -t pattern lamp_server

	      Install GhostScript viewer, but ignore recommended packages:
	      $ zypper install --no-recommends gv

	      Install version 2.0.6 of virtualbox-ose package (any of the fol‐
	      lowing):
	      $ zypper install virtualbox-ose-2.0.6
	      $ zypper install virtualbox-ose=2.0.6
	      $ zypper install virtualbox-ose = 2.0.6

       source-install (si) <name> ...
	      Install specified source packages and their build	 dependencies.
	      If  the  name  of	 a  binary  package is given, the coresponding
	      source package is looked up and installed instead.

	      This command will try to find the newest available  versions  of
	      the source packages and use rpm -i to install them and the pack‐
	      ages that are required to build the source package.

	      Note that the source packages must be available in  repositories
	      you  are using.  You can check whether a repository contains any
	      source packages using the following command:

	      $ zypper search -t srcpackage -r <alias|name|#|URI>

       -d, --build-deps-only
	      Install only build dependencies of specified packages.

       -D, --no-build-deps
	      Don't install build dependencies.

       -r, --repo <alias|name|#|URI>
	      Work only with the repository specified by the alias, name, num‐
	      ber, or URI. This option can be used multiple times.

       Examples:

	      Install build dependencies of dbus-1 source package:
	      $ zypper si -d dbus-1

       verify (ve) [options]
	      Check whether dependencies of installed packages are satisfied.

	      In  case that any dependency problems are found, zypper suggests
	      packages to install or remove to fix them.

	   --no-recommends
	      By default, zypper installs also	packages  recommended  by  the
	      requested	 ones  (the  ones needed to fix broken dependencies in
	      this case).  This option causes the recomended  packages	to  be
	      ignored and only the required ones to be installed.

       -D, --dry-run
	      Test the repair, do not actually do anything to the system.

       -r, --repo <alias|name|#|URI>
	      Work only with the repository specified by the alias, name, num‐
	      ber, or URI. This option can be used multiple times.

	   --debug-solver
	      Create solver test case for debugging. See the  install  command
	      for details.

       install-new-recommends (inr) [options]
	      Install  newly  added  packages recommended by already installed
	      ones.  This can typically be used to install  language  packages
	      recently	added to repositories or drivers for newly added hard‐
	      ware.

       -r, --repo <alias|name|#|URI>
	      Work only with the repository specified by the alias, name, num‐
	      ber, or URI. This option can be used multiple times.

       -D, --dry-run
	      Test the installation, do not actually install anything.

	   --debug-solver
	      Create  solver  test case for debugging. See the install command
	      for details.

       This  command  also  accepts  the  download-and-install	mode   options
       described
	      in the install command description.

       remove (rm) [options] <name> ...

       remove (rm) [options] --capability <capability> ...
	      Remove (uninstall) packages.

	      The  packages  can  be selected by their name or by a capability
	      they provide.  For details on package selection see the  install
	      command description.

       -r, --repo <alias|name|#|URI>
	      Work only with the repository specified by the alias, name, num‐
	      ber, or URI. This option can be used multiple times.

       -t, --type <type>
	      Type of package (default: package). See  section	Package	 Types
	      for list of available package types.

	      Since  patches  are  not	installed in sense of copying files or
	      recording a database entry, they	cannot	be  uninstalled,  even
	      though  zypper  shows them as installed. The installed status is
	      determined solely based on the installed status of its  required
	      dependencies. If these dependencies are satisified, the patch is
	      rendered installed.

	      Uninstallation of patterns is currently not implemented.

       -n, --name
	      Select packages by their name (default).

       -C, --capability
	      Select packages by capabilities.

       --debug-solver
	      Create solver test case for debugging. See the  install  command
	      for details.

       -R, --no-force-resolution
	      Do  not  force  the  solver  to find a solution. Instead, report
	      dependency problem and prompt the user to resolve it manually.

	   --force-resolution
	      Force the solver to find a  solution,  even  if  it  would  mean
	      removing all packages with unfulfilled requirements.

	      The default behavior is 'force' in the interactive mode and 'no-
	      force' in the non-interactive mode. If this option is specified,
	      it takes the preference.

       -u, --clean-deps
	      Automatically  remove  dependencies  which become unneeded after
	      removal of requested packages.

       -U, --no-clean-deps
	      No automatic removal of unneeded dependencies.

       -D, --dry-run
	      Test the removal of packages, do not actually  remove  anything.
	      This  option  will add the --test option to the rpm commands run
	      by the remove command.

   Update Management Commands
       list-updates (lu) [options]
	      List available updates.

	      This command will list only installable  updates,	 i.e.  updates
	      which  have no dependency problems, or which do not change pack‐
	      age vendor. This list is what the update command will propose to
	      install. To list all packages for which newer version are avail‐
	      able, use --all option.

       -t, --type <type>
	      Type of package (default: package). See  section	Package	 Types
	      for list of available package types.

	      If  patch	 is specified, zypper acts as if the list-patches com‐
	      mand was executed.

       -r, --repo <alias|name|#|URI>
	      Work only with the repository specified by the alias, name, num‐
	      ber, or URI. This option can be used multiple times.

       -a, --all
	      List all packages for which newer versions are available, regar‐
	      dles whether they are installable or not.

	   --best-effort
	      See the update command for description.

       update (up) [options] [packagename] ...
	      Update installed packages with newer versions, where possible.

	      This command will not update packages which would require change
	      of   package   vendor   unless   the   vendor  is	 specified  in
	      /etc/zypp/vendors.d, or which would require manual resolution of
	      problems	with  dependencies.  Such non-installable updates will
	      then be listed in separate section of the summary as  "The  fol‐
	      lowing package updates will NOT be installed:".

	      To  update  individual  packages,	 specify  one  or more package
	      names. You can use the '*' and '?' wildcard  characters  in  the
	      package names to specify multiple packages matching the pattern.

       -t, --type <type>
	      Type  of	package	 (default: package). See section Package Types
	      for list of available package types.

	      If patch is specified, zypper acts as if the patche command  was
	      executed.

       -r, --repo <alias|name|#|URI>
	      Work only with the repository specified by the alias, name, num‐
	      ber, or URI. This option can be used multiple times.

	   --skip-interactive
	      This will skip interactive patches, that	is,  those  that  need
	      reboot,  contain	a  message,  or update a package whose license
	      needs to be confirmed.

       -l, --auto-agree-with-licenses
	      Automatically say 'yes'  to  third  party	 license  confirmation
	      prompt.  By using this option, you choose to agree with licenses
	      of all third-party software  this	 command  will	install.  This
	      option  is  particularly useful for administators installing the
	      same set of packages  on	multiple  machines  (by	 an  automated
	      process) and have the licenses confirmed before.

	   --debug-solver
	      Create  solver  test case for debugging. See the install command
	      for details.

	   --no-recommends
	      By default, zypper installs also	packages  recommended  by  the
	      requested	 ones.	 This option causes the recomended packages to
	      be ignored and only the required ones to be installed.

       -R, --no-force-resolution
	      Do not force the solver to  find	a  solution.  Instead,	report
	      dependency problem and prompt the user to resolve it manually.

	   --force-resolution
	      Force  the  solver  to  find  a  solution, even if it would mean
	      removing all packages with unfulfilled requirements.

	      The default behavior is 'no-force'. If this option is specified,
	      it takes the preference.

       -D, --dry-run
	      Test  the update, do not actually install or update any package.
	      This option will add the --test option to the rpm	 commands  run
	      by the update command.

	   --best-effort
	      Do  a  'best  effort'  approach  to update. This method does not
	      explicitly select packages with best version  and	 architecture,
	      but  instead requests installation of a package with higher ver‐
	      sion than the installed one and leaves the rest  on  the	depen‐
	      dency  solver.  This  method is always used for packages, and is
	      optional for products and patterns.  It  is  not	applicable  to
	      patches.

       This   command  also  accepts  the  download-and-install	 mode  options
       described
	      in the install command description.

       list-patches (lp) [options]
	      List all available needed patches.

	      This command is similar to 'zypper list-updates -t patch'.

	      Note that since the arguments of some of the  following  options
	      are  not required, they must be specified using '=' instead of a
	      space.

       -b, --bugzilla[=#]
	      List available needed patches for all Bugzilla issues, or issues
	      whose number matches the given string.

	    --cve[=#]
	      List  available  needed  patches	for  all CVE issues, or issues
	      whose number matches the given string.

       -g, --category <category>
	      List available patches in the specified category.

	    --issues[=string]
	      Look for issues whose number, summary,  or  description  matches
	      the specified string. Issues found by number are displayed sepa‐
	      rately from those found by descriptions. In the latter case, use
	      zypper  patch-info  <patchname>  to get information about issues
	      the patch fixes.

       -a, --all
	      By default, only patches that are relevant and  needed  on  your
	      system  are  listed.   This option causes all available released
	      patches to be listed. This option can be combined with  all  the
	      rest of the list-updates command options.

       -r, --repo <alias|name|#|URI>
	      Work only with the repository specified by the alias, name, num‐
	      ber, or URI. This option can be used multiple times.

       patch-check (pchk)
	      Check for patches. Displays a count of  applicable  patches  and
	      how many of them have the security category.

       See  also  the EXIT CODES section for details on exit status of 0, 100,
       and 101 returned by this command.

       -r, --repo <alias|name|#|URI>
	      Check for patches only in the repository specified by the alias,
	      name, number, or URI.  This option can be used multiple times.

       patch [options]
	      Install all available needed patches.

	      If  there are patches that affect the package management itself,
	      those will be installed first and you will be asked to  run  the
	      patch command again.

	      This command is similar to 'zypper update -t patch'.

       -b, --bugzilla <#>
	      Install  patch  fixing a Bugzilla issue specified by number. Use
	      list-patches --bugzilla command  to  get	a  list	 of  available
	      needed patches for specific issues.

	    --cve <#>
	      Install  patch  fixing  a MITRE's CVE issue specified by number.
	      Use list-patches --cve command to get a list of available needed
	      patches for specific issues.

       -g, --category <category>
	      Install  all patches in the specified category. Use list-patches
	      --category command to get a list of available patches for a spe‐
	      cific category.

       -r, --repo <alias|name|#|URI>
	      Work only with the repository specified by the alias, name, num‐
	      ber, or URI. This option can be used multiple times.

	   --skip-interactive
	      Skip interactive patches.

	   --with-interactive
	      Avoid skipping of	 interactive patches when  in  non-interactive
	      mode.

       -l, --auto-agree-with-licenses
	      See the update command for description of this option.

	   --no-recommends
	      By  default,  zypper  installs  also packages recommended by the
	      requested ones.  This option causes the recomended  packages  to
	      be ignored and only the required ones to be installed.

	   --debug-solver
	      Create test case for debugging of dependency resolver.

       -D, --dry-run
	      Test the update, do not actually update.

       This   command  also  accepts  the  download-and-install	 mode  options
       described
	      in the install command description.

       dist-upgrade (dup) [options]
	      Perform a distribution upgrade. This command applies  the	 state
	      of  (specified)  repositories onto the system; upgrades (or even
	      downgrades) installed packages to versions  found	 in  reposito‐
	      ries,  removes  packages	that are no longer in the repositories
	      and pose a dependency problem for the upgrade,  handles  package
	      splits and renames, etc.

	      If  no  repositories are specified via --from or --repo options,
	      zypper will do the upgrade with all defined  repositories.  This
	      can  be  a  problem if the system contains conflicting reposito‐
	      ries, like repositories for two different distribution releases.
	      This  often  happens  if	one forgets to remove an older release
	      repository after adding a new one, say openSUSE 11.1  and	 open‐
	      SUSE 11.2.

	      To  avoid	 the  above  trouble, you can specify the repositories
	      from which to do the upgrade using the --from or --repo options.
	      The  difference  between	these two is that when --repo is used,
	      zypper uses only the specified repositories, while  with	--from
	      zypper can also use the rest of the enabled repositories to sat‐
	      isfy package dependencies.

	   --from <alias|name|#|URI>
	      Restricts the upgrade to the specified repositories (the	option
	      can  be  used multiple times) only, but can satisfy dependencies
	      also from the rest of enabled repositories.

       -r, --repo <alias|name|#|URI>
	      Work only with the repository specified by the alias, name, num‐
	      ber, or URI. This option can be used multiple times.

       -l, --auto-agree-with-licenses
	      Automatically  say  'yes'	 to  third  party license confirmation
	      prompt. By using this option, you choose to agree with  licenses
	      of  all  third-party  software  this  command will install. This
	      option is particularly useful for administators  installing  the
	      same  set	 of  packages  on  multiple  machines (by an automated
	      process) and have the licenses confirmed before.

	   --no-recommends
	      By default, zypper installs also	packages  recommended  by  the
	      requested	 ones.	 This option causes the recomended packages to
	      be ignored and only the required ones to be installed.

	   --debug-solver
	      Create solver test case for debugging. See the  install  command
	      for details.

       -D, --dry-run
	      Test the upgrade, do not actually install or update any package.
	      This option will add the --test option to the rpm	 commands  run
	      by the dist-upgrade command.

       This   command  also  accepts  the  download-and-install	 mode  options
       described
	      in the install command description.

       Examples:

	      Upgrade the system using 'factory' and 'packman' repository:
	      $ zypper install zypper libzypp
	      $ zypper dup --from factory --from packman

   Query Commands
       search (se) [options] [querystring] ...
	      Search for packages matching given strings.  *  (any  substring)
	      and  ?  (any character) wildcards can also be used within search
	      strings.

	      Results of search are printed in a table with following columns:
	      S (status), Catalog, Type (type of package), Name, Version, Arch
	      (architecture). The status column can contain the following val‐
	      ues:  i  - installed, v - another version installed, or an empty
	      space for neither of the former cases.

	      The 'v' status is only shown if the version  or  the  repository
	      matters (--details or --repo is used), and the installed version
	      differs from the one listed or is from a repository  other  than
	      specified.

	      This command accepts the following options:

	   --match-all
	      Search for a match to all search strings (default).

	   --match-any
	      Search for a match to any of the search strings.

	   --match-substrings
	      Matches for search strings may be partial words (default).

	   --match-words
	      Matches for search strings may only be whole words.

	   --match-exact
	      Searches for an exact name of the package.

       -d, --search-descriptions
	      Search also in summaries and descriptions.

       -C, --case-sensitive
	      Perform case-sensitive search.

       -i, --installed-only
	      Show only packages that are already installed.

       -u, --uninstalled-only
	      Show only packages that are not currently installed.

       -t, --type <type>
	      Search  only for packages of specified type. See section Package
	      Types for list of available package types.  Multiple  -t	option
	      are allowed.

	      See  also	 the  type-specific query commands like packages, pat‐
	      terns, etc.

       -r, --repo <alias|name|#|URI>
	      Work only with the repository specified by the alias, name, num‐
	      ber, or URI. This option can be used multiple times.

	   --sort-by-name
	      Sort packages by name (default).

	   --sort-by-repo
	      Sort packages by catalog, not by name.

       -s, --details
	      Show  all	 available versions of found packages, each version in
	      each repository on a separate line.

       Examples:

	      Search for YaST packages (quote the string to prevent the	 shell
	      from expanding the wildcard):
	      $ zypper se 'yast*'

	      Show all available versions of package 'kernel-default':
	      $ zypper se -s --match-exact kernel-default

	      Look  for	 RSI acronym (case-sensitively), also in summaries and
	      descriptions:
	      $ zypper se -dC --match-words RSI

       packages (pa) [options] [repository] ...
	      List all available  packages  or	all  packages  from  specified
	      repositories.  Similar to zypper search -s -t package.

       -r, --repo <alias|name|#|URI>
	      Just another means to specify repositories.

       -i, --installed-only
	      Show only installed packages.

       -u, --uninstalled-only
	      Show only packages which are not installed.

       patches (pch) [options] [repository] ...
	      List  all available patches from specified repositories, includ‐
	      ing those not needed. Similar to zypper search -s -t patch.

       -r, --repo <alias|name|#|URI>
	      Just another means to specify repositories.

       patterns (pt) [options] [repository] ...
	      List all available  patterns  or	all  patterns  from  specified
	      repositories.  Similar to zypper search -s -t pattern.

       -r, --repo <alias|name|#|URI>
	      Just another means to specify repositories.

       -i, --installed-only
	      Show only installed patterns.

       -u, --uninstalled-only
	      Show only patterns which are not installed.

       products (pd) [options] [repository] ...
	      List  all	 available  products  or  all  products from specified
	      repositories.  Similar to zypper search -s -t product, but shows
	      also the type of the product (base, add-on).

       -r, --repo <alias|name|#|URI>
	      Just another means to specify repositories.

       -i, --installed-only
	      Show only installed products.

       -u, --uninstalled-only
	      Show only products which are not installed.

       what-provides (wp) <capability>
	      List  all	 packages providing the specified capability. See also
	      the install command for hint about capabilities.

   Repository Management
       Zypper is able to work with YaST, RPM-MD (yum)  software	 repositories,
       and plain directories containing .rpm files.

       Repositories  are primarily identified using their URI or alias.	 Alias
       serves as a shorthand for the long URI or name of the repository.   The
       name  of	 the  repository should briefly describe the repository and is
       shown to the user in tables and messages. The name is not required, and
       if  not	known,	the  alias is shown instead. The alias is required and
       uniquely identifies the repository on the system.

       The alias, name, URI, or the number from zypper repos list can be  used
       to  specify  a repository as an argument of various zypper commands and
       options like refresh, --repo, or --from.

       Supported URI formats:

       CD or DVD drive
	      Optionally with devices list for probing.

	      cd:///
	      dvd:/subdir?devices=/dev/sr0,/dev/sr1

       FTP/HTTP/HTTPS directory tree
	      The ftp URL scheme supports absolute and relative paths  to  the
	      default ftp server directory (RFC1738, Section 3.2.2). To use an
	      absolute path, you have to prepend the path with	an  additional
	      slash,  what results in a "/%2f" combination (second "/" encoded
	      to "%2f") at the begin of the URL path. This is important, espe‐
	      cially  in  user authenticated ftp, where the users home is usu‐
	      ally the default directory of the server (except when the server
	      chroots into the users home directory).

	      Explicit	proxy  settings	 may be passed via optional parameters
	      proxy, proxyport, proxyuser and proxypass.

	      HTTP authentication methods to use can be defined as comma sepa‐
	      rated  list  via optional parameter auth. Valid methods are e.g.
	      'basic', 'digest', 'ntlm', 'negotiate'.  Note,  that  this  list
	      depends on the list of methods supported by the curl library.

	      ftp://user:pass@server/path/to/media/dir
	      ftp://user:pass@server/%2fhome/user/path/to/media/dir
	      http://user:pass@server/path
	      https://user:pass@server/path?proxy=foo&proxyuser=me&proxy‐
	      pass=pw

       Disk volume (partition)
	      Mandatory device parameter specifying  the  name	of  the	 block
	      device to mount. The name of the optional filesystem defaults to
	      "auto".

	      hd:/subdir?device=/dev/sda1&filesystem=reiserfs

       Local directory tree

	      dir:/directory/name

       Media in an ISO image (loopback mounted)
	      Mandatory iso parameter specifying the name  of  the  iso	 file.
	      Optional	url parameter specifying the URL to the directory con‐
	      taining the iso file. Optional mnt parameter specifying the pre‐
	      ferred  attach point for the source media url. Optional filesys‐
	      tem name of the filesystem used in the  iso  file.  Defaults  to
	      "auto".

	      iso:/?iso=CD1.iso&url=nfs://server/path/to/media
	      iso:/?iso=CD1.iso&url=hd:/?device=/dev/hda
	      iso:/subdir?iso=DVD1.iso&url=nfs://nfs-server/direc‐
	      tory&mnt=/nfs/attach/point&filesystem=udf

       NFS exported directory tree
	      To use NFSv4 either use schema tnfsv4://	or  pass  an  optional
	      parameter	 type=nfs4.  Additional	 mountoptions can be passed as
	      comma separated list. Defaults to "ro".

	      nfs://nfs-server/exported/path
	      nfs://nfs-server/exported/path?mountoptions=ro&type=nfs4
	      nfs4://nfs-server/exported/path?mountoptions=ro

       CIFS/SMB directory tree
	      There is no difference between cifs and smb scheme  (any	more).
	      In  both	cases the cifs filesystem is used. Additional mountop‐
	      tions can	 be  passed  as	 comma	separated  list.  Defaults  to
	      "ro,guest".  Specify "noguest" to turn off "guest". This is nec‐
	      essary if Samba is configured to reject guest connections.

	      Optional workgroup or domain parameter set the name of the work‐
	      group.  As  alternative  to passing username:password in the URI
	      authority the parameters user and pass can be used.

	      smb://servername/share/path/on/the/share
	      cifs://usenr:passw@servername/share/path/on/the/share?mountop‐
	      tions=ro,noguest
	      cifs://usern:passw@servername/share/path/on/the/share?work‐
	      group=mygroup
	      cifs://servername/share/path/on/the/share?user=usern&pass=passw

       Apart from the above, repositories have several other properties	 which
       can  be	set  using the commands described in this section below, or by
       manually editing the repository definition files (.repo files, see sec‐
       tion FILES).

       addrepo (ar) [options] <URI> <alias>

       addrepo (ar) [options] <FILE.repo>

	      Add a new repository specified by URI and assign specified alias
	      to it or specify URI to a .repo file.

	      Newly added repositories have auto-refresh disabled  by  default
	      (except for repositories imported from a .repo, having the auto-
	      refresh enabled). To  enable  auto-refresh,  use	the  --refresh
	      option of the modifyrepo command.

	      Also,  this  command  does  not  automatically refresh the newly
	      added repositories.  The repositories will  get  refreshed  when
	      used  for	 the  first  time,  or you can use the refresh command
	      after finishing your modifications  with	*repo  commands.   See
	      also METADATA REFRESH POLICY section for more details.

       -r, --repo <file.repo>
	      Read URI and alias from specified .repo file

       -t, --type <type>
	      Type  of repository (yast2, rpm-md, or plaindir). There are sev‐
	      eral aliases defined for these types: yast2  -  susetags,	 yast,
	      YaST,  YaST2, YAST; rpm-md - repomd, rpmmd, yum, YUM; plaindir -
	      Plaindir.

       -d, --disable
	      Add the  repository  as  disabled.  Repositories	are  added  as
	      enabled by default.

       -c, --check
	      Probe given URI.

       -C, --nocheck
	      Don't probe URI, probe later during refresh.

       -n, --name
	      Specify descriptive name for the repository.

       -k, --keep-packages
	      Enable RPM files caching for the repository.

       -K, --no-keep-packages
	      Disable RPM files caching.

       -f, --refresh
	      Enable  autorefresh  of  the repository. The autorefresh is dis‐
	      abled by default when adding new repositories.

       Examples:

	      Add an HTTP repository, probe it, name it 'Packman  11.1	repo',
	      and use 'packman' as alias:
	      $	 zypper	 ar  -c	 -n 'Packman 11.1 repo' http://packman.iu-bre‐
	      men.de/suse/11.1 packman

	      Add repositories from a repo file:
	      $	    zypper	ar	http://download.opensuse.org/reposito‐
	      ries/zypp:/svn/openSUSE_Factory/zypp:svn.repo
	      $ zypper ar myreposbackup.repo

       removerepo (rr) [options] <alias|name|#|URI> ...
	      Delete  repositories  specified  by  aliases,  names, numbers or
	      URIs.

       --loose-auth
	      Ignore user authentication data in the URI

       --loose-query
	      Ignore query string in the URI

       repos (lr) [options] [repo] ...
	      List all defined repositories or show detailed information about
	      those specified as arguments

	      The  following  data can be printed for each repository found on
	      the sytem: # (repository number), Alias  (shorthand  for	Name),
	      Name,  Enabled  (whether	the  repository	 is  enabled), Refresh
	      (whether auto-refresh is enabled for the repository),  Priority,
	      Type (repository meta-data type: rpm-md, yast2, plaindir). Which
	      of the data is shown  is	determined  by	command	 line  options
	      listed  below  and  the  main.repoListColumns  setting from zyp‐
	      per.conf.	 By default, #, Alias, Name, Enabled, and  Refresh  is
	      shown.

	      Repository  number  is  a unique identifier of the repository in
	      current set of repositories. If you  add,	 remove	 or  change  a
	      repository, the numbers may change. Keep that in mind when using
	      the numbers with the repository handling commands. On the	 other
	      hand, using the alias instead of the number is always safe.

	      To  show detailed information about specific repositories, spec‐
	      ify them as arguments, either by alias, name, number from simple
	      zypper lr, or by URI; e.g. fB zypper lr factory, or zypper lr 2.

       -e, --export <FILE.repo|->
	      This  option causes zypper to write repository definition of all
	      defined repositories into a single file in repo file format.  If
	      '-'  is  specified instead of a file name, the repositories will
	      be written to the standard output.

       -a, --alias
	      Add alias column to the output.

       -n, --name
	      Add name column to the output.

       -u, --uri
	      Add base URI column to the output.

       -p, --priority
	      Add repository priority column to the output.

       -r, --refresh
	      Add the autorefresh column to the output.

       -d, --details
	      Show more information like URI, priority, type, etc.

       -E, --show-enabled-only
	      Show enabled repositories only.

       -U, --sort-by-uri
	      Add base URI column and sort the list it.

       -P, --sort-by-priority
	      Add repository priority column and sort the list by it.

       -A, --sort-by-alias
	      Sort the list by alias.

       -N, --sort-by-name
	      Sort the list by name.

       Examples:

	      Backup your repository setup:
	      $ zypper repos -e myreposbackup.repo

	      List repositories with their URIs and priorities:
	      $ zypper lr -pu

       renamerepo (nr) <alias|name|#|URI> <new-alias>
	      Assign new alias to the repository  specified  by	 alias,	 name,
	      number, or URI.

       Example:

	      Rename  repository  number 8 to 'myrepo' (useful if the repo has
	      some dreadful alias which is not usable on the command line).
	      $ zypper nr 8 myrepo

       modifyrepo (mr) <options> <alias|name|#|URI> ...

       modifyrepo (mr) <options> <--all|--remote|--local|--medium-type>
	      Modify properties of repositories specified by alias, name, num‐
	      ber, or URI or one of the aggregate options.

       -e, --enable
	      Enable the repository.

       -d, --disable
	      Disable the repository.

       -r, --refresh
	      Enable auto-refresh for the repository.

       -R, --no-refresh
	      Disable auto-refresh for the repository.

       -p, --priority <positive-integer>
	      Set  priority  of	 the repository. Priority of 1 is the highest,
	      the higher the number the lower the priority.  Default  priority
	      is  99.  Packages from repositories with higher priority will be
	      preferred even in case there is  a  higher  installable  version
	      available in the repository with a lower priority.

       -n, --name
	      Set a descriptive name for the repository.

       -k, --keep-packages
	      Enable RPM files caching.

       -K, --no-keep-packages
	      Disable RPM files caching.

       -a, --all
	      Apply changes to all repositories.

       -l, --local
	      Apply changes to all local repositories.

       -t, --remote
	      Apply changes to all remote repositories (http/https/ftp).

       -m, --medium-type <type>
	      Apply changes to repositories of specified type. The type corre‐
	      sponds to the repository URI scheme identifier like  http,  dvd,
	      etc.   You   can	 find	complete   list	  of  valid  types  at
	      http://en.opensuse.org/openSUSE:Libzypp_URIs.

       Examples:

	      Enable keeping of packages for all remote repositories:
	      $ zypper mr -kt

	      Enable repository 'updates' and switch on	 autorefresh  for  the
	      repo:
	      $ zypper mr -er updates

	      Disable all repositories:
	      $ zypper mr -da

       refresh (ref) [alias|name|#|URI] ...
	      Refresh  repositories specified by their alias, name, number, or
	      URI. If no repositories are specified, all enabled  repositories
	      will be refreshed.

	      See also METADATA REFRESH POLICY section for more details.

       -f, --force
	      Force  a complete refresh of specified repositories. This option
	      will cause both the download of raw metadata and parsing of  the
	      metadata	to be forced even if everything indicates a refresh is
	      not needed.

       -b, --force-build
	      Force only reparsing of cached metadata and  rebuilding  of  the
	      database. Raw metadata download will not be forced.

       -d, --force-download
	      Force  only  download  of	 current  copy of repository metadata.
	      Parsing and rebuild of the database will not be forced.

       -B, --build-only
	      Only parse the metadata and build the database,  don't  download
	      raw metadata into the cache. This will enable you to repair dam‐
	      aged database from cached data without accessing network at all.

       -D, --download-only
	      Only download the raw metadata, don't  parse  it	or  build  the
	      database.

       -s, --services
	      Refresh also services before refreshing repositories.

       clean (cc) [options] [alias|name|#|URI] ...
	      Clean  the local caches for all known or specified repositories.
	      By default,
	       only caches of downloaded packages are cleaned.

       -m, --metadata
	      Clean repository metadata cache instead of package cache.

       -M, --raw-metadata
	      Clean repository raw metadata cache instead of package cache.

       -a, --all
	      Clean both repository metadata and package caches.

   Service Management
       The services, addservice, removeservice,	 modifyservice,	 and  refresh-
       services	 commands serve for manipulating services. A service is speci‐
       fied by its URI and needs to have a unique alias	 defined  (among  both
       services and repositories).

       Standalone repositories (not belonging to any service) are treated like
       services, too. The ls command will list them, ms	 command  will	modify
       them,  etc.  Repository	specific options, like --keep-packages are not
       available here, though. You can use  repository	handling  commands  to
       manipulate them.

       addservice (as) [options] <URI> <alias>
	      Adds a service specified by URI to the system. The alias must be
	      unique and serves to identify the service.

	      Newly added services are not refereshed automatically.  Use  the
	      refresh-services command to refresh them. Zypper does not access
	      the service URI when adding the service, so the type of the ser‐
	      vices is unknown until it is refreshed.

	      This  command also allows to add also ordinary repositories when
	      used with --type option, where  you  specify  the	 type  of  the
	      repository.  See	the  addrepo command for the list of supported
	      repository types.

       -t, --type <TYPE>
	      Type of the service (possible values: ris).  There  are  several
	      aliases defined for this type: ris - RIS, nu, NU

       -d, --disable
	      Add the service as disabled.

       -n, --name
	      Specify descriptive name for the service.

       removeservice (rs) [options] <alias|name|#|URI> ...

	      Remove specified repository index service from the sytem.

	      Removing	an  RIS	 service will result in removing of all of its
	      repositories.

       --loose-auth
	      Ignore user authentication data in the URI.

       --loose-query
	      Ignore query string in the URI.

       modifyservice (ms) <options> <alias|name|#|URI>
	      modifyservice (ms)  <options>  <--all|--remote|--local|--medium-
	      type> Modify properties of specified services.

       Common Options
	      These  options are common to all types of services and reposito‐
	      ries.

       -d, --disable
	      Disable the service (but don't remove it).

       -e, --enable
	      Enable a disabled service.

       -r, --refresh
	      Enable auto-refresh of the service.

       -R, --no-refresh
	      Disable auto-refresh of the service.

       -n, --name
	      Set a descriptive name for the service.

       -a, --all
	      Apply changes to all services.

       -l, --local
	      Apply changes to all local services.

       -t, --remote
	      Apply changes to all remote services.

       -m, --medium-type <type>
	      Apply changes to services of specified type.

       RIS Service Specific Options
	      These options are ignored	 by  services  other  than  Repository
	      Index Services.

       -i, --ar-to-enable <alias>
	      Schedule an RIS service repository to be enabled at next service
	      refresh.

       -I, --ar-to-disable <alias>
	      Schedule an RIS service repository to be disabled at  next  ser‐
	      vice refresh.

       -j, --rr-to-enable <alias>
	      Remove a RIS service repository to enable.

       -J, --rr-to-disable <alias>
	      Remove a RIS service repository to disable.

       -k, --cl-to-enable
	      Clear the list of RIS repositories to enable.

       -K, --cl-to-disable
	      Clear the list of RIS repositories to disable.

       services (ls) [options]
	      List services defined on the system.

       -u, --uri
	      Show also base URI of repositories.

       -p, --priority
	      Show also repository priority.

       -d, --details
	      Show more information like URI, priority, type.

       -r, --with-repos
	      Show also repositories belonging to the services.

       -P, --sort-by-priority
	      Sort the list by repository priority.

       -E, --show-enabled-only
	      Show enabled services only. If used together with --with-repos a
	      disabled service owning (manually) enabled repositories is shown
	      as well.

       -U, --sort-by-uri
	      Sort the list by URI.

       -N, --sort-by-name
	      Sort the list by name.

       refresh-services (refs) [options] <alias|name|#|URI> ...
	      Refreshing a service mean executing the service's special task.

	      RIS  services add, remove, or modify repositories on your system
	      based on current content of the repository index. Services  only
	      manage  defined  repositories,  they  do	not  refresh  them. To
	      refresh  also  repositories,  use	 --with-repos  option  or  the
	      refresh command.

       -r, --with-repos
	      Refresh also repositories.

	      TODO more info

   Package Locks Management
       Package	locks  serve  the  purpose of preventing changes to the set of
       installed packages on the system. The locks are stored  in  form	 of  a
       query  in  /etc/zypp/locks file (see also locks(5)).  Packages matching
       this query are then forbidden to	 change	 their	installed  status;  an
       installed  package  can't  be  removed,	not installed package can't be
       installed.  When requesting to install or remove such  locked  package,
       you will get a dependency problem dialog.

       locks (ll)
	      List currently active package locks.

       addlock (al) [options] <package-name> ...
	      Add a package lock. Specify packages to lock by exact name or by
	      a glob pattern using '*' and '?'	wildcard characters.

       -r, --repo <alias|name|#|URI>
	      Restrict the lock to the specified repository.

       -t, --type <type>
	      Lock only packages of specified type  (default:  package).   See
	      section Package Types for list of available package types.

       removelock (rl) [options] <lock-number|package-name> ...
	      Remove specified package lock. Specify the lock to remove by its
	      number obtained with zypper locks or by the package name.

       -r, --repo <alias|name|#|URI>
	      Restrict the lock to the specified repository.

       -t, --type <type>
	      Restrict the lock to packages of specified type (default:	 pack‐
	      age).   See  section Package Types for list of available package
	      types.

       cleanlocks (cl)
	      Remove unused locks.

	      This command looks for locks that do not currently (with	regard
	      to repositories used) lock any package and for each such lock it
	      asks user whether to remove it.

   Other Commands
       versioncmp (vcmp) <version1> <version2>
	      Compare the versions supplied as arguments and tell whether ver‐
	      sion1 is older or newer than version2 or the two version strings
	      match.

	      The default output is in human-friendly form. If --terse	global
	      option  is used, the result is an integer number, negative/posi‐
	      tive if version1 is older/newer  than  version2,	zero  if  they
	      match.

       -m, --match
	      Takes missing release number as any release. For example
	      $ zypper vcmp -m 0.15.3 0.15.3-2
	      0.15.3 matches 0.15.3-2
	      $ zypper vcmp 0.15.3 0.15.3-2
	      0.15.3 is older than 0.15.3-2

       targetos (tos)
	      Shows  the  ID string of the target operating system. The string
	      has a form of  distroname-arch.  The  string  is	determined  by
	      libzypp, the distroname is read from <current-rootdir>/etc/prod‐
	      ucts.d/baseproduct and the architecture is determined from uname
	      and CPU flags.

       licenses
	      Prints  a	 report about licenses and EULAs of installed packages
	      to standard output.

	      First, a list of all packages and their licenses and/or EULAs is
	      shown.   This is followed by a summary, including the total num‐
	      ber of installed packages, the number of installed packages with
	      EULAs  that  required  a	confirmation  from the user. Since the
	      EULAs are not stored on the system and can  only	be  read  from
	      repository  metadata,  the  summary  includes also the number of
	      installed packages that have their counterpart in	 repositories.
	      The  report  ends	 with  a  list	of  all	 licenses  uses by the
	      installed packages.

	      This command can be useful for companies redistributiong a  cus‐
	      tom  distribution	 (like appliances) to figure out what licenses
	      they are bound by.

       source-download
	      Download source rpms for	all  installed	packages  to  a	 local
	      directory.

       -d, --directory <dir>
	      Download	 all   source  rpms  to	 this  directory.  Default  is
	      /var/cache/zypper/source-download.

       --delete
	      Delete extraneous source rpms in the local  directory.  This  is
	      the default.

       --no-delete
	      Do not delete extraneous source rpms.

       --status
	      Don't  download  any source rpms, but show which source rpms are
	      missing or extraneous.

       ps     After each upgrade or removal of packages, there may be  running
	      processes	 on  the system which then use files meanwhile deleted
	      by the upgrade.  zypper ps lists these processes, together  with
	      the  corresponding  deleted  files,  and a service name hint, in
	      case it's a known service.   The	list  contains	the  following
	      information:

	      * PID	 ID of the process
	      * PPID	 ID of the parent process
	      * UID	 ID of the user running the process
	      * Login	 login name of the user running the process
	      * Command	 command used to execute the process
	      * Service	 guessed name of the service. If an init script exists
	      for this
			 service,  you	can  do	 "rcservicename	 restart"   to
	      restart it.
	      * Files	 the list of the deleted files

GLOBAL OPTIONS
       -h, --help
	      Help.  If	 a  command  is specified together with --help option,
	      command specific help is displayed.

       -V, --version
	      Print zypper version number and exit.

       -c, --config <file>
	      Use specified config file instead of the default	files.	 Other
	      command line options specified together with --config and having
	      their counterpart in the config file are	still  prefered.   The
	      order of preference with --config is as follows:

	      * Command line options
	      * --config <file>
	      * /etc/zypp/zypp.conf

	      See also FILES section for more information.

       -v, --verbose
	      Increase	verbosity.  For	 debugging  output specify this option
	      twice.

       -q, --quiet
	      Suppress normal output. Brief (esp.  result  notification)  mes‐
	      sages  and error messages will still be printed, though. If used
	      together with conflicting --verbose option, the --verbose option
	      takes preference.

       -A, --no-abbrev
	      Do  not abbreviate text in tables. By default zypper will try to
	      abbreviate texts in some columns so  that	 the  table  fits  the
	      width of the screen. If you need to see the whole text, use this
	      option.

       -t, --terse
	      Terse output for machine consumption.  Currently	not  used  and
	      provided only for compatibility with rug.

       -s, --table-style
	      Specifies	 table	style  to use. Table style is identified by an
	      integer number. TODO

       -r, --rug-compatible
	      Turns on rug compatibility. See section COMPATIBILITY  WITH  RUG
	      for details.

       -n, --non-interactive
	      Switches	to  non-interactive  mode. In this mode zypper doesn't
	      ask user to type answers to various prompts,  but	 uses  default
	      answers  automatically. The behaviour of this option is somewhat
	      different than that of options like '--yes',  since  zypper  can
	      answer  different	 answers  to  different questions. The answers
	      also depend on other options like '--no-gpg-checks'.

       -x, --xmlout
	      Switches to XML output. This option is  useful  for  scripts  or
	      graphical frontends using zypper.

       -D, --reposd-dir <dir>
	      Use  the	specified directory to look for the repository defini‐
	      tion (*.repo) files.  The default value is /etc/zypp/repos.d.

       -C, --cache-dir <dir>
	      Use an alternative root directory for all caches.	  The  default
	      value is /var/cache/zypp.

	   --raw-cache-dir <dir>
	      Use the specified directory for storing raw copies of repository
	      metadata files.  The default value is /var/cache/zypp/raw.

	   --solv-cache-dir <dir>
	      Use the specified directory to  store  the  repository  metadata
	      cache  database  files  (solv  files).   The  default  value  is
	      /var/cache/zypp/solv.

	   --pkg-cache-dir <dir>
	      Use the specified directory for storing downloaded rpm packages.
	      (see    addrepo	 --keep-packages)   The	  default   value   is
	      /var/cache/zypp/packages.

	   --userdata <string>
	      User data is expected to be  a  simple  string  without  special
	      chars  or	 embedded newlines and may serve as transaction id. It
	      will be written to  all  install	history	 log  entries  created
	      throughout  this specific zypper call. It will also be passed on
	      to zypp plugins executed during commit. This will enable e.g.  a
	      btrfs plugin to tag created snapshots with this string. For zyp‐
	      per itself this string has no special meaning.

       Repository Options:

	   --no-gpg-checks
	      Ignore GPG check failures and continue. If a  GPG	 issue	occurs
	      when  using  this	 option	 zypper	 prints and logs a warning and
	      automatically continues without interrupting the operation.  Use
	      this  option  with  caution, as you can easily overlook security
	      problems by using it.

	   --gpg-auto-import-keys
	      If new repository signing key is found, do not ask what  to  do;
	      trust  and  import it automatically. This option causes that the
	      new key is imported also in non-interactive mode, where it would
	      otherwise got rejected.

       -p, --plus-repo <URI>
	      Use  an additional repository for this operation. The repository
	      aliased tmp# and named by the specified URI will	be  added  for
	      this  operation  and  removed  at	 the end. You can specify this
	      option multiple times.

	   --disable-repositories
	      Do not read metadata from repositories. This option will prevent
	      loading  of  packages from repositories, thus making zypper work
	      only with the installed  packages	 (if  --disable-system-resolv‐
	      ables was not specified).

	   --no-refresh
	      Do  not  auto-refresh repositories (ignore the auto-refresh set‐
	      ting). Useful to save time when doing operations like search, if
	      there is not a need to have a completely up to date metadata.

	   --no-cd
	      Ignore  CD/DVD repositories. When this option is specified, zyp‐
	      per acts as if the CD/DVD repositories were not defined at all.

	   --no-remote
	      Ignore remote repositories like http, ftp, smb and similar. This
	      makes  using  zypper easier when being offline. When this option
	      is specified, zypper acts as if the remote repositories were not
	      defined at all.

       Target Options:

       -R, --root <dir>
	      Operates	on  a different root directory. This option influences
	      the location of the repos.d directory  and  the  metadata	 cache
	      directory	 and  also causes rpm to be run with the --root option
	      to do the actual installation or removal of packages. Note  that
	      the  ZYpp	 lock is still created in the original system, as well
	      as temporary files. See also the FILES section.

	   --disable-system-resolvables
	      This option serves mainly for testing purposes.  It  will	 cause
	      zypper to act as if there were no packages installed in the sys‐
	      tem. Use with caution as you can damage your system  using  this
	      option.

FILES
       /etc/zypp/zypper.conf, $HOME/.zypper.conf
	      Global  (system-wide)  and user's configuration file for zypper.
	      These files are read when zypper starts up and  --config	option
	      is not used.

	      User's  settings	are prefered over global settings.  Similarly,
	      command line options override the settings in  either  of	 these
	      files. Settings from zypp.conf (see below) having their counter‐
	      parts in zypper.conf are overriden by zypper's values. To sum it
	      up,  the order of preference is as follows (from highest to low‐
	      est):

	      * Command line options
	      * $HOME/.zypper.conf
	      * /etc/zypp/zypper.conf
	      * /etc/zypp/zypp.conf

	      See  the	comments  in  /etc/zypp/zypper.conf  for  a  list  and
	      description of available options.

       /etc/zypp/zypp.conf
	      ZYpp  configuration  file affecting all ZYpp-based applications.
	      See the comments in the  file  for  desciption  of  configurable
	      properties.   Many  of locations of files and directories listed
	      in this section are also configurable via zypp.conf.

	      Options having their counterpart in zypper.conf are overriden by
	      zypper's setting.

       /etc/zypp/locks
	      File with package lock definitions, see locks(5) manual page for
	      details.	The package lock commands (addlock, removelock,	 etc.)
	      can be used to manipulate this file.

	      This file is used by all ZYpp-based applications.

       /etc/zypp/repos.d
	      Directory	 containing repository definition (*.repo) files.  You
	      can use the Repository Management commands to  manipulate	 these
	      files,  or  you  can  edit  them yourself. In either case, after
	      doing the modifications, executing zypper	 refresh  is  strongly
	      recommended.

	      This directory is used by all ZYpp-based applications.

	      You can use the --reposd-dir global option to use an alternative
	      directory for this purpose or the --root	option	to  make  this
	      directory relative to the specified root directory.

       /etc/zypp/services.d
	      Directory	 containing service definition (*.service) files.  You
	      can use the Service Management  Commands	to  manipulate	theese
	      files, or you can edit them youself. Running zypper refs is rec‐
	      ommended after modifications have been done.

	      This directory is used by all ZYpp-based applications.

       /var/cache/zypp/raw
	      Directory for storing raw metadata  contained  in	 repositories.
	      This  directory is used by all ZYpp-based applications.  Use the
	      --raw-cache-dir global option to use  an	alternative  directory
	      for  this	 purpose  or  the --root option to make this directory
	      relative to the specified root directory.

       /var/cache/zypp/solv
	      Directory containing preparsed metadata in form of  solv	files.
	      This directory is used by all ZYpp-based applications.

       /var/cache/zypp/packages
	      If  keeppackages property is set for a repository (see the modi‐
	      fyrepo command), all the RPM file downloaded during installation
	      will be kept here. See also the clean command for cleaning these
	      cache directories.

	      This directory is used by all ZYpp-based applications.

       /var/log/zypp/history
	      Installation history log.

       ~/.zypper_history
	      Command history for the shell.

EXIT CODES
       There are several exit codes defined for zypper	for  use  e.g.	within
       scripts. These codes are defined in header file src/zypper-main.h found
       in zypper source package. Codes from interval (1-5)  denote  an	error,
       numbers (100-105) provide a specific information, 0 represents a normal
       successful run. Following is a list of these codes with descriptions.

       0 - ZYPPER_EXIT_OK
	      Successfull run of zypper with no special info.

       1 - ZYPPER_EXIT_ERR_BUG
	      Unexpected situation occured, probably caused by a bug.

       2 - ZYPPER_EXIT_ERR_SYNTAX
	      zypper was invoked with an invalid command or option, or	a  bad
	      syntax.

       3 - ZYPPER_EXIT_ERR_INVALID_ARGS
	      Some of provided arguments were invalid. E.g. an invalid URI was
	      provided to the addrepo command.

       4 - ZYPPER_EXIT_ERR_ZYPP
	      A problem reported by ZYPP library.  E.g.	 another  instance  of
	      ZYPP is running.

       5 - ZYPPER_EXIT_ERR_PRIVILEGES
	      User  invoking  zypper has insufficient privileges for specified
	      operation.

       100 - ZYPPER_EXIT_INF_UPDATE_NEEDED
	      Returned by the patch-check command if there are patches	avail‐
	      able for installation.

       101 - ZYPPER_EXIT_INF_SEC_UPDATE_NEEDED
	      Returned	by  the	 patch-check  command  if  there  are security
	      patches available for installation.

       102 - ZYPPER_EXIT_INF_REBOOT_NEEDED
	      Returned after a	successfull  installation  of  a  patch	 which
	      requires reboot of computer.

       103 - ZYPPER_EXIT_INF_RESTART_NEEDED
	      Returned	after  a  successfull  installation  of	 a patch which
	      requires restart of the package manager itself. This means  that
	      one  of  patches	to  be	installed  affects the package manager
	      itself and the command used (e.g. zypper	update)	 needs	to  be
	      executed once again to install any remaining patches.

       104 - ZYPPER_EXIT_INF_CAP_NOT_FOUND
	      Returned	by  the	 install and the remove command in case any of
	      the arguments does not match any of the available (or installed)
	      package names or other capabilities.

       105 - ZYPPER_EXIT_ON_SIGNAL
	      Returned upon exiting after receiving a SIGINT or SIGTERM.

COMPATIBILITY WITH RUG
       zypper  is  designed to be compatible with rug, which is a command-line
       interface to the ZENworks Linux Management  (ZLM)  agent.  Compared  to
       rug,  zypper  does  not	need the ZLM daemon to run, and is intented to
       provide more and improved functionality. Following is a list of zypper-
       rug  command  aliases, supported rug command line options, and compati‐
       bility notes. See also compatibility notes in  descriptions  of	zypper
       commands.

       To  enable  rug-compatible  behavior,  use  the	-r or --rug-compatible
       global option with each command.

   Service Management Commands
       ZENworks uses different terminology than ZYpp. ZLM services are	ZYpp's
       repositories  and  services. Additionally some ZLM services can contain
       catalogs (rpmmd-type repositories in ZYpp speak).

       Zypper tries to mimick rug's behavior in its service handling  commands
       when  used  with	 the  -r global option. It also supports the --catalog
       option for specifying catalogs to work with in current operation	 (this
       is an alias for zypper's --repo option).

       rug service-add (sa)
	      zypper  addservice  (as)	When  used with -r global option, this
	      command probes the type of service or repository at  the	speci‐
	      fied URI, if not explicitly specified. Without -r option the URI
	      is not accessed at all and the URI is added as ZYpp service.

       rug service-delete (sd)
	      zypper removeservice (rs)

       rug service-list (sl)
	      zypper services (ls)

       rug catalogs (ca)
	      zypper repos (lr)

	       zypper doesn't include  'Enabled'  and  'Refresh'  columns  and
	      prints  rug's 'Status' column with values "Active" or "Disabled"
	      instead.

       rug subscribe
	      This command is  not  implemented	 in  zypper.  Enabling	zypper
	      repositories is closest to rug's subscription of catalogs. Thus,
	      you can use zypper mr -e <alias|name|#|URI> to enable  reposito‐
	      ries added by the service.  Use zypper lr (or zypper ca) to list
	      available repositories.

       rug unsubscribe
	      See subscribe above, with the difference that -d	will  be  used
	      instead of -e in the zypper mr command.

   Package Management Commands
       rug install (in)
	      zypper install (in)

	      -y, --no-confirm
		     Don't  require  user  interaction.	 This option is imple‐
		     mented using zypper's non-interactive mode.

	      --agree-to-third-party-licenses
		     This   option   is	  an   alias   to   zypper's   --auto-
		     agree-with-licenses option.

	      -R, --force-resolution <on|off>
		     This  option  is not available in rug and zypper uses the
		     'force-resolution' solver mode by default when running in
		     rug-compatible  mode. However, it is possible to turn the
		     forcing of resolution off using this option even in  rug-
		     compatible mode.

	      --entire-catalog <catalog>
		     This  option  serves for marking all packages from speci‐
		     fied catalog for installation. This is achieved by	 simu‐
		     lating 'zypper in --from <repo> '*''.

       rug remove (rm)
	      zypper remove (rm)

	      -y, --no-confirm
		     Don't  require  user  interaction.	 This option is imple‐
		     mented using zypper's non-interactive mode.

	      -R, --force-resolution <on|off>
		     This option is not available in rug and zypper  uses  the
		     'force-resolution' solver mode by default when running in
		     rug-compatible mode. However, it is possible to turn  the
		     forcing  of resolution off using this option even in rug-
		     compatible mode.

       rug verify (ve)
	      zypper verify (ve)

	      -y, --no-confirm
		     Don't require user interaction.  This  option  is	imple‐
		     mented using zypper's non-interactive mode.

       rug update (up) [catalog] ...
	      zypper update (up) [package] ...

	      Zypper  interprets  the  update  command arguments as repository
	      identifiers in rug-compatibilty mode. The	 update	 operation  is
	      restricted to the specified repositories.

	      -y, --no-confirm
		     Don't  require  user  interaction.	 This option is imple‐
		     mented using zypper's non-interactive mode.

	      --agree-to-third-party-licenses
		     This   option   is	  an   alias   to   zypper's   --auto-
		     agree-with-licenses option.

	      -R, --force-resolution <on|off>
		     This  option  is not available in rug and zypper uses the
		     'force-resolution' solver mode by default when running in
		     rug-compatible  mode. However, it is possible to turn the
		     forcing of resolution off using this option even in  rug-
		     compatible mode.

	      -d, --downloade-only
		     This option has currently no effect.

	      --category
		     This option has currently no effect.

       rug search (se)
	      zypper search (se)

	      Instead of the Type column, rug's Bundle column is printed, how‐
	      ever, with no contents.

	      -t, --type
		     In rug compatibility mode the --type option  defaults  to
		     package. Zypper searches all package types by default.

		  --sort-by-catalog
		     Sort  packages by catalog, not by name. This option is an
		     alias to zypper's --sort-by-repo option.

   Patch Management Commands
       rug patch-info
	      zypper info -t patch

   Pattern Management Commands
       rug pattern-info
	      zypper info -t pattern

   Product Management Commands
       rug product-info
	      zypper info -t product

   System Commands
       rug ping
	      zypper ping

	      This command just returns 0  without  producing  any  output  or
	      doing anything to the system. Rug's ping command is used to wake
	      up the ZLM daemon or to check whether  it	 is  up	 and  running.
	      Since  zypper does no require ZLM or any other daemon to run, it
	      is safe to always return 0 here to  indicate  it	is  ready  for
	      operation.

   Other Compatibility Notes
       -c, --catalog <catalog>
	      This  option  is an alias to zypper's --repo <alias> and it will
	      restrict the operation of commands like search, install, etc  to
	      the repository specified by the alias.

       -N, --dry-run
	      Zypper uses -D shorthand for this option, but -N is provided for
	      the sake of  compatibility.  Zypper  (libzypp)  implements  this
	      option  by  passing the --test option to rpm. The option is used
	      in install, remove, update, dist-upgrade (not available in rug),
	      and verify commands.

HOMEPAGE
       http://en.opensuse.org/Portal:Zypper

AUTHORS
       Martin Vidner <mvidner@suse.cz>
       Duncan Mac-Vicar <dmacvicar@suse.de>
       Jan Kupec <jkupec@suse.cz>
       Stanislav Visnovsky <visnov@suse.cz>
       Josef Reidinger <jreidinger@suse.cz>

SEE ALSO
       rug(1), YaST2(8), locks(5), zypper-log(8)

zypper				     1.5.1			     zypper(8)
[top]

List of man pages available for SuSE

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net