Man zypper

Aus Linupedia.org
Version vom 25. November 2013, 15:12 Uhr von Zerum (Diskussion | Beiträge) (Update auf zypper-1.9.3)
Wechseln zu: Navigation, Suche
Icon falscher Titel.png Der korrekte Name dieser Seite lautet „man zypper“. Diese Schreibweise ist aufgrund technischer Einschränkungen nicht möglich.
Dies ist eine reine Textkopie der Manpage von zypper um sie online anzuschauen. Anwendbar für zypper 1.9.3
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 repositories, perform various queries, and more.


CONCEPTS
       Most of the following concepts are common for all applications based on the libzypp package  man-
       agement 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. Repositories
       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 com-
       mands  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 com-
       plete 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  repository  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  auto-
       matically treats them as dir:/path URIs.


   Refresh
       Refreshing a repository means downloading metadata of packages from the medium (if needed), stor-
       ing 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 internet access or root privileges.


   Services
       Services are one level above repositories and serve to manage repositories 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  parame-
       ters or user name, or can be static. Once such service is added to your system, zypper takes care
       of adding, modifying, or removing these repositories on your system to reflect the current  list.
       See  section Service Management and http://old-en.opensuse.org/Standards/Repository_Index_Service
       for more details.


   Package Types
       zypper works with several types of resource objects, called resolvables.  A resolvable is a pack-
       age, 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  usually  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/Dependencies 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 com-
       mands 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  (open-
              SUSE 11.0), but still, you're welcome to experiment with it.



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

              For  each  specified package, zypper finds the best available version in defined reposito-
              ries and shows information for this package.


       -r, --repo <alias|name|#|URI>
              Work only with the repository specified by the alias, name, number 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 pack-
              age 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 architecture and complain if
              such package cannot be found.

              Zypper will report packages that it cannot find. Further, in interactive mode, zypper pro-
              ceeds with installation of the rest of requested packages, and it will  abort  immediately
              in  non-interactive mode. In both cases zypper returns ZYPPER_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 repositories. You can install a plain RPM file by specifying
              its location 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, number or URI. This option can
              be used multiple times.

       -t, --type <type>
              Type  of  package  to  install  (default:  package). See section Package 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 packages and patterns it requires are installed. Thus a pattern can be  evalueated  as
              installed  even  if  you  do  not  install  the pattern itself, but rather the packages it
              requries. Use zypper search -t pattern [name] to look for available  patterns  and  zypper
              info -t pattern <name> to list its contents.

              If  patch  is  specified,  zypper will install and/or remove packages 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 available 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 capabilities.

       -f, --force
              Install even if the item is already installed (reinstall), downgraded 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  reinstall,  if  the item is already installed with the
              requested version.

           --from <alias|name|#|URI>
              Select packages from specified repository.  If  strings  specified  as  arguments  to  the
              install  command  match  packages  in  repositories specified in this option, they will be
              marked for installation. 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-interac-
              tive 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 combines 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 following):
              $ 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 packages 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, number, or  URI.  This  option
              can be used multiple times.

           --download-only
              Only download the packages, do not install.

       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 pack-
              ages 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, number, 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 hardware.


       -r, --repo <alias|name|#|URI>
              Work  only  with  the repository specified by the alias, name, number, 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, number, 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  pack-
              age 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 sta-
              tus  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-interac-
              tive mode. If this option is specified, it takes the preference.

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

       -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 package vendor. This list is what the update command will
              propose  to install. To list all packages for which newer version are available, use --all
              option.


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

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

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

       -a, --all
              List all packages for which newer versions  are  available,  regardles  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 sepa-
              rate section of the summary as "The following 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  pack-
              age 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, number, 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 version than the installed one and leaves the rest on the dependency  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 separately 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, number, 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 com-
              mand 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 specific category.

       -r, --repo <alias|name|#|URI>
              Work  only  with  the repository specified by the alias, name, number, 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
              repositories,  removes  packages  that are no longer in the repositories and pose a depen-
              dency 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
              repositories, like repositories for two different distribution releases. This  often  hap-
              pens  if  one  forgets  to  remove an older release repository after adding a new one, say
              openSUSE 11.1 and openSUSE 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 satisfy 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, number, 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|capability] ...
              Search for packages matching any of the given strings. * (any substring) and ?  (any char-
              acter) wildcards can also be used within search strings.  If the search string is enclosed
              in '/', for example $ zypper se '/^k.*e$/', it's  interpreted  as  a  regular  expression.
              It's  also possible to specify a capability like "NAME[.ARCH][OP<EDITION>]", where ARCH is
              an architecture code, OP is <, <=, =, >=, or > and  EDITION  is  VERSION[-RELEASE].   Also
              quote  here  to  protect  the  special characters from the shell, for example: $ zypper se
              'libgcc>4.6'.

              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 values: i - installed, v - another version installed, or an empty space for nei-
              ther 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-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.

           --provides
              Search  for  packages which provide the search strings. A search string here might be also
              any symbol provided  by  a  package  like  /bin/vi,  libcurl.so.3,  perl(Time::ParseDate),
              web_browser,  e.g.  search  for the package which provides the shell: zypper se --provides
              /bin/sh

           --requires
              Search for packages which require the search strings. A search string here might  be  also
              any  symbol  required  by  a package, e.g. all packages which require the snapper library:
              zypper se --requires libsnapper.so

           --recommends
              Search for packages which recommend the  search  strings,  e.g.   zypper  se  --recommends
              usb_modeswitch

           --suggests
              Search for packages which suggest the search strings, e.g.  zypper se --suggests acroread

           --conflicts
              Search  for  packages  conflicting  with  the  search strings, e.g.  zypper se --conflicts
              aspell-hi

           --obsoletes
              Search for packages wich obsolete the search strings, e.g.  zypper se --obsoletes efence

       -n, --name
              Useful together with dependency options, otherwise searching in package name is default.

       -f, --file-list
              Search in file list of packages.

       -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  avail-
              able package types. Multiple -t option are allowed.

              See also the type-specific query commands like packages, patterns, etc.

       -r, --repo <alias|name|#|URI>
              Work  only  with  the repository specified by the alias, name, number, 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  sepa-
              rate line.

       -v, --verbose
              Like  --details  with  additional  information  where  the search has matched (useful when
              searching for dependencies, e.g. --provides).

       Examples:

              Search for YaST packages (quote the string to prevent the shell from expanding  the  wild-
              card):
              $ 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).  Also allows the options --orphaned, --suggested, --recommended and
              --unneeded to get corresponding lists of packages.

       -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.

       -o, --orphaned
              Show packages which are orphaned (without repository).

       -s, --suggested
              Show packages which are suggested.

       -r, --recommended
              Show packages which are recommeded.

       -n, --unneeded
              Show packages which are unneeded.


       patches (pch) [options] [repository] ...
              List  all available patches from specified repositories, including those not needed. Simi-
              lar 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  zyp-
              per 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 zyp-
              per 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.
              what-provides is replaced by the search command, which now has the functionality to search
              for dependencies (and allows various options).
              The command line is automatically transformed to the appropriate search, e.g.:
              $ zypper what-provides 'zypper>1.6' to $ zypper se --provides --match-exact 'zypper>1.6'


   Repository Management
       Zypper is able to work with YaST, RPM-MD (yum) software repositories, and plain directories  con-
       taining .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  direc-
              tory  (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, especially in user authenticated ftp, where
              the users home is usually 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  separated  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&proxypass=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 speci-
              fying the URL to the directory containing the iso file. Optional mnt parameter  specifying
              the  preferred  attach  point  for  the  source media url. Optional filesystem 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/directory&mnt=/nfs/attach/point&filesys-
              tem=udf

       NFS exported directory tree
              To  use  NFSv4  either use schema tnfsv4:// or pass an optional parameter type=nfs4. Addi-
              tional 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  mountoptions  can  be  passed  as comma separated list.
              Defaults to "ro,guest". Specify "noguest" to turn off "guest". This is necessary if  Samba
              is configured to reject guest connections.

              Optional  workgroup  or  domain parameter set the name of the workgroup. 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?mountoptions=ro,noguest
              cifs://usern:passw@servername/share/path/on/the/share?workgroup=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  com-
       mands  described  in  this  section below, or by manually editing the repository definition files
       (.repo files, see section 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  several  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 disabled 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-bremen.de/suse/11.1 packman

              Add repositories from a repo file:
              $      zypper     ar     http://download.opensuse.org/repositories/zypp:/svn/openSUSE_Fac-
              tory/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  argu-
              ments

              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 com-
              mand  line options listed below and the main.repoListColumns setting from zypper.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, specify 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 repos-
              itories 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, number, 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  prior-
              ity  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 corresponds  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 down-
              load 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 down-
              load 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 damaged 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 specified 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 services 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 sup-
              ported 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 repositories.

       -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 service 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 zyp-
              per 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: package).  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 version1 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/positive 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-root-
              dir>/etc/products.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 number 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  custom  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 dis-
              played.

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

       -c, --config <file>
              Use specified zypper 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 ] (system-wide defaults for all libzypp based applications)

              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) messages and error messages will
              still be printed, though. If used together with conflicting --verbose option,  the  --ver-
              bose 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 compatibil-
              ity 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.

       -i, --ignore-unknown
              Ignore unknown packages. This option is useful for scripts.

       -D, --reposd-dir <dir>
              Use  the  specified  directory  to look for the repository definition (*.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-pack-
              ages) 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 zypper 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 zyp-
              per prints and logs a warning and automatically continues without interrupting the  opera-
              tion.  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  auto-
              matically.  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-sys-
              tem-resolvables was not specified).

           --no-refresh
              Do not auto-refresh repositories (ignore the auto-refresh setting). 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, zypper 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  reposito-
              ries 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  sec-
              tion.

           --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 system. 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  over-
              ride  the  settings  in either of these files. To sum it up, the order of preference is as
              follows (from highest to lowest):

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

              [ /etc/zypp/zypp.conf ] (system-wide defaults for all libzypp based applications)

              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 libzypp based applications.  See the comments in the
              file  for  desciption of configurable properties.  Many locations of files and directories
              listed in this section are configurable via zypp.conf. The location for this  file  itself
              can be redefined only by setting $ZYPP_CONF in the environment.


       /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  pur-
              pose 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 Man-
              agement Commands to manipulate theese files, or you can edit them youself. Running  zypper
              refs is recommended 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 modifyrepo 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 is reported by ZYPP library.

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

       6 - ZYPPER_EXIT_NO_REPOS
              No repositories are defined.

       7 - ZYPPER_EXIT_ZYPP_LOCKED
              The ZYPP library is locked, e.g. packagekit is running.

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

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

       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 compatibility 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  com-
       mand.


   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 cur-
       rent 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 specified 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  repositories 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 implemented 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 specified  catalog  for  installa-
                     tion. This is achieved by simulating 'zypper in --from <repo> '*''.


       rug remove (rm)
              zypper remove (rm)

              -y, --no-confirm
                     Don't  require  user  interaction.  This  option is implemented 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  implemented  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-compati-
              bilty mode. The update operation is restricted to the specified repositories.

              -y, --no-confirm
                     Don't require user interaction. This option  is  implemented  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, however, 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 run-
              ning.  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 compatibil-
              ity. 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)


Zurück zu Konsole
Zurück zur Paketmanager-Übersicht