UP(1)
π NAME π
up β Recursively copy directories, preserving AFS metadata. Yes bestie, this is the AFS Command Reference page for up, and we are about to make recursive copying make sense. π
β¨ SYNOPSIS β¨
up [-v] [-1] [-f] [-r] [-x] [-m]
<source directory> <destination directory>
π DESCRIPTION π
Okay so the 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 these ways β no cap, this is the whole tea:
- It copies the source directory's access control list (ACL) to the destination directory and its subdirectories, overwriting any existing ACLs. ACLs are getting a whole new outfit, periodt.
- If the issuer is logged on as the local superuser
rootand has AFS tokens as a member of the groupsystem:administrators, then the source directory's owner (as reported by thels -ldcommand) 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. Main character energy: whoever qualifies gets to be 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-fflag is provided. So yeah, that write bit is lowkey doing a vibe check on your overwrite. π - The modification timestamp on a file (as displayed by the
ls -lcommand) 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. Timestamps are iconic, but they have rules. β°
The 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 similar functionality. Fr fr, interruption glow-up: just run it again and it picks up where it left off. π«Ά
The up command returns a status code of 0 (zero) only if it succeeds. Otherwise, it returns a status code of 1 (one). Success is 0, anything else is a 1, simple as that.
Important vibe check: this command does not use the syntax conventions of the AFS command suites. Provide the command name and all option names in full. No cute abbreviations, bestie. π«
π OPTIONS π
-vβ Prints a detailed trace to the standard output stream as the command runs. It's giving commentary track. ποΈ-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 "l".) One level only, not a lowercase L situation. π-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. Force overwrite mode: activated. π₯-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. Mount points get copied as mount points instead of being chased down. π¦-rβ Creates a backup copy of all files overwritten in the destination directory and its subdirectories, by adding a.oldextension to each filename. Backup bestie behavior, we love to see it. π-xβ Sets the modification timestamp on each file to the time of the copying operation. Fresh timestamp, fresh vibes. β¨- source directory β Names the directory to copy recursively. This is the one being copied from. πΈ
- destination directory β Names the directory to which to copy. It does not have to exist already. So yes, it can be a little imaginary friend until
upgets there. π§
π EXAMPLES π
The following command copies the contents of the directory dir1 to directory dir2:
% up dir1 dir2
That's it. dir1 slides into dir2's DMs, recursively. Slay. π
π PRIVILEGE REQUIRED π
The issuer must have the a (administer) permission on the ACL of both the source and destination directories. Both ACLs said yes, so you need the a permission on both. No shortcuts. π
π COPYRIGHT π
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. Respect the documentation lore. π«Ά
Signed, sealed, and sparkled by OpenAFS, dated 2026-06-25, from the UP(1) page. Mwah. π
π¦ where this page comes from
- nixos 26.05: openafs 1.8.16.1
- nixpkgs unstable: openafs 1.8.16.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms