Urpm-tools
Urpm-tools частично основаны на yum-utils, но существенно превосходят их в плане функциональных возможностей. Для большей совместимости инструменты urpm-tools имеют схожие с yum-utils названия и одинаковые опции для одинаковых действий.
В настоящее время пакет urpm-tools доступен в репозитории Mandriva Cooker.
Содержание
Список инструментов
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) |
В дальнейшем планируется добавление еще нескольких полезных утилит:
Tool | Description |
---|---|
urpm-build-distrib | создание дистрибутива на основе нескольких репозиториев |
Некторые возможности, предоставляемые утилитами 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
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.
- 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.
Использование:
urpm-package-cleanup.py [-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] optional arguments: -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
A tool to check dependency closure in the repository.
Usage:
urpm-repoclosure.pl --hdlist=hdlist.txt urpm-repoclosure.pl --hdlist=http://mirror.yandex.ru/mandriva/.../synthesis.hdlist.cz urpm-repoclosure.pl --dir=rpms/ --static --file-deps=file-deps.txt urpm-repoclosure.pl --list=list.txt --dynamic OPTIONS: -h|-help Print this help. -v|-version Print version information. -hdlist <path> Path or URL of HDlist (synthesis) to check. -d|-dir <path> The directory with RPM packages to check. -l|-list <path> The list of packages to check. -file-deps <path> Read file-deps to ignore some unresolved dependencies. -s|-static Check statically if all required dependencies are satisfied by provided dependencies in the set of RPM packages. -dynamic Install a set of RPM packages to the local chroot and check if extra packages were installed. -r|-check-release Check installation media (DVD). -sign|-check-signature Validate package signatures. -noclean Do not clean urpmi cache. -root <path> Where to install packages. Default: /tmp/... EXIT CODES: 0 - Suceess. The tool has run without any errors non-zero - Failed or the tool has run with errors. In particular: 1 - Failed to run the tool 2 - Discovered dependency problems
urpm-repodiff
Take 2 or more repositories and return a list of added, removed and changed packages.
Usage:
urpm-repodiff.py [-h] --old OLD_REPO [OLD_REPO ...] --new NEW_REPO [NEW_REPO ...] [--size] [--simple] [--quiet] [--html] [--output OUTPUT_FILE] optional arguments: -h, --help show this help message and exit --old OLD_REPO [OLD_REPO ...], -o OLD_REPO [OLD_REPO ...] URL or PATH to old repositories --new NEW_REPO [NEW_REPO ...], -n NEW_REPO [NEW_REPO ...] URL or PATH to new repositories --size, -s Show differences in package sizes. --simple Simple output format. --quiet, -q Hide service messages. --html Output in HTML format, if --output is not present HTML will be created in current directory. --size and --simple options are ignored. --output OUTPUT_FILE, -out OUTPUT_FILE Change standart output to "OUTPUT_FILE".
urpm-repograph
Generate a full package dependency graph for repository in dot format
Usage:
urpm-repograph.py [-h] [--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 positional arguments: REPOSITORY URL or local PATH to repository. optional arguments: -h, --help show this help message and exit --cross CROSS_REPO [CROSS_REPO ...], -c CROSS_REPO [CROSS_REPO ...] Search for cross-repository references in CROSS_REPO(s) repositories. --quiet, -q Hide service messages. (About progress status etc.) --verbose, -v Show warnings. (About unprovided packages etc.) --requires, -r Process "requires" package dependencies. Used by default. --suggests, -s Process "suggests" package dependencies. If used without --requires then only suggests dependencies are processed. --file, -f Process file dependencies. --unprovided, -u Show unprovided dependencies. --requires-recursive PKG Search for packages, which are required by package PKG (PKG is a file name or package name) --whatrequires PKG Search for packages, which requires package PKG (PKG is a file name or package name) --loops, -l Search for all simple loops of cycled dependecies. --alternatives, -a Search for alternative packages providing the same feature. --broken, -b Search for all broken packages and anything beetween them --different, -d Output each loop or each alternative in different file. Ignored if --loops or --alternatives options are not present. OUTPUT_FILE (if present) is tracted as folder name for new files in that case. --output OUTPUT_FILE, -o OUTPUT_FILE Change graph output to "OUTPUT_FILE". STDIN by default. --nograph, -n Do not output graph. Tool will not start working if --quiet, --nograph are present and --verbose is not. (If there is nothing to output - then nothing has to be done.)
urpm-repomanage
Manage a directory of rpm packages and report newest or oldest packages
Usage:
urpm-repomanage.py [-h] [-o | -n] [-r] [-s] [-k KEEP] [-c] [-q | -V] path manage a directory of rpm packages and report newest or oldest packages positional arguments: path path to directory with rpm packages optional arguments: -h, --help show this help message and exit -o, --old print the older packages -n, --new print the newest packages (this is the default behavior) -r, --remove-old remove older packages -s, --space space separated output, not newline -k KEEP, --keep KEEP number of newest packages to keep - defaults to 1 -c, --nocheck do not check package payload signatures/digests -q, --quiet be completely quiet -V, --verbose be verbose - say which packages are decided to be old and why (this info is dumped to STDERR)
urpm-reposync
Synchronize installed package base with remote repository
Usage:
urpm-reposync.py [-h] [--include-media INCLUDE_MEDIA [INCLUDE_MEDIA ...]] [--exclude-media EXCLUDE_MEDIA [EXCLUDE_MEDIA ...]] [-x EXCLUDE_PACKAGES [EXCLUDE_PACKAGES ...]] [-v] [-q] [-a] optional arguments: -h, --help show this help message and exit --include-media INCLUDE_MEDIA [INCLUDE_MEDIA ...], --media INCLUDE_MEDIA [INCLUDE_MEDIA ...] Use only selected URPM media --exclude-media EXCLUDE_MEDIA [EXCLUDE_MEDIA ...] Do not use selected URPM media -x EXCLUDE_PACKAGES [EXCLUDE_PACKAGES ...], --exclude-packages EXCLUDE_PACKAGES [EXCLUDE_PACKAGES ...] Exclude package(s) by regex -v, --verbose Verbose (print additional info) -q, --quiet Quiet operation. Senseless without --auto. -a, --auto Ask no questions, just do it!