Материал из Rosalab Wiki
Версия от 09:36, 20 декабря 2011; D uragan (обсуждение | вклад) (Список инструментов: + more plans)

Это снимок страницы. Он включает старые, но не удалённые версии шаблонов и изображений.
Перейти к: навигация, поиск

Urpm-tools - набор утилит, расширяющих и дополняющих функциональность urpmi, urpmqm urpmf и urpme.

Список инструментов

В первую версию пакета вошли следующие инструменты:

Tool Description
urpm-repoclosure проверка замкнутости репозитория по зависимостям
urpm-repodiff diff двух репозиториев
urpm-downloader скачивание пакета вместе со всеми зависимостями
urpm-package-cleanup чистка установленных пакетов

В дальнейшем планируется добавление еще нескольких полезных утилит:

Tool Description
urpm-build-distrib создание дистрибутива на основе нескольких репозиториев
urpm-builddep установка пакетов, необходимых для сборки того или иного SRPM
urpm-debuginfo-install установка пакетов debuginfo, необходимых для отладки программ из заданного пакета
urpm-distrosync синхронизация локального набора пакетов с репозиторием
urpm-repograph построение графа зависимостей пакетов в репозитории
urpm-repomanage анализ набора RPM-файлов и выделение самых новых и устаревших версий каждого пакета


A tool to check dependency closure in the repository.


  urpm-repoclosure.pl [-h] [-list=PACKAGES_LIST] [--dir=PACKAGES_DIR] [--hdlist=HDLIST]
                      [--static] [--check-release] [--check-signature] [--media MEDIA]
                      [--noclean] [--root ROOT]


    urpm-repoclosure.pl --hdlist=hdlist.txt --static
    urpm-repoclosure.pl --list=list.txt --media=local
    urpm-repoclosure.pl --dir=rpms/ --static
    urpm-repoclosure.pl --dir=rpms/ --check-release --sign
    urpm-repoclosure.pl --list=list.txt --check-release


      Print help message.

      Print version information.

  -l|-list <path>
      The list of package names to check.

  -d|-dir <path>
      The directory with RPM packages to check.

  -hdlist <path>
      The HDlist to check.

      Check statically if all required dependencies are
      satisfied by provided dependencies in the set of
      RPM packages. Should be used with --dir or --hdlist options.

      Check installation media (DVD).
      You can use this option with --dir or --list options.
      If you are using --list option, then it should point
      to a list of package paths.

      Validate package signatures. Should be used
      with --dir option.

  -media <name|dir>
   [ not implemented yet ]
      Use local repository (or directory) instead of the
      default external repository.

      Do not clean urpmi cache.

  -root <path>
      Where to install packages.


A tool for downloading RPMs from Urpmi repositories


urpm-downloader.py [-h] [--urls] [-r] [-s] [--version] [-v] [-q]
                   [--include-media INCLUDE_MEDIA [INCLUDE_MEDIA ...]]
                   [--exclude-media EXCLUDE_MEDIA [EXCLUDE_MEDIA ...]]
                   [--exclude-packages EXCLUDE_PACKAGES [EXCLUDE_PACKAGES ...]]
                   [--fail-broken] [--overwrite] [--all-alternatives]
                   packages [packages ...]

positional arguments:
  packages              Package name(s) to download

optional arguments:
  -h, --help            show this help message and exit
  --urls                Instead of downloading RPMs, list the URLs that would
                        be downloaded
  -r, --resolve         When downloading RPMs, resolve dependencies and also
                        download the required packages
  -s, --source          Instead of downloading the binary RPMs, download the
                        source RPMs
  --version             show program's version number and exit
  -v, --verbose         verbose (print additional info)
  -q, --quiet           Quiet operation
                        use only selected media
  --exclude-media EXCLUDE_MEDIA [EXCLUDE_MEDIA ...]
                        do not use selected media
  --exclude-packages EXCLUDE_PACKAGES [EXCLUDE_PACKAGES ...]
                        Exclude package(s) by name or glob
  --fail-broken         When the package with depsolving problems found, do
                        not skip it, but exit.
  --overwrite           If the file already exists, download it again and
                        overwrite the old one.
  --all-alternatives    While resolving dependencies, if alternative packages
                        present, download all of them.


Take 2 or more repositories and return a list of added, removed and changed packages.


repodiff --old=old_repo_baseurl [--old=old_repo2_baseurl ...] --new=new_repo_baseurl [--new=new_repo2_baseurl ...]


Find problems in the rpmdb of system and correct them.

The tool can perform the following actions:

  1. Look for situation when multiple versions of the same package are installed; the tool can automatically uninstall all versions except the latest one.
    • There is a separate check for kernel packages; it takes into account running kernel and never tries to uninstall it, and in addition allows to specify number of kernels that should be left in the system.
  2. Look for installed packages that are not available in any configured repository (this is just a wrapper for `urpmq --not-available`).
  3. Look for installed packages that have unmet dependencies.
  4. List "leaf" nodes in the local RPM database. Leaf nodes are RPMs that are not relied upon by any other RPM.


urpm-package-cleanup.py [-h] [--qf QF] [--orphans] [--auto] [--version]
                        [--problems] [--suggests] [--dupes]
                        [--cleandupes] [--noscripts] [--leaves] [--all]
                        [--leaf-regex LEAF_REGEX] [--exclude-devel]
                        [--exclude-bin] [--oldkernels]
                        [--count KERNELCOUNT] [--keepdevel]

optional arguments:
  -h, --help            show this help message and exit
  --qf QF, --queryformat QF
                        Query format to use for output.
  --orphans             List installed packages which are not available from
                        currently configured repositories
  --auto                Use non-interactive mode
  --version             show program's version number and exit

Dependency Problems Options:
  --problems            List dependency problems in the local RPM database
  --suggests            List missing suggestions of installed packages

Duplicate Package Options:
  --dupes               Scan for duplicates in your rpmdb
  --cleandupes          Scan for duplicates in your rpmdb and remove older
  --noscripts           disable rpm scriptlets from running when cleaning

Leaf Node Options:
  --leaves              List leaf nodes in the local RPM database
  --all                 list all packages leaf nodes that do not match leaf-
  --leaf-regex LEAF_REGEX
                        A package name that matches this regular expression
                        (case insensitively) is a leaf
  --exclude-devel       do not list development packages as leaf nodes
  --exclude-bin         do not list packages with files in a bin dirs asleaf

Old Kernel Options:
  --oldkernels          Remove old kernel and kernel-devel packages
  --count KERNELCOUNT   Number of kernel packages to keep on the system
                        (default 2)
  --keepdevel           Do not remove kernel-devel packages when removing