| single |
# Patchman
## Summary
Patchman is a Django-based patch status monitoring tool for linux systems.
Patchman provides a web interface for monitoring the package updates
available
for linux hosts.
[![]](https://github.com/furlongm/patchman/tree/gh-pages/screenshots)
## How does Patchman work?
Patchman clients send a list of installed packages and enabled repositories
to
the Patchman server. The Patchman server updates its package list for each
repository and determines which hosts require updates, and whether those
updates
are normal or security updates. The web interface also gives information on
potential issues, such as installed packages that are not from any
repository.
Hosts, packages, repositories and operating systems can all be filtered.
For
example, it is possible to find out which hosts have a certain version of a
package installed, and which repository it comes from.
Patchman does not install update packages on hosts, it determines and
displays
what updates are available for each host.
`yum`, `apt` and `zypper` plugins can send reports to the Patchman server
every
time packages are installed or removed on a host.
## Installation
See [the installation guide]
for installation options.
## Usage
The web interface contains a dashboard with items that need attention, and
various pages to manipulate and view hosts, repositories and mirrors,
packages,
operating system releases and variants, reports, errata and CVEs.
To populate the database, simply run the client on some hosts:
```shell
$ patchman-client -s http://patchman.example.com
```
This should provide some initial data to work with.
On the server, the `patchman` command line utility can be used to run
certain
maintenance tasks, e.g. processing the reports sent from hosts, downloading
repository update information from the web. Run `patchman -h` for a rundown
of
the usage:
```shell
$ sbin/patchman -h
usage: patchman [-h] [-f] [-q] [-r] [-R REPO] [-lr] [-lh] [-dh] [-u] [-A]
[-shro | -uhro] [-sdns | -udns] [-H HOST] [-p] [-c] [-d] [-rd] [-n] [-a]
[-D hostA hostB] [-e] [-E ERRATUM_TYPE] [-v] [--cve CVE]
[--fetch-nist-data]
Patchman CLI tool
options:
-h, --help show this help message and exit
-f, --force Ignore stored checksums and force-refresh all
Mirrors
-q, --quiet Quiet mode (e.g. for cronjobs)
-r, --refresh-repos Refresh Repositories
-R REPO, --repo REPO Only perform action on a specific Repository
(repo_id)
-lr, --list-repos List all Repositories
-lh, --list-hosts List all Hosts
-dh, --delete-hosts Delete hosts, requires -H, matches substring
patterns
-u, --host-updates Find Host updates
-A, --host-updates-alt
Find Host updates (alternative algorithm that may
be faster when there are many homogeneous hosts)
-shro, --set-host-repos-only
Set host_repos_only, requires -H, matches substring
patterns
-uhro, --unset-host-repos-only
Unset host_repos_only, requires -H, matches
substring patterns
-sdns, --set-check-dns
Set check_dns, requires -H, matches substring
patterns
-udns, --unset-check-dns
Unset check_dns, requires -H, matches substring
patterns
-H HOST, --host HOST Only perform action on a specific Host (fqdn)
|