pkg_check8
Check consistency of installed packages
Usage
pkg_check [-FfIimnqvx]
[-D
name
[=value]]
Overview
pkg_check verifies as much information as it can about installed packages.
pkg_check is not needed under normal circumstances, but it can be used to recover after a catastrophic system failure in the middle of a pkg_add(1) or pkg_delete(1).
pkg_check performs the following checks:
- Packing-list sanity
-
Checks that /var/db/pkg only contains directories, that each directory holds a packing-list, and that said packing-list is an actual packing-list that matches the directory.
- Direct dependencies
-
Checks that all direct dependencies are recorded correctly, specifically, that
@depend,@tagand@wantlibmatch actual packages. It currently does not verify that@wantlibor@tagare reachable from the base package. - Reverse dependencies
-
Checks that all direct dependencies have corresponding reverse dependencies.
- Files from packages
-
Checks that each file, link or directory in those packing-lists actually exist, and that their checksum matches what's recorded in the packing-list.
- Other files (option
-F) -
Checks that there are no other random objects under /usr/local.
By default, pkg_check will only perform very safe transformations, such as the removal of core-dumps. pkg_check will ask the user for more permanent changes in interactive mode, or perform them anyway with option -f.
The options are as follows:
-
-Dname[=value] Extra options. Recognized keywords include:nosig-
Do not check digital signatures.
-
-F -
Check the filesystem for random objects.
-
-f -
Force the removal of bogus package information.
-
-I -
Force non-interactive mode. Default is to be interactive when run from a tty.
-
-i -
Force interactive mode, even if not run from a tty.
-
-m -
Causes
pkg_checkto always display the progress meter in cases it would not do so by default. -
-n -
Don't actually modify packages, just perform checks.
-
-q -
Don't verify checksums for files, just check for their existence. Doubling
-qwill bypass that check entirely. -
-v -
Turn on verbose output. Several
-vmay turn on more verbose output. -
-x -
Disable progress meter.
Releases
34 releases since OpenBSD 4.8; the text changed 6 times.
-F since OpenBSD 6.1;
-I since OpenBSD 5.3.