PKGDB(1) FreeBSD General Commands Manual PKGDB(1)
NAME
pkgdb, pkg_which -- tools to manage and search the package database
SYNOPSIS
pkgdb [-ahfFiLOQQquv] [-o pkgname] [-s /old/new/]
pkg_which [-hQQq] [-c pkgname] [file] ...
DESCRIPTION
The pkgdb command is a tool to create or update the system package data-
base which is used by the portupgrade(1) tool suite. It maintains a hash
that maps an installed file to a package name, a hash that maps a package
to an origin, and a list of installed packages.
pkg_which looks in the package database to tell which package each speci-
fied file came from. If the database is outdated but you do not have
permission to update it, it delegates tasks to pkg_info(1).
Actually, pkgdb and pkg_which are the same command, and are equivalent.
The pkgdb command also works as an interactive tool for fixing the pack-
age registry database when -F is specified. It helps you resolve stale
dependencies, unlink cyclic dependencies, complete stale or missing ori-
gins and remove duplicates. You should run this command periodically so
portupgrade(1) and other pkg_* tools can work effectively and reliably.
OPTIONS
The following command line arguments are supported:
file Inquire which package file came from. If the file is not
present, pkg_which calls which(1) to search PATH for the
file.
-h
--help Show help and exit.
-a
--auto Turn on automatic mode when -F is also specified. pkgdb
only fixes discrepancies that can be fixed securely and
leaves the others.
--autofix Shorthand of --auto --fix (-aF).
-c PKGNAME
--collate PKGNAME
Show files installed by the given package that have been
overwritten by other packages.
-f
--force Force; Specified with -u, update database regardless of
timestamps. Specified with -F, fix "held" packages too.
-F
--fix Interactively fix the package registry database.
-i
--interactive
Turn on interactive mode.
-L
--fix-lost Check and restore lost dependencies against the ports tree.
-o PKGNAME
--origin PKGNAME
Look up the origin of the given package in the package
database.
-O
--omit-check Specified with -F, turn off check dependencies against the
ports tree. Useful if you need a speed-up.
-Q
--quiet Do not write anything to stdout. Specified twice, do not
write anything to stderr either. This is for internal use.
-q
--noconfig Do not read the configuration file -
$PREFIX/etc/pkgtools.conf.
-s /OLD/NEW/
--substitute /OLD/NEW/
Substitute all the dependencies recorded as OLD with NEW
and exit.
-u
--update Update or create the package database file pkgdb.db in
$PKG_DBDIR, which is /var/db/pkg by default.
Note: if the ports database files are stale, pkgdb will
automatically update them before proceeding, so manual
updating is not mandatory.
-v
--verbose Turn on verbose output.
EXAMPLES
o Get a list of files under /usr/local and /usr/X11R6 that do not
belong to any package:
find /usr/local /usr/X11R6 -type f | xargs pkg_which -v | fgrep
'?'
ENVIRONMENT
PKG_DBDIR Alternative location for the installed package database.
Default is ``/var/db/pkg''.
PORTSDIR Alternative location for the ports tree. Default is
``/usr/ports''.
PORTS_INDEX Alternative location for the ports INDEX file. Default is
``$PORTSDIR/INDEX''.
PORTS_DBDIR Alternative location for the ports database files.
Default is ``$PORTSDIR''. The database files in the
directory are automatically created or updated as neces-
sary. See portsdb(1) for details.
PKGTOOLS_CONF Configuration file for the pkgtools suite. Default is
``$PREFIX/etc/pkgtools.conf''.
FILES
/var/db/pkg Default location of the package database.
$PREFIX/etc/pkgtools.conf Default location of the pkgtools configuration
file.
SEE ALSO
portsclean(1), portsdb(1), portupgrade(1), pkgtools.conf(5), ports(7)
HISTORY
The idea of pkgdb.db was taken from NetBSD.
AUTHORS
Akinori MUSHA <knu@iDaemons.org>
Sergey Matveychuk <sem@FreeBSD.org>
BUGS
Sometimes a database may get corrupt, and the pkgtools commands may abort
with a segmentation fault. In such cases, run ``pkgdb -fu'' to rebuild
the database, and the problems should go away.
FreeBSD September 22, 2001 FreeBSD
NAME - SYNOPSIS - DESCRIPTION - OPTIONS - EXAMPLES - ENVIRONMENT -
FILES - SEE ALSO - HISTORY - AUTHORS - BUGS -
|