Amdumpd protocol

From The Open Source Backup Wiki (Amanda, MySQL Backup, BackupPC)

Jump to: navigation, search

This page picks up where Amandad Service Protocol leaves off.



amdumpd is started from amandad, 'amdumpd' must be added in the amandad argument if it is executed by xinetd.

It processes its REQ packet and produces a REP packet for the Amanda Protocol as described in Amandad Service Protocol.

An amdumpd REQ packet looks like:

SERVICE amidxtaped
OPTIONS features=features;auth=auth;

All of the interesting specification of which data to send comes on the control connection, below.

amdumpd sets up one stream in its REP packet:

CONNECT CTL ctlfd\n\n

Control Connection

The control connection is bidirectional. Amdumpd receive command, execute them and reply:


CONFIG config
Specify the backup set, there is no reply if the config is valid, the connection is aborted if the config is invalid.
FEATURES features
Ask server to send its features string, server reply with
FEATURES features
List all diskname, server reply with a quoted diskname by line, last line is ENDLIST
"/quoted disklist/with space"
DISK qdiskname
Disk to backup, server reply with:
DISK qdiskname added
Start a backup, If the server is busy, it reply with:
If the server do the backup, it reply 'DUMPING' at the start of the backup and reply 'ENDDUMP' when the dump is finished:
Check client configuration, If the server is busy, it reply with:
If the server do the check, it reply 'CHECKING' at the start of the check and reply 'ENDCHECK' when the check is finished:
Close the connection

DUMP command

The dump command execute the following command on the server if no DISK are specified:

amdump --no-taper --from-client config hostname

It execute the following if one or more DISK are specified:

amdump --no-taper --from-client config hostname qdiskname...


You can test it with:

amservice -f /dev/null -s localhost local amdumpd
Personal tools