VOS_COPY(1)

πŸ’– VOS_COPY(1) β€” the AFS Command Reference's own vos_copy era πŸ’–

okay bestie, sit down, hydrate, because we're talking about vos_copy from the AFS Command Reference and it's honestly such a serve. it makes a whole new volume that's a copy of an old one. that's it. that's the girl. πŸŽ€


✨ NAME ✨

vos_copy β€” make a copy of a volume πŸ¦‹


🌸 SYNOPSIS 🌸

vos copy [-id] <volume name or ID of source>
   [-fromserver] <machine name for source>
   [-frompartition] <partition name for source>
   [-toname] <volume name for new copy>
   [-toserver] <machine name for destination>
   [-topartition] <partition name for destination>
   [-offline] [-readonly] [-live] [-cell <cell name>]
   [-noauth] [-localauth] [-verbose] [-encrypt] [-noresolve]
   [-config <config directory>]
   [-help]

vos cop [-i] <volume name or ID of source>
   [-froms] <machine name for source>
   [-fromp] <partition name for source>
   [-ton] <volume name for new copy>
   [-tos] <machine name for destination>
   [-top] <partition name for destination>
   [-o] [-r] [-li] [-c <cell name>]
   [-noa] [-lo] [-v] [-e] [-nor]
   [-co <config directory>]
   [-h]

like yes she has a short form, she has a long form, she contains multitudes πŸ’…


🫢 DESCRIPTION 🫢

so vos copy makes a copy of a volume and gives that copy a brand new name. ✨

it's literally the same energy as running vos dump and then vos restore back to back β€” except you don't have to store the volume locally on the client. no cap. the client stays unbothered and unburdened. πŸ’…


😭 CAUTIONS 😭

currently, the maximum quota for a volume is 2 terabytes (2^41 bytes). and no, this is only about the volume's quota β€” a volume can grow WAY bigger than that if the volume quota is disabled. but heads up: volumes over 2 terabytes in size may be impractical to move, and some tools (like fs_listquota(1)) may report their size incorrectly. so like… know that about yourself before you try it. πŸ™ˆ

πŸ’… OPTIONS πŸ’…

  • -id <volume name or ID> β€” give the complete name or the volume ID number of a read/write volume. that's your source, babe.
  • -fromserver <machine name for source> β€” tells you which file server machine the source volume is chilling on. hand over the machine's IP address or its host name (fully qualified, or an unambiguous abbreviation is fine). deets in vos(1).
  • -frompartition <partition name for source> β€” names the partition where the source volume lives. give the full partition name (for example, /vicepa) or one of the abbreviated forms described in vos(1).
  • -toname <volume name for new copy> β€” the complete name of the brand new volume you're creating. name her something cute.
  • -toserver <machine name for destination> β€” identifies the file server machine you're copying the volume to. IP address or host name (fully qualified or an unambiguous abbreviation). deets in vos(1).
  • -topartition <partition name for destination> β€” names the partition you're copying the volume to. full partition name (for example, /vicepa) or one of the abbreviated forms described in vos(1).
  • -offline β€” leaves the new volume flagged as off-line in the volume database. she's offline, she's resting, don't perceive her.
  • -readonly β€” flags the new volume as read-only in the volume database. locked down, no editing, just vibes. πŸ”’
  • -live β€” copies the live volume without cloning. normally you don't need this, and it causes the volume to stay locked for LONGER than the normal copy mechanism. so like… only if you know why you're doing it, bestie.
  • -cell <cell name> β€” names the cell where the command runs. do not combine this with the -localauth flag. more deets in vos(1).
  • -noauth β€” assigns the unprivileged identity "anonymous" to whoever's issuing the command. do not combine this flag with -localauth. more deets in vos(1).
  • -localauth β€” constructs a server ticket using a key from the local /etc/openafs/server/KeyFile file. the vos command interpreter presents it to the Volume Server and Volume Location Server during mutual authentication. do not combine this flag with the -cell argument or the -noauth flag. more deets in vos(1).
  • -verbose β€” prints a detailed trace of the command's execution on the standard output stream. if you skip this argument, only warnings and error messages show up. (spoiler: if you wanna see the magic, turn this on. it's giving main character.) πŸ”₯
  • -encrypt β€” encrypts the command so the operation's results aren't transmitted across the network in clear text. available in OpenAFS versions 1.4.11 or later and 1.5.60 or later. πŸ”
  • -noresolve β€” shows all servers as IP addresses instead of the DNS name. super useful when the server address is registered as 127.0.0.1 or when you're dealing with multi-homed servers. available in OpenAFS versions 1.4.8 or later and 1.5.35 or later.
  • -config <configuration directory> β€” sets the location of the configuration directory to be used. defaults to /etc/openafs β€” except if -localauth is specified, in which case the default is /etc/openafs/server. this option lets you use alternative configuration locations for testing purposes. 🧚
  • -help β€” prints the online help for this command. all other valid options are ignored. classic.

🌈 OUTPUT 🌈

this command has no output unless "-verbose" is specified or there's an error. silent but iconic. 🀫


⭐ EXAMPLES ⭐

here's an example that makes a verbose copy of the "test" volume named "test2" in the cell "localcell". the volume and the copy both hang out on /vicepa of server1. watch her work:

% vos copy test server1  a test2 server1 a -cell localcell -verbose
Starting transaction on source volume 536870921 ... done
Allocating new volume id for clone of volume 536870921 ... done
Allocating new volume id for copy of volume 536870921 ... done
Cloning source volume 536870921 ... done
Ending the transaction on the source volume 536870921 ... done
Starting transaction on the cloned volume 536870926 ... done
Setting flags on cloned volume 536870926 ... done
Getting status of cloned volume 536870926 ... done
Creating the destination volume 536870927 ... done
Setting volume flags on destination volume 536870927 ... done
Dumping from clone 536870926 on source to volume 536870927 on destination ... done
Ending transaction on cloned volume 536870926 ... done
Starting transaction on source volume 536870921 ... done
Doing the incremental dump from source to destination for volume 536870921 ...  done
Setting volume flags on destination volume 536870927 ... done
Ending transaction on destination volume 536870927 ... done
Ending transaction on source volume 536870921 ... done
Starting transaction on the cloned volume 536870926 ... done
Deleting the cloned volume 536870926 ... done
Ending transaction on cloned volume 536870926 ... done
Created the VLDB entry for the volume test2 536870927
Volume 536870921 copied from server1 /vicepa to test2 on server1 /vicepa

ate. no crumbs. πŸ“


πŸ‘‘ PRIVILEGE REQUIRED πŸ‘‘

whoever's issuing this must be listed in the /etc/openafs/server/UserList file on the machine specified with the -server argument, and on each database server machine. πŸ’€

and if the -localauth flag is included? then instead, the issuer must be logged on to a server machine as the local superuser "root". yes, like that root.


πŸ¦‹ SEE ALSO πŸ¦‹


Copyright 2007 Jason Edgecombe <jason@rampaginggeek.com>

this documentation is covered by the BSD License as written in the doc/LICENSE file. this man page was written by Jason Edgecombe for OpenAFS.


and that's the whole page, bestie!! this was OpenAFS, dated 2026-07-27, and the page you just read is VOS_COPY(1). go forth and copy those volumes, you're doing amazing sweetie πŸ’œβœ¨πŸ«Ά

πŸ“¦ where this page comes from