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
Инструмент для сравнения наборов репозиториев. Берет на вход 2 или более репозиториев и возвращает список пакетов, которые были добавленны, удаленны или изменили версию.
Использование:
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 или пути к старым репозиториям --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.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 ...] Искать зывисимости между репозиториями в репозиториями 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
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!