Urpm-tools — различия между версиями

Материал из Rosalab Wiki
Перейти к: навигация, поиск
(urpm-repoclosure)
 
(не показаны 33 промежуточные версии 3 участников)
Строка 1: Строка 1:
 
{{Введение|Urpm-tools - набор утилит, расширяющих и дополняющих функциональность urpmi, urpmq, urpmf и urpme.}}
 
{{Введение|Urpm-tools - набор утилит, расширяющих и дополняющих функциональность urpmi, urpmq, urpmf и urpme.}}
  
По возможностям urpm-tools схожи с yum-utils (и частично на них основаны). Для большей совместимости инструменты urpm-tools имеют схожие с yum-utils названия и одинаковые опции для одинаковых действий.
+
Urpm-tools частично основаны на yum-utils, но существенно превосходят их в плане функциональных возможностей. Для большей совместимости инструменты urpm-tools имеют схожие с yum-utils названия и одинаковые опции для одинаковых действий.
  
В настоящее время пакет urpm-tools доступен в репозитории Mandriva Cooker.
+
== Установка ==
 +
В настоящее время пакет urpm-tools доступен в личном репозитории [http://abf.rosalinux.ru/downloads/akirilenko_personal/repository/rosa2012lts/i586/main/release/ i586] и [http://abf.rosalinux.ru/downloads/akirilenko_personal/repository/rosa2012lts/x86_64/main/release/ x86_64].
 +
 
 +
1. Добавьте источник, в котором находится новейшая версия urpm-tools.
 +
для 32-битной системы выполните команду:
 +
sudo urpmi.addmedia akirilenko_personal http://abf.rosalinux.ru/downloads/akirilenko_personal/repository/rosa2012lts/i586/main/release/
 +
для 64-битной системы:
 +
sudo urpmi.addmedia akirilenko_personal http://abf.rosalinux.ru/downloads/akirilenko_personal/repository/rosa2012lts/x86_64/main/release/
 +
2. Установите пакет urpm-tools:
 +
sudo urpmi urpm-tools
  
 
== Список инструментов ==
 
== Список инструментов ==
 
В первую версию пакета вошли следующие инструменты:
 
  
 
{| class="wikitable"
 
{| class="wikitable"
 
! Tool !! Description
 
! Tool !! Description
 
|-
 
|-
| urpm-downloader || скачивание пакета вместе со всеми зависимостями, source-пакетом всеми build-зависимостями), debug-info.
+
| urpm-downloader || скачивание пакетов и SRPM вместе со всеми зависимостями, а также пакетов с debug-информацией (инструмент сочетает в себе функциональность yum-downloader и debuginfo-install из yum-utils)
 
|-
 
|-
 
| urpm-package-cleanup || чистка установленных пакетов
 
| urpm-package-cleanup || чистка установленных пакетов
Строка 19: Строка 26:
 
|-
 
|-
 
| urpm-repodiff || diff двух репозиториев
 
| urpm-repodiff || diff двух репозиториев
 +
|-
 +
| urpm-repograph || построение графа зависимостей пакетов в репозитории
 
|-
 
|-
 
| urpm-repomanage || анализ набора RPM-файлов и выделение самых новых и устаревших версий каждого пакета
 
| urpm-repomanage || анализ набора RPM-файлов и выделение самых новых и устаревших версий каждого пакета
|}
 
 
В дальнейшем планируется добавление еще нескольких полезных утилит:
 
 
{| class="wikitable"
 
! Tool !! Description
 
 
|-
 
|-
| urpm-build-distrib || создание дистрибутива на основе нескольких репозиториев
+
| urpm-reposync || синхронизация локального набора пакетов с репозиторием (аналог distrosync из yum-utils)
|-
+
| urpm-debuginfo-install || установка пакетов debuginfo, необходимых для отладки программ из заданного пакета ('''integrated into urpm-downloader v2''')
+
|-
+
| urpm-distrosync || синхронизация локального набора пакетов с репозиторием
+
|-
+
| urpm-repograph || построение графа зависимостей пакетов в репозитории
+
 
|}
 
|}
  
Строка 50: Строка 47:
  
 
'''See also:''' [[Package Manager Options]]
 
'''See also:''' [[Package Manager Options]]
 +
 +
== urpm-downloader ==
 +
Инструмент, позволяющий скачивать RPM и SRPM
 +
пакеты из URPM репозиториев
 +
 +
Использование:
 +
<pre>
 +
urpm-downloader [-h] [-u] [-r] [-a] [-b] [-s] [-d] [-D] [--version]
 +
                      [-v] [-q]
 +
                      [--include-media INCLUDE_MEDIA [INCLUDE_MEDIA ...]]
 +
                      [--exclude-media EXCLUDE_MEDIA [EXCLUDE_MEDIA ...]]
 +
                      [-x EXCLUDE_PACKAGES [EXCLUDE_PACKAGES ...]] [-i] [-o]
 +
                      [--all-alternatives] [--all-versions]
 +
                      [--dest-dir DEST_DIR]
 +
                      packages [packages ...]
 +
 +
 +
positional arguments:
 +
  packages              Имена пакетов для скачивания.
 +
                        Можно так же использовать
 +
                        имена существующих (S)RPM
 +
                        файлов, в этом случае
 +
                        информация об имени пакета
 +
                        будет извлечена из них.
 +
 +
optional arguments:
 +
  -h, --help            show this help message and exit
 +
  -u, --urls            Выводить их URL файлов, но не
 +
                        скачивать их (в случае
 +
                        использования совместно с -a
 +
                        или -r src.rpm файл все равно
 +
                        будет скачан, так как без
 +
                        этого невозможно разрешить
 +
                      сборочные зависимости)
 +
  -r, --resolve        При скачивании пакета
 +
                        разрешать зависимости и
 +
                        скачивать все необходимые
 +
                        пакеты, но только если они не
 +
                        установлены в системе.
 +
  -a, --resolve-all    При скачивании пакета
 +
                        разрешать зависимости и
 +
                        скачивать все необходимые
 +
                        пакеты, даже если они уже
 +
                        установлены в системе
 +
  -b, --binary          Скачивать бинарные пакеты (RPM)
 +
  -s, --source          Скачать пакеты с исходными
 +
                        кодами (SRPM)
 +
  -d, --debug-info      Скачать пакеты с отладочной
 +
                        информацией
 +
  -D, --debug-info-install
 +
                        Скачать пакеты с отладочной
 +
                        информацией и установить
 +
  --version            show program's version number and exit
 +
  -v, --verbose        Выводить при исполнении
 +
                        отладочную информацию
 +
  -q, --quiet          Ничего не печатать в консоль
 +
  --include-media INCLUDE_MEDIA [INCLUDE_MEDIA ...], --media INCLUDE_MEDIA [INCLUDE_MEDIA ...]
 +
                        Использовать только
 +
                        указанные источники
 +
  --exclude-media EXCLUDE_MEDIA [EXCLUDE_MEDIA ...]
 +
                        Не использовать указанные
 +
                        источники
 +
  -x EXCLUDE_PACKAGES [EXCLUDE_PACKAGES ...], --exclude-packages EXCLUDE_PACKAGES [EXCLUDE_PACKAGES ...]
 +
                        Исключить пакеты по
 +
                        регулярному выражению
 +
  -i, --ignore-errors  Пытаться игнорировать ошибки
 +
-o, --overwrite      Если файл уже существует,
 +
                        скачать его заново и
 +
                        заменить.
 +
  --all-alternatives    Скачивать все пакеты, которые
 +
                        могут удовлетворить
 +
                        зависимости для данного
 +
                        пакета (по умолчанию
 +
                        скачивается лишь один).
 +
  --all-versions        Если в репозитории
 +
                        присутствует несколько
 +
                        версий пакета, обработать их
 +
                        все.
 +
  --dest-dir DEST_DIR  Директория, в которую будут
 +
                        помещены скачаные файлы
 +
 +
Если ни одна из опций -b, -s или -d не указана,
 +
то по умолчанию включается -b
 +
</pre>
 +
 +
== urpm-package-cleanup ==
 +
Инструмент для поиска проблем в базе данных RPM и их исправления.
 +
 +
Инструмент может выполнять следующие действия:
 +
# Поиск ситуации, когда один пакет установлен в системе несколько раз с разными версиями. Инструмент может автоматически удалять все версии кроме самой новой.
 +
#* Отдельно рассматриваются kernel пакеты. Инструмент учитывает, какое ядро сейчас запущено, и не пытается его удалить. Так же можно указать количество ядер, которые должны остаться в системе.
 +
# Поиск всех пакетов, которые не доступны в репозиториях с текущими настройками (это просто обетка к `urpmq --not-available`).
 +
# Поиск установленных пакетов c неудовлетворенными зависимостями.
 +
# Перечислить листовые узлы графа из базы данных RPM. Листовыми являются пакеты, которые не нужны для работы других пакетов.
 +
 +
Использование:
 +
<pre>
 +
urpm-package-cleanup [-h] [--qf QF] [--auto] [--version] [--orphans]
 +
                              [--update] [--media media [media ...]]
 +
                              [--excludemedia media [media ...]] [--problems]
 +
                              [--suggests] [--dupes] [--cleandupes]
 +
                              [--noscripts] [--leaves] [--all]
 +
                              [--leaf-regex LEAF_REGEX] [--exclude-devel]
 +
                              [--exclude-bin] [--oldkernels]
 +
                              [--count KERNELCOUNT] [--keepdevel]
 +
 +
ОПЦИИ:
 +
  -h, --help            show this help message and exit
 +
  --qf QF, --queryformat QF
 +
                        Формат вывода.
 +
  --auto                Работать в неинтерактивном
 +
                        режиме
 +
  --version            show program's version number and exit
 +
 +
Осиротевшие пакеты:
 +
  --orphans            Перечислить пакеты,
 +
                        недоступные в настроенных на
 +
                        текущий момент репозиториях
 +
  --update              Ипользовать только источники
 +
                        обновлений. Это означает, что
 +
                        urpmq будет искать и разрешать
 +
                        зависимости только используя
 +
                        источники, помеченные как
 +
                        источники обновлений
 +
                        (например, которые были
 +
                        добавлены при помощи "urpmi.addmedia
 +
                        --update")
 +
  --media media [media ...]
 +
                        Выбрать особые источники
 +
                        вместо того чтобы
 +
                        использовать все доступные
 +
                        по умолчанию источники (или
 +
                        все источники обновлений,
 +
                        если указан флаг --update). В
 +
                        других источниках пакеты
 +
                        искаться не будут.
 +
  --excludemedia media [media ...]
 +
                        Не использовать указанные
 +
                        источники.
 +
 +
Проблемы с зависимостями:
 +
  --problems            Перечислить проблемы с
 +
                        зависимостями в локальной
 +
                        базе RPM
 +
  --suggests            Перечислить список мягких
 +
                        зависимостей установленных
 +
                        пакетов
 +
 +
Дублирующиеся пакеты:
 +
  --dupes              Найти дубликаты в локальной
 +
                        базе RPM
 +
  --cleandupes          Найти дубликаты в локальной
 +
                        базе RPM и удалить более старые
 +
  --noscripts          отключить скриптлеты rpm при
 +
                        очистке дубликатов
 +
 +
Листовые узлы:
 +
  --leaves              Перечислить листовые узлы в
 +
                        локальной базе RPM
 +
  --all                перечислить все
 +
                        пакеты-листовые узлы, имя
 +
                        которых не подходить под
 +
                        регулярное выражение
 +
  --leaf-regex LEAF_REGEX
 +
                        Считать листовым узлом пакет,
 +
                        имя которого подходит по
 +
                        регулярному выражению
 +
                        (регистронезависимо).
 +
  --exclude-devel      не считать devel пакеты
 +
                        листовыми узлами
 +
  --exclude-bin        не считать пакеты, имеющие
 +
                        файлы в bin директориях,
 +
                        листовыми узлами
 +
 +
Старые ядра:
 +
  --oldkernels          Удалить старые ядра и их devel
 +
                        пакеты.
 +
  --count KERNELCOUNT  Количество пакетов с ядрами,
 +
                        которые надо сохранить в
 +
                        системе (по умолчанию 2)
 +
  --keepdevel          Не удалять kernel-devel пакеты при
 +
                        удалении ядер
 +
 +
</pre>
  
 
== urpm-repoclosure ==
 
== urpm-repoclosure ==
A tool to check dependency closure in the repository.
+
Инструмент для определения замкнутости набора RPM пакетов.
 +
 
 +
Использование:
  
Usage:
 
 
<pre>
 
<pre>
  urpm-repoclosure [-h] [--hdlist=PACKAGES_HDLIST] [--dir=PACKAGES_DIR] [-list=PACKAGES_LIST]
+
urpm-repoclosure [-h] [--hdlist=HDLIST] [--dir=PACKAGES_DIR] [-list=PACKAGES_LIST]
 
                       [--static] [--dynamic] [--check-release] [--check-signature] [--noclean]
 
                       [--static] [--dynamic] [--check-release] [--check-signature] [--noclean]
 
                       [--root ROOT] [--file-deps=FILE]
 
                       [--root ROOT] [--file-deps=FILE]
  
  examples:
+
ПРИМЕРЫ:
 
+
  urpm-repoclosure --hdlist=http://mirror.yandex.ru/mandriva/.../synthesis.hdlist.cz
    urpm-repoclosure --hdlist=hdlist.txt
+
  urpm-repoclosure --hdlist=synthesis.hdlist
    urpm-repoclosure --hdlist=http://mirror.yandex.ru/mandriva/.../synthesis.hdlist.cz
+
  urpm-repoclosure --dir=rpms/ --static --file-deps=file-deps.txt
    urpm-repoclosure --dir=rpms/ --static --file-deps=file-deps.txt
+
  urpm-repoclosure --list=list.txt --dynamic
    urpm-repoclosure --list=list.txt --dynamic
+
 
+
  arguments:
+
  
 +
ОПЦИИ:
 
   -h|-help
 
   -h|-help
       Print help message.
+
       Показать это сообщение.
  
 
   -v|-version
 
   -v|-version
       Print version information.
+
       Показать информацию о версии программы.
 +
 
 +
  -hdlist <путь>
 +
      Путь к HDlist (synthesis), который надо проверить.
  
   -hdlist <path>
+
   -d|-dir <путь>
       Path or URL of HDlist (synthesis) to check.
+
       Директория с RPM пакетами, которую надо проверить.
  
   -d|-dir <path>
+
   -l|-list <путь>
       The directory with RPM packages to check.
+
       Список пакетов, который надо проверить.
  
   -l|-list <path>
+
   -add|-update <путь>
       The list of package names to check.
+
       Директория с RPM пакетами которые
 +
      надо добавить в репозиторий или обновить.
  
   -file-deps <path>
+
   -file-deps <путь>
       Read file-deps to ignore some unresolved
+
       Использовать файл file-deps для игнорирования
       dependencies.
+
       некоторых зависимостей.
  
 
   -s|-static
 
   -s|-static
       Check statically if all required dependencies are
+
       Статический анализ зависимостей.
      satisfied by provided dependencies in the set of
+
      RPM packages.
+
  
 
   -dynamic
 
   -dynamic
       Install a set of RPM packages to the local chroot
+
       Динамический анализ зависимостей (через установку пакетов).
      and check if extra packages were installed.
+
  
 
   -r|-check-release
 
   -r|-check-release
       Check installation media (DVD).
+
       Проверить установочный диск (CD/DVD).
  
 
   -sign|-check-signature
 
   -sign|-check-signature
       Validate package signatures.
+
       Проверить сигнатуры пакетов.
  
 
   -noclean
 
   -noclean
       Do not clean urpmi cache.
+
       Не очищать кэш инструментария URPM.
  
   -root <path>
+
   -root <путь>
       Where to install packages.
+
       Куда устанавливать пакеты.
       Default:
+
       Путь по-умолчанию:
 
           /tmp/...
 
           /tmp/...
 +
 +
КОДЫ ОШИБОК:
 +
      0 - Успех. Набор пакетов замкнут. Ошибок не произошло.
 +
      1 - Ошибки во время выполнения программы.
 +
      2 - Набор пакетов не замкнут.
 
</pre>
 
</pre>
  
== urpm-downloader ==
+
== urpm-repodiff ==
A tool for downloading RPMs from Urpmi repositories
+
Инструмент для сравнения наборов репозиториев.
 +
Берет на вход 2 или более репозиториев и возвращает список пакетов, которые были добавленны, удаленны или изменили версию.
  
Usage:
+
Использование:
 
<pre>
 
<pre>
usage: urpm-downloader.py [-h] [-u] [-r] [-a] [-b] [-s] [-d] [--version] [-v]
+
urpm-repodiff [-h] --old OLD_REPO [OLD_REPO ...] --new NEW_REPO
                          [-q]
+
                        [NEW_REPO ...] [--size] [--simple] [--quiet] [--html]
                          [--include-media INCLUDE_MEDIA [INCLUDE_MEDIA ...]]
+
                        [--output OUTPUT_FILE]
                          [--exclude-media EXCLUDE_MEDIA [EXCLUDE_MEDIA ...]]
+
                          [-x EXCLUDE_PACKAGES [EXCLUDE_PACKAGES ...]] [-i]
+
                          [-o] [--all-alternatives] [--all-versions]
+
                          [--dest-dir DEST_DIR]
+
                          packages [packages ...]
+
  
A tool for downloading RPMs and SRPMs from URPM-based linux repositories
 
  
positional arguments:
 
  packages              Package name(s) to download
 
  
optional arguments:
+
ОПЦИИ:
 
   -h, --help            show this help message and exit
 
   -h, --help            show this help message and exit
   -u, --urls            Instead of downloading RPMs, list the URLs that would
+
   --old OLD_REPO [OLD_REPO ...], -o OLD_REPO [OLD_REPO ...]
                        be downloaded
+
                         URL или пути к старым
  -r, --resolve        When downloading RPMs, resolve dependencies and also
+
                         репозиториям
                        download the required packages, if they are not
+
   --new NEW_REPO [NEW_REPO ...], -n NEW_REPO [NEW_REPO ...]
                        already installed
+
                         URL или пути к новым
  -a, --resolve-all    When downloading RPMs, resolve dependencies and also
+
                        репозиториям
                        download the required packages, even if they are
+
   --size, -s            Показывать различия в
                        already installed
+
                        размерах пакетов.
  -b, --binary          Download binary RPM. Default: True
+
  --simple              Упрощенный формат вывода.
  -s, --source          Instead of downloading the binary RPMs, download the
+
   --quiet, -q          Не показывать служебные
                        source RPMs
+
                         сообщения.
  -d, --debug-info      Download debug info
+
   --html                Вывод в формате HTML. Если --output
  --version            show program's version number and exit
+
                         не указан, то HTML файл будет
  -v, --verbose        Verbose (print additional info)
+
                         создан в текущей директории.
  -q, --quiet          Quiet operation.
+
                        Опции --size и --simple будут
  --include-media INCLUDE_MEDIA [INCLUDE_MEDIA ...], --media INCLUDE_MEDIA [INCLUDE_MEDIA ...]
+
                         игнорироваться.
                         Use only selected URPM media
+
   --output OUTPUT_FILE, -out OUTPUT_FILE
  --exclude-media EXCLUDE_MEDIA [EXCLUDE_MEDIA ...]
+
                        Перенаправить вывод в "OUTPUT_FILE"
                         Do not use selected URPM media
+
   -x EXCLUDE_PACKAGES [EXCLUDE_PACKAGES ...], --exclude-packages EXCLUDE_PACKAGES [EXCLUDE_PACKAGES ...]
+
                         Exclude package(s) by regex
+
   -i, --ignore-errors  Try to continue when error occurs
+
   -o, --overwrite      If the file already exists, download it again and
+
                         overwrite the old one
+
   --all-alternatives    If package dependency can be satisfied by several
+
                         packages, download all of them (by default, only the
+
                         first one is downloaded)
+
  --all-versions        If different versions of package present in
+
                         repository, process them all
+
   --dest-dir DEST_DIR  Specify a destination directory for the download
+
 
+
If none of the options -b, -s, -d is on, it will be treated as -b
+
 
</pre>
 
</pre>
  
== urpm-repodiff ==
+
== urpm-repograph ==
Take 2 or more repositories and return a list of added, removed and changed packages.
+
Инструмент для создания графа зависимостей в формате dot для пакетов из репозитория.
  
Usage:
+
Использование:
 
<pre>
 
<pre>
urpm-repodiff --old old_repo_baseurl [old_repo_baseurl ...] --new new_repo_baseurl [new_repo_baseurl ...]
+
urpm-repograph [-h] REPOSITORY [--cross CROSS_REPO [CROSS_REPO ...]] [--quiet]
 +
                        [--verbose] [--requires] [--suggests] [--file]
 +
                        [--unprovided]
 +
                        [--requires-recursive PKG | --whatrequires PKG]
 +
                        [--loops | --alternatives | --broken] [--different]
 +
                        [--output OUTPUT_FILE | --nograph]
  
optional arguments:
 
  -h, --help            show this help message and exit
 
  -o, --old old_repo_baseurl [old_repo_baseurl ...]
 
                        URLs to old repository
 
  -n, --new new_repo_baseurl [new_repo_baseurl ...]
 
                        URLs to new repository
 
  -s, --size            show differences in package sizes
 
  --simple              simple output format
 
</pre>
 
  
== urpm-package-cleanup ==
 
Find problems in the rpmdb of system and correct them.
 
  
The tool can perform the following actions:
+
АРГУМЕНТЫ:
# Look for situation when multiple versions of the same package are installed; the tool can automatically uninstall all versions except the latest one.
+
  REPOSITORY            URL or local PATH to repository.
#* 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.
+
# Look for installed packages that are not available in any configured repository (this is just a wrapper for `urpmq --not-available`).
+
# Look for installed packages that have unmet dependencies.
+
# List "leaf" nodes in the local RPM database. Leaf nodes are RPMs that are not relied upon by any other RPM.
+
  
Usage:
+
ОПЦИИ:
<pre>
+
urpm-package-cleanup [-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
 
   -h, --help            show this help message and exit
   --qf QF, --queryformat QF
+
   --cross CROSS_REPO [CROSS_REPO ...], -c CROSS_REPO [CROSS_REPO ...]
                         Query format to use for output.
+
                        Искать зывисимости между
   --auto                Use non-interactive mode
+
                        репозиториями в
   --version            show program's version number and exit
+
                        репозиториями CROSS_REPO
 +
  --quiet, -q          Не показывать служебные
 +
                         сообщения. (О прогрессе и т. д.)
 +
   --verbose, -v        Показывать предупреждения (О
 +
                        зависимостях, не
 +
                        предоставляемых ни одним
 +
                        пакетом из репозитория и т. д.)
 +
   --requires, -r        Обрабатывать "requires" пакетные
 +
                        зависимости. Используется по
 +
                        умолчанию.
 +
  --suggests, -s       Обрабатывать "suggests" пакетные
 +
                        зависимости. Если
 +
                        используется без --requires, то
 +
                        будут обрабатываться только
 +
                        мягкие зависимости.
 +
  --file, -f            Обработка зависимостей по
 +
                        файлам...
 +
  --unprovided, -u      Показать зависимости, не
 +
                        предоставленные ни одним
 +
                        пакетом из репозитория.
 +
  --requires-recursive PKG
 +
                        Искать пакеты, которые нужны
 +
                        пакету PKG. (PKG - это имя пакета
 +
                        или файла)
 +
  --whatrequires PKG    Искать пакеты, которым нужен
 +
                        пакет PKG. (PKG - это имя пакета
 +
                        или файла)
 +
  --loops, -l          Поиск всех простых циклов в
 +
                        пакетных зависимостях.
 +
  --alternatives, -a    Поиск альтернативных
 +
                        пакетов, предоставляющих
 +
                        одну и ту же зависимость.
 +
  --broken, -b          Искать все пакеты с
 +
                        нарушенными зависимостями и
 +
                        цепочки пакетов между ними
 +
  --different, -d      Выводить каждый цикл или
 +
                        каждую альтернативу в
 +
                        отдельный файл. Игнорируется,
 +
                        если указано --loops или --alternatives.
 +
                        OUTPUT_FILE (если указан) в этом
 +
                        случае рассматривается как
 +
                        имя директории для новых
 +
                        файлов.
 +
  --output OUTPUT_FILE, -o OUTPUT_FILE
 +
                        Перенаправить вывод графа в
 +
                        файл "OUTPUT_FILE". По умолчанию
 +
                        используется STDOUT.
 +
  --nograph, -n        Не выводить граф. Инструмент
 +
                        не будет ничего делать, если
 +
                        включены --quiet и --nograph, а verbose
 +
                        нет. (Если ничего не надо
 +
                        выводить, то и не надо ничего
 +
                        делать.)
  
Orphans Options:
+
</pre>
  --orphans            List installed packages which are not available from
+
                        currently configured repositories
+
  --update              Use only update media. This means that urpmq will
+
                        search and resolve dependencies only in media marked
+
                        as containing updates (e.g. which have been created
+
                        with "urpmi.addmedia --update").
+
  --media media [media ...]
+
                        Select specific media to be used, instead of
+
                        defaulting to all available media (or all update media
+
                        if --update is used). No rpm will be found in other
+
                        media.
+
  --excludemedia media [media ...]
+
                        Do not use the specified media.
+
  
Dependency Problems Options:
+
== urpm-repomanage ==
  --problems            List dependency problems in the local RPM database
+
Обработать директорию с rpm пакетами и сообщить о наиболее новых и старых версиях.
  --suggests            List missing suggestions of installed packages
+
  
Duplicate Package Options:
+
Использование:
  --dupes              Scan for duplicates in your rpmdb
+
<pre>
  --cleandupes          Scan for duplicates in your rpmdb and remove older
+
urpm-repomanage [-h] path [-o | -n | -b] [-r] [-s] [-k KEEP] [-c] [-q | -V]
  --noscripts          disable rpm scriptlets from running when cleaning
+
                        duplicates
+
  
Leaf Node Options:
 
  --leaves              List leaf nodes in the local RPM database
 
  --all                list all packages leaf nodes that do not match leaf-
 
                        regex
 
  --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 as leaf
 
                        nodes
 
  
Old Kernel Options:
+
АРГУМЕНТЫ:
   --oldkernels          Remove old kernel and kernel-devel packages
+
  path                  путь к директории с rpm
   --count KERNELCOUNT   Number of kernel packages to keep on the system
+
                        пакетами
                         (default 2)
+
 
   --keepdevel          Do not remove kernel-devel packages when removing
+
ОПЦИИ:
                         kernels
+
   -h, --help            показать это сообщение и выйти
 +
   -o, --old            напечатать более старые
 +
                        пакеты
 +
   -b, --obsolete        напечатать пакеты, объявленные устаревшими
 +
                         в пользу других пакетов
 +
  -n, --new            напечатать наиболее новые
 +
                        пакеты (поведение по
 +
                        умолчанию)
 +
   -r, --remove-old      удалить более старые пакеты
 +
  -s, --space          вывод разделяется пробелами,
 +
                         а не переводами строки
 +
  -k KEEP, --keep KEEP  количество наиболее новых
 +
                        пакетов, которые надо
 +
                        оставить - по умолчанию 1
 +
  -c, --nocheck        не проверять встроенные
 +
                        подписи пакетов
 +
  -q, --quiet          ничего не печатать
 +
  -V, --verbose        показывать дополнительную
 +
                        информацию - какие пакеты
 +
                        выбраны наиболее новыми и
 +
                        почему (информация выводится
 +
                        в STDERR)
 
</pre>
 
</pre>
  
== urpm-repomanage ==
+
== urpm-reposync ==
Manage a directory of rpm packages and report newest or oldest packages
+
Инструмент для синхронизации установленных на компьютере пакетов с удаленным репозиторием.
  
Usage:
+
Использование:
 
<pre>
 
<pre>
urpm-repomanage [-h] [-o] [-n] [-s] [-k KEEP] [-c] path
+
urpm-reposync [-h] [--include-media INCLUDE_MEDIA [INCLUDE_MEDIA ...]]
 +
                  [--exclude-media EXCLUDE_MEDIA [EXCLUDE_MEDIA ...]]
 +
                  [-v] [-q] [-a]
  
positional arguments:
 
  path                  path to directory with rpm packages
 
  
optional arguments:
+
ОПЦИИ:
 
   -h, --help            show this help message and exit
 
   -h, --help            show this help message and exit
   -o, --old            print the older packages
+
   --include-media INCLUDE_MEDIA [INCLUDE_MEDIA ...], --media INCLUDE_MEDIA [INCLUDE_MEDIA ...]
   -n, --new            print the newest packages (this is the default
+
                        Использовать только
                         behavior)
+
                        указанные источники
   -s, --space          space separated output, not newline
+
   --exclude-media EXCLUDE_MEDIA [EXCLUDE_MEDIA ...]
   -k KEEP, --keep KEEP  number of newest packages to keep - defaults to 1
+
                         Не использовать указанные
  -c, --nocheck        do not check package payload signatures/digests
+
                        источники
   -V, --verbose        be verbose - say which packages are decided to be old
+
   -v, --verbose        Выводить при исполнении
                         and why (this info is dumped to STDERR)
+
                        отладочную информацию
 +
   -q, --quiet          Ничего не выводить на экран.
 +
                        Не используется без --auto.
 +
   -a, --auto            Выполнять все действия без
 +
                         вопросов
 
</pre>
 
</pre>
  
[[Category:Package Management]]
+
[[Категория:Управление пакетами]]
 +
[[Категория:Инструменты разработки]]
 +
 
 +
[[en:Urpm-tools]]

Текущая версия на 12:23, 24 декабря 2012

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

Urpm-tools частично основаны на yum-utils, но существенно превосходят их в плане функциональных возможностей. Для большей совместимости инструменты urpm-tools имеют схожие с yum-utils названия и одинаковые опции для одинаковых действий.

Установка

В настоящее время пакет urpm-tools доступен в личном репозитории i586 и x86_64.

1. Добавьте источник, в котором находится новейшая версия urpm-tools. для 32-битной системы выполните команду: sudo urpmi.addmedia akirilenko_personal http://abf.rosalinux.ru/downloads/akirilenko_personal/repository/rosa2012lts/i586/main/release/ для 64-битной системы: sudo urpmi.addmedia akirilenko_personal http://abf.rosalinux.ru/downloads/akirilenko_personal/repository/rosa2012lts/x86_64/main/release/ 2. Установите пакет urpm-tools: sudo urpmi urpm-tools

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

Tool Description
urpm-downloader скачивание пакетов и SRPM вместе со всеми зависимостями, а также пакетов с debug-информацией (инструмент сочетает в себе функциональность yum-downloader и debuginfo-install из yum-utils)
urpm-package-cleanup чистка установленных пакетов
urpm-repoclosure проверка замкнутости репозитория по зависимостям
urpm-repodiff diff двух репозиториев
urpm-repograph построение графа зависимостей пакетов в репозитории
urpm-repomanage анализ набора RPM-файлов и выделение самых новых и устаревших версий каждого пакета
urpm-reposync синхронизация локального набора пакетов с репозиторием (аналог distrosync из yum-utils)

Некторые возможности, предоставляемые утилитами yum и yum-utils, поддерживаются непосредственно urpmi и компанией:

Yum Tool Urpmi analogue Description
yum-builddep urpmi --buildrequires установка зависимостей, необходимых для сборки заданного SRPM (на основе самого пакета или spec-файла)
createrepo genhdlist2 создание репозитория на основе набора RPM-файлов
repoquery urpmq запросы к репозиторию, аналогичные тем, что умеет делать rpm для пакетов

See also: Package Manager Options

urpm-downloader

Инструмент, позволяющий скачивать RPM и SRPM пакеты из URPM репозиториев

Использование:

urpm-downloader [-h] [-u] [-r] [-a] [-b] [-s] [-d] [-D] [--version]
                       [-v] [-q]
                       [--include-media INCLUDE_MEDIA [INCLUDE_MEDIA ...]]
                       [--exclude-media EXCLUDE_MEDIA [EXCLUDE_MEDIA ...]]
                       [-x EXCLUDE_PACKAGES [EXCLUDE_PACKAGES ...]] [-i] [-o]
                       [--all-alternatives] [--all-versions]
                       [--dest-dir DEST_DIR]
                       packages [packages ...]


positional arguments:
  packages              Имена пакетов для скачивания.
                        Можно так же использовать
                        имена существующих (S)RPM
                        файлов, в этом случае
                        информация об имени пакета
                        будет извлечена из них.

optional arguments:
  -h, --help            show this help message and exit
  -u, --urls            Выводить их URL файлов, но не
                        скачивать их (в случае
                        использования совместно с -a
                        или -r src.rpm файл все равно
                        будет скачан, так как без
                        этого невозможно разрешить
                       сборочные зависимости)
  -r, --resolve         При скачивании пакета
                        разрешать зависимости и
                        скачивать все необходимые
                        пакеты, но только если они не
                        установлены в системе.
  -a, --resolve-all     При скачивании пакета
                        разрешать зависимости и
                        скачивать все необходимые
                        пакеты, даже если они уже
                        установлены в системе
  -b, --binary          Скачивать бинарные пакеты (RPM)
  -s, --source          Скачать пакеты с исходными
                        кодами (SRPM)
  -d, --debug-info      Скачать пакеты с отладочной
                        информацией
  -D, --debug-info-install
                        Скачать пакеты с отладочной
                        информацией и установить
  --version             show program's version number and exit
  -v, --verbose         Выводить при исполнении
                        отладочную информацию
  -q, --quiet           Ничего не печатать в консоль
  --include-media INCLUDE_MEDIA [INCLUDE_MEDIA ...], --media INCLUDE_MEDIA [INCLUDE_MEDIA ...]
                        Использовать только
                        указанные источники
  --exclude-media EXCLUDE_MEDIA [EXCLUDE_MEDIA ...]
                        Не использовать указанные
                        источники
  -x EXCLUDE_PACKAGES [EXCLUDE_PACKAGES ...], --exclude-packages EXCLUDE_PACKAGES [EXCLUDE_PACKAGES ...]
                        Исключить пакеты по
                        регулярному выражению
  -i, --ignore-errors   Пытаться игнорировать ошибки
-o, --overwrite       Если файл уже существует,
                        скачать его заново и
                        заменить.
  --all-alternatives    Скачивать все пакеты, которые
                        могут удовлетворить
                        зависимости для данного
                        пакета (по умолчанию
                        скачивается лишь один).
  --all-versions        Если в репозитории
                        присутствует несколько
                        версий пакета, обработать их
                        все.
  --dest-dir DEST_DIR   Директория, в которую будут
                        помещены скачаные файлы

Если ни одна из опций -b, -s или -d не указана,
то по умолчанию включается -b

urpm-package-cleanup

Инструмент для поиска проблем в базе данных RPM и их исправления.

Инструмент может выполнять следующие действия:

  1. Поиск ситуации, когда один пакет установлен в системе несколько раз с разными версиями. Инструмент может автоматически удалять все версии кроме самой новой.
    • Отдельно рассматриваются kernel пакеты. Инструмент учитывает, какое ядро сейчас запущено, и не пытается его удалить. Так же можно указать количество ядер, которые должны остаться в системе.
  2. Поиск всех пакетов, которые не доступны в репозиториях с текущими настройками (это просто обетка к `urpmq --not-available`).
  3. Поиск установленных пакетов c неудовлетворенными зависимостями.
  4. Перечислить листовые узлы графа из базы данных RPM. Листовыми являются пакеты, которые не нужны для работы других пакетов.

Использование:

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

ОПЦИИ:
  -h, --help            show this help message and exit
  --qf QF, --queryformat QF
                        Формат вывода.
  --auto                Работать в неинтерактивном
                        режиме
  --version             show program's version number and exit

Осиротевшие пакеты:
  --orphans             Перечислить пакеты,
                        недоступные в настроенных на
                        текущий момент репозиториях
  --update              Ипользовать только источники
                        обновлений. Это означает, что
                        urpmq будет искать и разрешать
                        зависимости только используя
                        источники, помеченные как
                        источники обновлений
                        (например, которые были
                        добавлены при помощи "urpmi.addmedia
                        --update")
  --media media [media ...]
                        Выбрать особые источники
                        вместо того чтобы
                        использовать все доступные
                        по умолчанию источники (или
                        все источники обновлений,
                        если указан флаг --update). В
                        других источниках пакеты
                        искаться не будут.
  --excludemedia media [media ...]
                        Не использовать указанные
                        источники.

Проблемы с зависимостями:
  --problems            Перечислить проблемы с
                        зависимостями в локальной
                        базе RPM
  --suggests            Перечислить список мягких
                        зависимостей установленных
                        пакетов

Дублирующиеся пакеты:
  --dupes               Найти дубликаты в локальной
                        базе RPM
  --cleandupes          Найти дубликаты в локальной
                        базе RPM и удалить более старые
  --noscripts           отключить скриптлеты rpm при
                        очистке дубликатов

Листовые узлы:
  --leaves              Перечислить листовые узлы в
                        локальной базе RPM
  --all                 перечислить все
                        пакеты-листовые узлы, имя
                        которых не подходить под
                        регулярное выражение
  --leaf-regex LEAF_REGEX
                        Считать листовым узлом пакет,
                        имя которого подходит по
                        регулярному выражению
                        (регистронезависимо).
  --exclude-devel       не считать devel пакеты
                        листовыми узлами
  --exclude-bin         не считать пакеты, имеющие
                        файлы в bin директориях,
                        листовыми узлами

Старые ядра:
  --oldkernels          Удалить старые ядра и их devel
                        пакеты.
  --count KERNELCOUNT   Количество пакетов с ядрами,
                        которые надо сохранить в
                        системе (по умолчанию 2)
  --keepdevel           Не удалять kernel-devel пакеты при
                        удалении ядер

urpm-repoclosure

Инструмент для определения замкнутости набора RPM пакетов.

Использование:

urpm-repoclosure [-h] [--hdlist=HDLIST] [--dir=PACKAGES_DIR] [-list=PACKAGES_LIST]
                      [--static] [--dynamic] [--check-release] [--check-signature] [--noclean]
                      [--root ROOT] [--file-deps=FILE]

ПРИМЕРЫ:
  urpm-repoclosure --hdlist=http://mirror.yandex.ru/mandriva/.../synthesis.hdlist.cz
  urpm-repoclosure --hdlist=synthesis.hdlist
  urpm-repoclosure --dir=rpms/ --static --file-deps=file-deps.txt
  urpm-repoclosure --list=list.txt --dynamic

ОПЦИИ:
  -h|-help
      Показать это сообщение.

  -v|-version
      Показать информацию о версии программы.

  -hdlist <путь>
      Путь к HDlist (synthesis), который надо проверить.

  -d|-dir <путь>
      Директория с RPM пакетами, которую надо проверить.

  -l|-list <путь>
      Список пакетов, который надо проверить.

  -add|-update <путь>
      Директория с RPM пакетами которые
      надо добавить в репозиторий или обновить.

  -file-deps <путь>
      Использовать файл file-deps для игнорирования
      некоторых зависимостей.

  -s|-static
      Статический анализ зависимостей.

  -dynamic
      Динамический анализ зависимостей (через установку пакетов).

  -r|-check-release
      Проверить установочный диск (CD/DVD).

  -sign|-check-signature
      Проверить сигнатуры пакетов.

  -noclean
      Не очищать кэш инструментария URPM.

  -root <путь>
      Куда устанавливать пакеты.
      Путь по-умолчанию:
          /tmp/...

КОДЫ ОШИБОК:
      0 - Успех. Набор пакетов замкнут. Ошибок не произошло.
      1 - Ошибки во время выполнения программы.
      2 - Набор пакетов не замкнут.

urpm-repodiff

Инструмент для сравнения наборов репозиториев. Берет на вход 2 или более репозиториев и возвращает список пакетов, которые были добавленны, удаленны или изменили версию.

Использование:

urpm-repodiff [-h] --old OLD_REPO [OLD_REPO ...] --new NEW_REPO
                        [NEW_REPO ...] [--size] [--simple] [--quiet] [--html]
                        [--output OUTPUT_FILE]



ОПЦИИ:
  -h, --help            show this help message and exit
  --old OLD_REPO [OLD_REPO ...], -o OLD_REPO [OLD_REPO ...]
                        URL или пути к старым
                        репозиториям
  --new NEW_REPO [NEW_REPO ...], -n NEW_REPO [NEW_REPO ...]
                        URL или пути к новым
                        репозиториям
  --size, -s            Показывать различия в
                        размерах пакетов.
  --simple              Упрощенный формат вывода.
  --quiet, -q           Не показывать служебные
                        сообщения.
  --html                Вывод в формате HTML. Если --output
                        не указан, то HTML файл будет
                        создан в текущей директории.
                        Опции --size и --simple будут
                        игнорироваться.
  --output OUTPUT_FILE, -out OUTPUT_FILE
                        Перенаправить вывод в "OUTPUT_FILE"

urpm-repograph

Инструмент для создания графа зависимостей в формате dot для пакетов из репозитория.

Использование:

urpm-repograph [-h] REPOSITORY [--cross CROSS_REPO [CROSS_REPO ...]] [--quiet]
                         [--verbose] [--requires] [--suggests] [--file]
                         [--unprovided]
                         [--requires-recursive PKG | --whatrequires PKG]
                         [--loops | --alternatives | --broken] [--different]
                         [--output OUTPUT_FILE | --nograph]



АРГУМЕНТЫ:
  REPOSITORY            URL or local PATH to repository.

ОПЦИИ:
  -h, --help            show this help message and exit
  --cross CROSS_REPO [CROSS_REPO ...], -c CROSS_REPO [CROSS_REPO ...]
                        Искать зывисимости между
                        репозиториями в
                        репозиториями CROSS_REPO
  --quiet, -q           Не показывать служебные
                        сообщения. (О прогрессе и т. д.)
  --verbose, -v         Показывать предупреждения (О
                        зависимостях, не
                        предоставляемых ни одним
                        пакетом из репозитория и т. д.)
  --requires, -r        Обрабатывать "requires" пакетные
                        зависимости. Используется по
                        умолчанию.
  --suggests, -s        Обрабатывать "suggests" пакетные
                        зависимости. Если
                        используется без --requires, то
                        будут обрабатываться только
                        мягкие зависимости.
  --file, -f            Обработка зависимостей по
                        файлам...
  --unprovided, -u      Показать зависимости, не
                        предоставленные ни одним
                        пакетом из репозитория.
  --requires-recursive PKG
                        Искать пакеты, которые нужны
                        пакету PKG. (PKG - это имя пакета
                        или файла)
  --whatrequires PKG    Искать пакеты, которым нужен
                        пакет PKG. (PKG - это имя пакета
                        или файла)
  --loops, -l           Поиск всех простых циклов в
                        пакетных зависимостях.
  --alternatives, -a    Поиск альтернативных
                        пакетов, предоставляющих
                        одну и ту же зависимость.
  --broken, -b          Искать все пакеты с
                        нарушенными зависимостями и
                        цепочки пакетов между ними
  --different, -d       Выводить каждый цикл или
                        каждую альтернативу в
                        отдельный файл. Игнорируется,
                        если указано --loops или --alternatives.
                        OUTPUT_FILE (если указан) в этом
                        случае рассматривается как
                        имя директории для новых
                        файлов.
  --output OUTPUT_FILE, -o OUTPUT_FILE
                        Перенаправить вывод графа в
                        файл "OUTPUT_FILE". По умолчанию
                        используется STDOUT.
  --nograph, -n         Не выводить граф. Инструмент
                        не будет ничего делать, если
                        включены --quiet и --nograph, а verbose
                        нет. (Если ничего не надо
                        выводить, то и не надо ничего
                        делать.)

urpm-repomanage

Обработать директорию с rpm пакетами и сообщить о наиболее новых и старых версиях.

Использование:

urpm-repomanage [-h] path [-o | -n | -b] [-r] [-s] [-k KEEP] [-c] [-q | -V]


АРГУМЕНТЫ:
  path                  путь к директории с rpm
                        пакетами

ОПЦИИ:
  -h, --help            показать это сообщение и выйти
  -o, --old             напечатать более старые
                        пакеты
  -b, --obsolete        напечатать пакеты, объявленные устаревшими 
                        в пользу других пакетов
  -n, --new             напечатать наиболее новые
                        пакеты (поведение по
                        умолчанию)
  -r, --remove-old      удалить более старые пакеты
  -s, --space           вывод разделяется пробелами,
                        а не переводами строки
  -k KEEP, --keep KEEP  количество наиболее новых
                        пакетов, которые надо
                        оставить - по умолчанию 1
  -c, --nocheck         не проверять встроенные
                        подписи пакетов
  -q, --quiet           ничего не печатать
  -V, --verbose         показывать дополнительную
                        информацию - какие пакеты
                        выбраны наиболее новыми и
                        почему (информация выводится
                        в STDERR)

urpm-reposync

Инструмент для синхронизации установленных на компьютере пакетов с удаленным репозиторием.

Использование:

urpm-reposync [-h] [--include-media INCLUDE_MEDIA [INCLUDE_MEDIA ...]]
                   [--exclude-media EXCLUDE_MEDIA [EXCLUDE_MEDIA ...]]
                   [-v] [-q] [-a]


ОПЦИИ:
  -h, --help            show this help message and exit
  --include-media INCLUDE_MEDIA [INCLUDE_MEDIA ...], --media INCLUDE_MEDIA [INCLUDE_MEDIA ...]
                        Использовать только
                        указанные источники
  --exclude-media EXCLUDE_MEDIA [EXCLUDE_MEDIA ...]
                        Не использовать указанные
                        источники
  -v, --verbose         Выводить при исполнении
                        отладочную информацию
  -q, --quiet           Ничего не выводить на экран.
                        Не используется без --auto.
  -a, --auto            Выполнять все действия без
                        вопросов