Urpm-tools
Материал из Rosalab Wiki
Версия от 17:29, 19 декабря 2011; D uragan (обсуждение | вклад) (+ 'leaves' description for package-cleanup)
Urpm-tools - набор утилит, расширяющих и дополняющих функциональность urpmi, urpmqm urpmf и urpme.
Содержание
Список инструментов
В настоящее время ведутся/планируются работы над следующими утилитами:
Tool | Description |
---|---|
urpm-repoclosure | проверка замкнутости репозитория по зависимостям |
urpm-repograph | построение графа зависимостей пакетов в репозитории |
urpm-repodiff | diff двух репозиториев |
urpm-distrosync | синхронизация локального набора пакетов с репозиторием |
urpm-build-distrib | создание дистрибутива на основе нескольких репозиториев |
urpm-downloader | скачивание пакета вместе со всеми зависимостями |
urpm-package-cleanup | чистка установленных пакетов |
urpm-repoclosure
A tool to check dependency closure in the repository.
Usage:
urpm-repoclosure.pl [-h] [-list=PACKAGES_LIST] [--dir=PACKAGES_DIR] [--hdlist=HDLIST] [--static] [--check-release] [--check-signature] [--media MEDIA] [--noclean] [--root ROOT] examples: 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 arguments: -h|-help Print help message. -v|-version 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. -s|-static 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. -r|-check-release 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. -sign|-check-signature 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. -noclean Do not clean urpmi cache. -root <path> Where to install packages. Default: /tmp/...
urpm-downloader
A tool for downloading RPMs from Urpmi repositories
Usage:
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 --include-media INCLUDE_MEDIA [INCLUDE_MEDIA ...], --media INCLUDE_MEDIA [INCLUDE_MEDIA ...] 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.
urpm-repodiff
Take 2 or more repositories and return a list of added, removed and changed packages.
Usage:
repodiff --old=old_repo_baseurl [--old=old_repo2_baseurl ...] --new=new_repo_baseurl [--new=new_repo2_baseurl ...]
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.
Usage:
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 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 asleaf nodes 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 kernels