S3QLCP(1) S3QL S3QLCP(1)NAME
s3qlcp - Copy-on-write replication on S3QL file systems
SYNOPSIS
s3qlcp [options] <source-dir> <dest-dir>
DESCRIPTION
S3QL is a file system for online data storage. Before using S3QL, make sure to consult the full documentation (rather than just the man
pages which only briefly document the available userspace commands).
The s3qlcp command duplicates the directory tree source-dir into dest-dir without physically copying the file contents. Both source and
destination must lie inside the same S3QL file system.
The replication will not take any additional space. Only if one of directories is modified later on, the modified data will take additional
storage space.
s3qlcp can only be called by the user that mounted the file system and (if the file system was mounted with --allow-other or --allow-root)
the root user. This limitation might be removed in the future (see issue 155).
Note that:
o After the replication, both source and target directory will still be completely ordinary directories. You can regard <src> as a snapshot
of <target> or vice versa. However, the most common usage of s3qlcp is to regularly duplicate the same source directory, say documents,
to different target directories. For a e.g. monthly replication, the target directories would typically be named something like docu-
ments_January for the replication in January, documents_February for the replication in February etc. In this case it is clear that the
target directories should be regarded as snapshots of the source directory.
o Exactly the same effect could be achieved by an ordinary copy program like cp -a. However, this procedure would be orders of magnitude
slower, because cp would have to read every file completely (so that S3QL had to fetch all the data over the network from the backend)
before writing them into the destination folder.
Snapshotting vs Hardlinking
Snapshot support in S3QL is inspired by the hardlinking feature that is offered by programs like rsync or storeBackup. These programs can
create a hardlink instead of copying a file if an identical file already exists in the backup. However, using hardlinks has two large dis-
advantages:
o backups and restores always have to be made with a special program that takes care of the hardlinking. The backup must not be touched by
any other programs (they may make changes that inadvertently affect other hardlinked files)
o special care needs to be taken to handle files which are already hardlinked (the restore program needs to know that the hardlink was not
just introduced by the backup program to safe space)
S3QL snapshots do not have these problems, and they can be used with any backup program.
OPTIONS
The s3qlcp command accepts the following options:
--debug
activate debugging output
--quiet
be really quiet
--version
just print program version and exit
EXIT STATUS
s3qlcp returns exit code 0 if the operation succeeded and 1 if some error occurred.
SEE ALSO
The S3QL homepage is at http://code.google.com/p/s3ql/.
The full S3QL documentation should also be installed somewhere on your system, common locations are /usr/share/doc/s3ql or
/usr/local/doc/s3ql.
COPYRIGHT
2008-2011, Nikolaus Rath
1.11.1 August 27, 2014 S3QLCP(1)
Check Out this Related Man Page
CP(1) FSF CP(1)NAME
cp - copy files and directories
SYNOPSIS
cp [OPTION]... SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... --target-directory=DIRECTORY SOURCE...
DESCRIPTION
Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.
Mandatory arguments to long options are mandatory for short options too.
-a, --archive
same as -dpR
--backup[=CONTROL]
make a backup of each existing destination file
-b like --backup but does not accept an argument
--copy-contents
copy contents of special files when recursive
-d same as --no-dereference --preserve=link
--no-dereference
never follow symbolic links
-f, --force
if an existing destination file cannot be opened, remove it and try again
-i, --interactive
prompt before overwrite
-H follow command-line symbolic links
-l, --link
link files instead of copying
-L, --dereference
always follow symbolic links
-p same as --preserve=mode,ownership,timestamps
--preserve[=ATTR_LIST]
preserve the specified attributes (default: mode,ownership,timestamps), if possible additional attributes: links, all
--no-preserve=ATTR_LIST
don't preserve the specified attributes
--parents
append source path to DIRECTORY
-P same as `--no-dereference'
-R, -r, --recursive
copy directories recursively
--remove-destination
remove each existing destination file before attempting to open it (contrast with --force)
--reply={yes,no,query}
specify how to handle the prompt about an existing destination file
--sparse=WHEN
control creation of sparse files
--strip-trailing-slashes remove any trailing slashes from each SOURCE
argument
-s, --symbolic-link
make symbolic links instead of copying
-S, --suffix=SUFFIX
override the usual backup suffix
--target-directory=DIRECTORY
move all SOURCE arguments into DIRECTORY
-u, --update
copy only when the SOURCE file is newer than the destination file or when the destination file is missing
-v, --verbose
explain what is being done
-x, --one-file-system
stay on this file system
--help display this help and exit
--version
output version information and exit
By default, sparse SOURCE files are detected by a crude heuristic and the corresponding DEST file is made sparse as well. That is the
behavior selected by --sparse=auto. Specify --sparse=always to create a sparse DEST file whenever the SOURCE file contains a long enough
sequence of zero bytes. Use --sparse=never to inhibit creation of sparse files.
The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX. The version control method may be selected via the --backup
option or through the VERSION_CONTROL environment variable. Here are the values:
none, off
never make backups (even if --backup is given)
numbered, t
make numbered backups
existing, nil
numbered if numbered backups exist, simple otherwise
simple, never
always make simple backups
As a special case, cp makes a backup of SOURCE when the force and backup options are given and SOURCE and DEST are the same name for an
existing, regular file.
AUTHOR
Written by Torbjorn Granlund, David MacKenzie, and Jim Meyering.
REPORTING BUGS
Report bugs to <bug-coreutils@gnu.org>.
COPYRIGHT
Copyright (C) 2002 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICU-
LAR PURPOSE.
SEE ALSO
The full documentation for cp is maintained as a Texinfo manual. If the info and cp programs are properly installed at your site, the com-
mand
info cp
should give you access to the complete manual.
cp (coreutils) 4.5.3 February 2003 CP(1)