cback3-amazons3-sync - Synchronize a local directory with an Amazon S3 bucket
] sourceDir s3BucketUrl
This is the Cedar Backup 3 Amazon S3 sync tool. It synchronizes a local
directory to an Amazon S3 cloud storage bucket. After the sync is complete, a
validation step is taken. An error is reported if the contents of the bucket
do not match the source directory, or if the indicated size for any file
Generally, one can run the cback3-amazons3-sync command with no special
switches. This will start it using the default Cedar Backup log file, etc. You
only need to use the switches if you need to change the default behavior.
The main difference between Cedar Backup version 2 and Cedar Backup version 3 is
the targeted Python interpreter. For most users, migration should be
straightforward. See the discussion found at cback3(1) or reference the Cedar
Backup user guide.
- The source directory on a local disk.
- The URL specifying the location of the Amazon S3 cloud
storage bucket to synchronize with, like
- -h, --help
- Display usage/help listing.
- -V, --version
- Display version information.
- -b, --verbose
- Print verbose output to the screen as well writing to the
logfile. When this option is enabled, most information that would normally
be written to the logfile will also be written to the screen.
- -l, --logfile
- Specify the path to an alternate logfile. The default
logfile file is /var/log/cback3.log.
- -o, --owner
- Specify the ownership of the logfile, in the form
user:group. The default ownership is root:adm, to match the Debian
standard for most logfiles. This value will only be used when creating a
new logfile. If the logfile already exists when the cback3 script is
executed, it will retain its existing ownership and mode. Only user and
group names may be used, not numeric uid and gid values.
- -m, --mode
- Specify the permissions for the logfile, using the numeric
mode as in chmod(1). The default mode is 640 (-rw-r-----). This
value will only be used when creating a new logfile. If the logfile
already exists when the cback3 script is executed, it will retain its
existing ownership and mode.
- -O, --output
- Record some sub-command output to the logfile. When this
option is enabled, all output from system commands will be logged. This
might be useful for debugging or just for reference.
- -d, --debug
- Write debugging information to the logfile. This option
produces a high volume of output, and would generally only be needed when
debugging a problem. This option implies the --output option, as
- -s, --stack
- Dump a Python stack trace instead of swallowing exceptions.
This forces Cedar Backup to dump the entire Python stack trace associated
with an error, rather than just progating last message it received back up
to the user interface. Under some circumstances, this is useful
information to include along with a bug report.
- -D, --diagnostics
- Display runtime diagnostic information and then exit. This
diagnostic information is often useful when filing a bug report.
This command returns 0 (zero) upon normal completion, and several other error
codes related to particular errors.
- The Python interpreter version is < 3.4.
- Error processing command-line arguments.
- Error configuring logging.
- Backup was interrupted with a CTRL-C or similar.
- Other error during processing.
This tool is a wrapper over the Amazon AWS CLI interface found in the aws(1)
command. Specifically, cback3-amazons3-sync invokes "aws s3 sync"
followed by "aws s3api list-objects".
Cedar Backup itself is designed to run as root. However, cback3-amazons3-sync
can be run safely as any user that is configured to use the Amazon AWS CLI
interface. The aws(1) command will be executed by the same user which is
You must configure the AWS CLI interface to have a valid connection to Amazon S3
infrastructure before using cback3-amazons3-sync. For more information about
how to accomplish this, see the Cedar Backup user guide.
- /var/log/cback3.log - Default log file
- The project homepage is:
If you find a bug, please report it.
If possible, give me the output from --diagnostics, all of the error messages
that the script printed into its log, and also any stack-traces (exceptions)
that Python printed. It would be even better if you could tell me how to
reproduce the problem, for instance by sending me your configuration file.
Report bugs to <firstname.lastname@example.org> or by using the BitBucket
Written and maintained by Kenneth J. Pronovici <email@example.com> with
contributions from others.
Copyright (c) 2004-2011,2013-2015 Kenneth J. Pronovici.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR