afs-up - Recursively copy directories, preserving AFS metadata
afs-up [-v] [-1] [-f] [-r] [-x] [-m]
<source directory> <destination directory>
The afs-up command recursively copies the files and subdirectories in a
specified source directory to a specified destination directory. The
command interpreter changes the destination directory and the files and
subdirectories in it in the following ways:
· It copies the source directory’s access control list (ACL) to the
destination directory and its subdirectories, overwriting any
· If the issuer is logged on as the local superuser root and has AFS
tokens as a member of the group system:administrators, then the
source directory’s owner (as reported by the "ls -ld" command)
becomes the owner of the destination directory and all files and
subdirectories in it. Otherwise, the issuer’s user name is recorded
as the owner.
· If a file or directory exists in both the source and destination
directories, the source version overwrites the destination version.
The overwrite operation fails if the first (user) "w" (write) mode
bit is turned off on the version in the destination directory,
unless the -f flag is provided.
· The modification timestamp on a file (as displayed by the "ls -l"
command) in the source directory overwrites the timestamp on a file
of the same name in the destination directory, but the timestamp on
an existing subdirectory in the destination directory remains
unchanged. If the command creates a new subdirectory in the
destination directory, the new subdirectory’s timestamp is set to
the time of the copy operation, rather than to the timestamp that
the subdirectory has in the source directory.
The afs-up command is idempotent, meaning that if its execution is
interrupted by a network, server machine, or process outage, then a
subsequent reissue of the same command continues from the interruption
point, rather than starting over at the beginning. This saves time and
reduces network traffic in comparison to the UNIX commands that provide
The afs-up command returns a status code of 0 (zero) only if it
succeeds. Otherwise, it returns a status code of 1 (one).
This command does not use the syntax conventions of the AFS command
suites. Provide the command name and all option names in full.
-v Prints a detailed trace to the standard output stream as the
-1 Copies only the files in the top level source directory to the
destination directory, rather than copying recursively through
subdirectories. The source directory’s ACL still overwrites the
destination directory’s. (This is the number one, not the letter
-f Overwrites existing directories, subdirectories, and files even if
the first (user) "w" (write) mode bit is turned off on the version
in the destination directory.
-m Recognize and copy mount points rather than traversing the volumes
they reference during the recursive copy operation. Without -m,
up’s default behavior is to copy the contents of all volumes and
subvolumes mounted under the source directory into the volume
containing the destination directory.
-r Creates a backup copy of all files overwritten in the destination
directory and its subdirectories, by adding a ".old" extension to
-x Sets the modification timestamp on each file to the time of the
Names the directory to copy recursively.
Names the directory to which to copy. It does not have to exist
The following command copies the contents of the directory dir1 to
% afs-up dir1 dir2
The issuer must have the "a" (administer) permission on the ACL of both
the source and destination directories.
IBM Corporation 2000. <http://www.ibm.com/> All Rights Reserved.
This documentation is covered by the IBM Public License Version 1.0.
It was converted from HTML to POD by software written by Chas Williams
and Russ Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.