---
name: "bcfg2-admin"
section: "8"
platform: "linux"
package: "bcfg2-server"
version: "1.4.0~pre2+git141-g6d40dace6358-2"
release: "Debian 10 (Buster)"
platforms: ["linux"]
url: "https://new.carta.tech/bcfg2-admin"
---

# bcfg2-admin(8)

Perform repository administration tasks

## NAME

bcfg2-admin - Perform repository administration tasks

## SYNOPSIS

**bcfg2-admin** \[-C *configfile*\] *mode* \[*mode args*\] \[*mode options*\]

## DESCRIPTION

**bcfg2-admin** is used to perform Bcfg2 repository administration.

## OPTIONS

- **-C** *configfile*

  Specify alternate bcfg2.conf location.

- **-E** *encoding*

  Specify the encoding of config files.

- **-Q** *path*

  Specify the path to the server repository.

- **-S** *server*

  Manually specify the server location (as opposed to using the value in bcfg2.conf). This should be in the format "*https://server:port*"

- **-d**

  Enable debugging output.

- **-h**

  Print usage information.

- **-o** *logfile*

  Writes a log to the specified path.

- **--ssl-key=***key*

  Specify the path to the SSL key.

- **-v**

  Enable verbose output.

- **-x** *password*

  Use 'password' for client communication.

## MODES

- **backup**

  Create an archive of the entire Bcfg2 repository.

- **client *action* *client* \[attribute=value\]**

  Add, edit, or remove clients entries in metadata (See CLIENT OPTIONS below).

- **compare *old* *new***

  Compare two client configurations. Can be used to verify consistent behavior between releases. Determine differences between files or directories (See COMPARE OPTIONS below).

- **dbshell**

  Call the Django 'dbshell' command on the configured database.

- **init**

  Initialize a new repository (interactive).

- **initreports**

  Initialize the Reporting database.

- **minestruct *client* \[-f xml-file\] \[-g groups\]**

  Build structure entries based on client statistics extra entries (See MINESTRUCT OPTIONS below).

- **perf**

  Query server for performance data.

- **pull *client* *entry-type* *entry-name***

  Install configuration information into repo based on client bad entries (See PULL OPTIONS below).

- **purgereports**

  Purge historic and expired data from the Reporting database

- **reportssqlall**

  Call the Django 'shell' command on the Reporting database.

- **reportsstats**

  Print Reporting database statistics.

- **scrubreports**

  Scrub the Reporting database for duplicate reasons and orphaned entries.

- **shell**

  Call the Django 'shell' command on the configured database.

- **syncdb**

  Sync the Django ORM with the configured database.

- **tidy**

  Remove unused files from repository.

- **updatereports**

  Apply database schema updates to the Reporting database.

- **validatedb**

  Call the Django 'validate' command on the configured database.

- **viz \[-H\] \[-b\] \[-k\] \[-o png-file\]**

  Create a graphviz diagram of client, group and bundle information (See VIZ OPTIONS below).

- **xcmd**

  Provides a XML-RPC Command Interface to the bcfg2-server.

### CLIENT OPTIONS

- **mode**

  One of the following.

  - ***add***

    Add a client

  - ***del***

    Delete a client

  - ***list***

    List all client entries

- **client**

  Specify the client's name.

- **attribute=value**

  Set attribute values when adding a new client. Allowed attributes are 'profile', 'uuid', 'password', 'location', 'secure, and 'address'.

### COMPARE OPTIONS

- **-d *N*, --diff-lines *N***

  Show only N lines of a diff

- **-c, --color**

  Show colors even if not ryn from a TTY

- **-q, --quiet**

  Only show that entries differ, not how they differ

- **old**

  Specify the location of the old configuration(s).

- **new**

  Specify the location of the new configuration(s).

### MINESTRUCT OPTIONS

- **client**

  Client whose metadata is to be searched for extra entries.

- **-g *groups***

  Hierarchy of groups in which to place the extra entries in.

- **-f *outputfile***

  Specify the xml file in which to write the extra entries.

### PULL OPTIONS

- **client**

  Specify the name of the client to search for.

- **entry type**

  Specify the type of the entry to pull.

- **entry name**

  Specify the name of the entry to pull.

### VIZ OPTIONS

- **-H, --includehosts**

  Include hosts in diagram.

- **-b, --includebundles**

  Include bundles in diagram.

- **-o *outfile*, --outfile *outfile***

  Write to outfile file instead of stdout.

- **-k, --includekey**

  Add a shape/color key.

- **-c *hostname*, --only-client *hostname***

  Only show groups and bundles for the named client

## SEE ALSO

*[bcfg2-info(8)](/bcfg2-info/8.md)*, *[bcfg2-server(8)](/bcfg2-server/8.md)*
