# noust backup

Create, inspect and restore application backups.

```bash
noust backup [OPTIONS] [COMMAND] [ARGS]...
```

Subcommands: [`create`](#noust-backup-create), [`delete`](#noust-backup-delete), [`destination`](#noust-backup-destination), [`drill`](#noust-backup-drill), [`drills`](#noust-backup-drills), [`encryption`](#noust-backup-encryption), [`failures`](#noust-backup-failures), [`import`](#noust-backup-import), [`info`](#noust-backup-info), [`list`](#noust-backup-list), [`priority`](#noust-backup-priority), [`push`](#noust-backup-push), [`remote-list`](#noust-backup-remote-list), [`restore`](#noust-backup-restore), [`schedule`](#noust-backup-schedule), [`storage`](#noust-backup-storage), [`sweep`](#noust-backup-sweep), [`verify`](#noust-backup-verify), [`volumes`](#noust-backup-volumes)

## noust backup create

Back an application up into one restorable archive.

```bash
noust backup create [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `-m`, `--description` | Note to store with the backup. | `` |
| `--no-env` | Leave the .env files out of the archive. |  |
| `--include-node-modules` | Include node_modules. The archive gets much bigger. |  |
| `--include-build` | Include the build output (.next, dist, build). |  |
| `--include-databases`, `--include-db` | Dump the application databases into the archive. |  |
| `--include-docker-volumes` | Copy the application's Docker volumes into the archive. |  |
| `--schemas` | Dump only this PostgreSQL schema. Repeat for several. |  |
| `--redis-method` | How to capture Redis: a point-in-time rdb or the aof log. | `rdb` |
| `--retention-count` | Keep at most this many backups of the application. |  |
| `--retention-days` | Delete backups of the application older than this many days. |  |
| `-t`, `--tags` | Comma-separated tags to file the backup under. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup delete

Delete a backup and remove its archive from disk.

```bash
noust backup delete [OPTIONS] BACKUP_ID
```

Arguments: `backup_id`

| Option | What it does | Default |
|---|---|---|
| `-f`, `-y`, `--force` | Do not ask for confirmation. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup destination

Manage remote backup destinations (rclone).

```bash
noust backup destination [OPTIONS] COMMAND [ARGS]...
```

Subcommands: [`add`](#noust-backup-destination-add), [`list`](#noust-backup-destination-list), [`protect`](#noust-backup-destination-protect), [`remove`](#noust-backup-destination-remove), [`show-key`](#noust-backup-destination-show-key), [`test`](#noust-backup-destination-test), [`update`](#noust-backup-destination-update)

## noust backup destination add

Create a backup destination.

```bash
noust backup destination add [OPTIONS] NAME
```

Arguments: `name`

| Option | What it does | Default |
|---|---|---|
| `--type` | Backend: sftp, smb, ftp, webdav, s3, b2, azureblob, gcs, drive, onedrive, dropbox, box, pcloud, local. |  |
| `--field` | A non-secret field, repeatable (host, user, port, path...). |  |
| `--stdin` | Read the backend's secret field (password, key or token) from standard input. |  |
| `--prompt` | Prompt for the backend's secret field without echoing it, twice. |  |
| `--encrypt`, `--no-encrypt` | Wrap the remote in an rclone crypt backend; run 'show-key' once to keep a copy. On unless the backend is 'local' or backup.encrypt_new_destinations is false: a backup holds the .env and the database dumps, so it leaves this server encrypted unless you say --no-encrypt. |  |
| `--key-stdin` | Encrypt with an existing key read from standard input, as 'show-key' printed it (its text, its --json, or the two passphrases on two lines). Implies --encrypt. |  |
| `--skip-test` | Keep the destination without trying the connection first. By default one that does not connect is not saved, and an object store's bucket must exist. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup destination list

List the configured backup destinations.

```bash
noust backup destination list [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the destinations as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup destination protect

Encrypt the credentials of the destinations made before they were.

```bash
noust backup destination protect [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup destination remove

Remove a backup destination and its secrets. Backups already sent there are kept.

```bash
noust backup destination remove [OPTIONS] NAME
```

Arguments: `name`

| Option | What it does | Default |
|---|---|---|
| `-f`, `--force` | Do not ask for confirmation, and remove it even if a schedule references it. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup destination show-key

Reveal a destination's encryption passphrases, for safekeeping.

```bash
noust backup destination show-key [OPTIONS] NAME
```

Arguments: `name`

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the keys as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup destination test

Check that a backup destination can be reached.

```bash
noust backup destination test [OPTIONS] NAME
```

Arguments: `name`

| Option | What it does | Default |
|---|---|---|
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup destination update

Change a backup destination's fields. A blank secret field keeps its stored value.

```bash
noust backup destination update [OPTIONS] NAME
```

Arguments: `name`

| Option | What it does | Default |
|---|---|---|
| `--field` | A non-secret field. |  |
| `--stdin` | Read the backend's secret field from standard input. |  |
| `--prompt` | Prompt for the backend's secret field. |  |
| `--encrypt`, `--no-encrypt` | Turn encryption on or off. |  |
| `--skip-test` | Keep the change without trying the connection first. By default a change that does not connect leaves the destination as it was. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup drill

Rehearse restoring an application's newest backup, and keep the report.

```bash
noust backup drill [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--backup` | Rehearse this backup instead of the newest. |  |
| `--json` | Print the report as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup drills

List the restore drills that were run, newest first.

```bash
noust backup drills [OPTIONS] [DOMAIN]
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--limit` | How many reports to list. | `10` |
| `--json` | Print the reports as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup encryption

Seal the backups kept on this server's disk, so a copy of the disk does not open them.

```bash
noust backup encryption [OPTIONS] COMMAND [ARGS]...
```

Subcommands: [`disable`](#noust-backup-encryption-disable), [`enable`](#noust-backup-encryption-enable), [`import-key`](#noust-backup-encryption-import-key), [`rotate`](#noust-backup-encryption-rotate), [`seal-existing`](#noust-backup-encryption-seal-existing), [`show-key`](#noust-backup-encryption-show-key), [`status`](#noust-backup-encryption-status)

## noust backup encryption disable

Stop sealing new backups. Every key is kept, so what was sealed still opens.

```bash
noust backup encryption disable [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--yes`, `-y` | Do not ask. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup encryption enable

Seal every backup this server makes from now on, and show the key once.

```bash
noust backup encryption enable [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--yes`, `-y` | Do not ask. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup encryption import-key

Put back a key this server lost, from the copy you kept elsewhere.

```bash
noust backup encryption import-key [OPTIONS] KEY_ID
```

Arguments: `key_id`

| Option | What it does | Default |
|---|---|---|
| `--passphrase-file` | Read the key from this file instead of asking for it. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup encryption rotate

Make a new key for the backups made from now on. The old key stays, and opens what it sealed.

```bash
noust backup encryption rotate [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--yes`, `-y` | Do not ask. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup encryption seal-existing

Seal the backups already on this disk that were made in clear.

```bash
noust backup encryption seal-existing [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--yes`, `-y` | Do not ask. |  |
| `--json` | Print the report as JSON (needs --yes: nothing is asked). |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup encryption show-key

Show a key (the current one by default), to keep it somewhere else.

```bash
noust backup encryption show-key [OPTIONS] [KEY_ID]
```

Arguments: `key_id`

| Option | What it does | Default |
|---|---|---|
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup encryption status

Say whether new backups are sealed, with which key, and how many are in clear.

```bash
noust backup encryption status [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the status as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup failures

Read the whole output of the backups that failed.

```bash
noust backup failures [OPTIONS] COMMAND [ARGS]...
```

Subcommands: [`list`](#noust-backup-failures-list), [`show`](#noust-backup-failures-show)

## noust backup failures list

List the backups that failed, newest first, without their output.

```bash
noust backup failures list [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--subject` | Only the failures about this (a domain, Noust, engine/database). |  |
| `--limit` | How many to list, newest first. | `20` |
| `--json` | Print the list as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup failures show

Print all that a failed backup said, the record a notice names.

```bash
noust backup failures show [OPTIONS] FAILURE_ID
```

Arguments: `failure_id`

| Option | What it does | Default |
|---|---|---|
| `--raw` | Print only the output, exactly as it was recorded. |  |
| `--json` | Print the record, output included, as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup import

Move Noust backups found in DIRECTORY into the backup directory.

```bash
noust backup import [OPTIONS] DIRECTORY
```

Arguments: `directory`

| Option | What it does | Default |
|---|---|---|
| `-v`, `--verbose` | Show the detail of each step. |  |
| `--dry-run` | Rehearse without changing anything. Read-only checks still run. |  |
| `--no-color` | Never emit colour. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup info

Show what a backup contains and where it came from.

```bash
noust backup info [OPTIONS] BACKUP_ID
```

Arguments: `backup_id`

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the backup's metadata as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup list

List the backups on this server, newest first.

```bash
noust backup list [OPTIONS] [DOMAIN]
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `-t`, `--tags` | Only show backups carrying one of these tags. |  |
| `-n`, `--limit` | Show at most this many backups. |  |
| `--open` | Print the panel URL for the backup list, opening it if a display is available. |  |
| `--json` | Print the backup list as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup priority

How hard the backups lean on the server while they run: nice, disk class, CPU ceiling.

```bash
noust backup priority [OPTIONS] COMMAND [ARGS]...
```

Subcommands: [`apply`](#noust-backup-priority-apply), [`set`](#noust-backup-priority-set), [`show`](#noust-backup-priority-show)

## noust backup priority apply

Bring the backup services on this server to the configured settings.

```bash
noust backup priority apply [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the units that changed as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup priority set

Change the settings and bring the backup services already on this server along.

```bash
noust backup priority set [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--nice` | Nice value, 0 to 19. |  |
| `--io-class` | Disk scheduling class: best-effort, or idle (only when nothing else wants the disk). |  |
| `--io-priority` | Priority inside best-effort: 0 first, 7 last. |  |
| `--cpu-quota` | Ceiling in percent of one CPU (50 is half a core, 200 two), or 'none' for no ceiling. |  |
| `--json` | Print the result as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup priority show

Show the settings every backup service is written with.

```bash
noust backup priority show [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the settings as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup push

Upload a local backup to a remote destination.

```bash
noust backup push [OPTIONS] BACKUP_ID DESTINATION
```

Arguments: `backup_id`, `destination`

| Option | What it does | Default |
|---|---|---|
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup remote-list

List what a remote backup destination holds.

```bash
noust backup remote-list [OPTIONS] DESTINATION
```

Arguments: `destination`

| Option | What it does | Default |
|---|---|---|
| `--app` | List this application's backups instead of the destination's. |  |
| `--json` | Print the listing as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup restore

Put an application back the way a backup left it.

```bash
noust backup restore [OPTIONS] BACKUP_ID
```

Arguments: `backup_id`

| Option | What it does | Default |
|---|---|---|
| `--from` | Download the backup from this remote destination first, instead of using a local one. |  |
| `--app` | Application the backup belongs to on the destination (with --from); derived from the backup id when omitted. |  |
| `--target-domain` | Restore into this domain instead of the original one. |  |
| `--no-env` | Keep the current .env files. |  |
| `--no-verify` | Skip the checksum check before restoring. |  |
| `--databases-only` | Put back only the databases of a Compose stack the backup holds, leaving every file as it is. The application is stopped meanwhile. |  |
| `--schema-changed-ok` | Put back only the files even past deployments that changed the database schema. |  |
| `-f`, `--force` | Do not ask for confirmation. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup schedule

Back applications up automatically on a timer.

```bash
noust backup schedule [OPTIONS] COMMAND [ARGS]...
```

Subcommands: [`create`](#noust-backup-schedule-create), [`delete`](#noust-backup-schedule-delete), [`list`](#noust-backup-schedule-list), [`update`](#noust-backup-schedule-update)

## noust backup schedule create

Back an application up on a timer and drop its old scheduled backups.

```bash
noust backup schedule create [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--schedule` | hourly, daily, weekly, monthly, or a systemd OnCalendar expression. | `daily` |
| `--retention-count` | Keep at most this many of the backups this schedule makes (default: 7). 'default' leaves backup.max_per_app in charge, over every backup, as 2.1 did. |  |
| `--retention-days` | Delete this schedule's own backups older than this many days (default: 30). 'none' sets no age limit. |  |
| `--retention-gb` | The most the scheduled backups kept here may weigh together, in gigabytes, or 'none'. The newest always stays, whatever its size. | `none` |
| `--destination` | Push each backup to this remote destination, with its own retention. Repeatable. |  |
| `--remote-only` | Keep nothing on this server: delete each backup here once every destination holds it and its upload was checked. For a small disk; needs a --destination. |  |
| `--max-runtime` | Stop a run that takes longer than this: 90m, 2h, 1d or a number of seconds (1 minute to 7 days). No limit by default. |  |
| `--timezone` | Read the schedule in this time zone, such as Europe/Madrid (timedatectl list-timezones lists them). The server's clock by default. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup schedule delete

Stop backing an application up automatically.

```bash
noust backup schedule delete [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup schedule list

Show which applications back themselves up, and when they last did.

```bash
noust backup schedule list [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--team` | Only this team's. |  |
| `--project` | Only what lives in the projects with this name. |  |
| `--env` | Only what lives in the environments with this name. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup schedule update

Replace an application's backup schedule.

```bash
noust backup schedule update [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--schedule` | hourly, daily, weekly, monthly, or a systemd OnCalendar expression. | `daily` |
| `--retention-count` | Keep at most this many of the backups this schedule makes. Kept as it is when not given; 'default' leaves backup.max_per_app in charge. |  |
| `--retention-days` | Delete this schedule's own backups older than this many days. Kept as it is when not given; 'none' sets no age limit. |  |
| `--retention-gb` | The most the scheduled backups kept here may weigh together, in gigabytes, or 'none'. The newest always stays, whatever its size. Kept as it is when not given. |  |
| `--destination` | Push each backup to this remote destination, with its own retention. Repeatable. |  |
| `--remote-only`, `--keep-local` | Keep nothing on this server (delete each backup here once every destination holds it), or keep the local copies. Kept as it is when not given. |  |
| `--max-runtime` | Stop a run that takes longer than this: 90m, 2h, 1d or a number of seconds (1 minute to 7 days). No limit by default. |  |
| `--timezone` | Read the schedule in this time zone, such as Europe/Madrid (timedatectl list-timezones lists them). The server's clock by default. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup storage

Show how much disk the backups take, per application.

```bash
noust backup storage [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the storage usage as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup sweep

Delete the backups beyond every policy's retention, without waiting for a run.

```bash
noust backup sweep [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the report as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup verify

Check that a backup archive is intact and restorable.

```bash
noust backup verify [OPTIONS] BACKUP_ID
```

Arguments: `backup_id`

| Option | What it does | Default |
|---|---|---|
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup volumes

Back up an application's persistent data and Docker volumes on their own.

```bash
noust backup volumes [OPTIONS] COMMAND [ARGS]...
```

Subcommands: [`create`](#noust-backup-volumes-create), [`delete`](#noust-backup-volumes-delete), [`list`](#noust-backup-volumes-list), [`push`](#noust-backup-volumes-push), [`remote`](#noust-backup-volumes-remote), [`restore`](#noust-backup-volumes-restore), [`run`](#noust-backup-volumes-run), [`schedule`](#noust-backup-volumes-schedule), [`targets`](#noust-backup-volumes-targets), [`verify`](#noust-backup-volumes-verify)

## noust backup volumes create

Back up an application's data now, one archive per target.

```bash
noust backup volumes create [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--target` | Back up only this target (see 'targets'). Repeatable. |  |
| `--path` | Also back up this data directory. |  |
| `--consistency` | live copies while it runs (SQLite files are still taken whole), pause freezes the application for the copy, stop stops it. | `live` |
| `-m`, `--description` | A note to keep with the backups. | `` |
| `--json` | Print the backups as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup volumes delete

Delete a data backup from this server. Copies on destinations stay.

```bash
noust backup volumes delete [OPTIONS] BACKUP_ID
```

Arguments: `backup_id`

| Option | What it does | Default |
|---|---|---|
| `--force`, `-f`, `-y` | Do not ask for confirmation. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup volumes list

List the data backups on this server, newest first.

```bash
noust backup volumes list [OPTIONS] [DOMAIN]
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--target` | Only this target. |  |
| `--json` | Print the backups as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup volumes push

Send a data backup to a destination, after checking it.

```bash
noust backup volumes push [OPTIONS] BACKUP_ID
```

Arguments: `backup_id`

| Option | What it does | Default |
|---|---|---|
| `--to` | A backup destination. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup volumes remote

List what a destination holds of an application's data, by target.

```bash
noust backup volumes remote [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--from` | A backup destination. |  |
| `--json` | Print the listing as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup volumes restore

Put an application's data back as a backup held it.

```bash
noust backup volumes restore [OPTIONS] [BACKUP_ID]
```

Arguments: `backup_id`

| Option | What it does | Default |
|---|---|---|
| `--from` | Restore from a backup on this destination. |  |
| `--domain` | With --from: the application. |  |
| `--slug` | With --from: the target's folder there (see 'remote'). |  |
| `--file` | With --from: the archive's name there. |  |
| `--no-safety-copy` | Do not archive the current data first. Nothing is then left to go back to. |  |
| `--force`, `-f`, `-y` | Do not ask for confirmation. |  |
| `--json` | Print what the restore did as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup volumes run

Run an application's data backup policy now: back up, check, send, prune.

```bash
noust backup volumes run [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--json` | Print what the run did as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup volumes schedule

Set, show or remove an application's data backup policy.

```bash
noust backup volumes schedule [OPTIONS] COMMAND [ARGS]...
```

Subcommands: [`remove`](#noust-backup-volumes-schedule-remove), [`set`](#noust-backup-volumes-schedule-set), [`show`](#noust-backup-volumes-schedule-show)

## noust backup volumes schedule remove

Remove an application's data backup policy and its timer. Its backups stay.

```bash
noust backup volumes schedule remove [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--force`, `-f`, `-y` | Do not ask for confirmation. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup volumes schedule set

Create or replace an application's data backup policy, and its timer.

```bash
noust backup volumes schedule set [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--schedule` | hourly, daily, weekly, monthly or a systemd OnCalendar expression. | `daily` |
| `--target` | Back up only this target. Repeatable. |  |
| `--path` | Also back up this data directory. Repeatable. |  |
| `--keep` | Scheduled backups to keep per target, or 'none'. | `7` |
| `--keep-days` | Days to keep one, or 'none'. | `30` |
| `--keep-gb` | The most the scheduled backups kept here may weigh together, in gigabytes, or 'none'. The newest always stays, whatever its size. | `none` |
| `--to` | Send each backup to this destination, keeping COUNT, DAYS and GB there. Repeatable. |  |
| `--remote-only` | Keep nothing on this server: delete each backup here once every destination holds it and its upload was checked. For a small disk; needs a --to. |  |
| `--consistency` | live, pause (freeze the application for the copy) or stop. | `live` |
| `--disable` | Keep the settings but install no timer. |  |
| `--max-runtime` | Stop a run that takes longer than this: 90m, 2h, 1d or a number of seconds (1 minute to 7 days). No limit by default. |  |
| `--timezone` | Read the schedule in this time zone, such as Europe/Madrid (timedatectl list-timezones lists them). The server's clock by default. |  |
| `--json` | Print the policy as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup volumes schedule show

Show one application's data backup policy, or every policy.

```bash
noust backup volumes schedule show [OPTIONS] [DOMAIN]
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the policies as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup volumes targets

List the data an application declares: its persistent paths and Compose volumes.

```bash
noust backup volumes targets [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--path` | Also consider this data directory. |  |
| `--json` | Print the targets as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust backup volumes verify

Prove a data backup intact: its digest, its signature and that it reads through.

```bash
noust backup volumes verify [OPTIONS] BACKUP_ID
```

Arguments: `backup_id`

| Option | What it does | Default |
|---|---|---|
| `--deep` | Also extract it as a restore would. |  |
| `--json` | Print the verdict as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

