GFAL-COPY(1)
GFAL-COPY(1) π
okay bestie, welcome to the gfal-copy manual page β this is the General Commands Manual entry for gfal-copy, and it's literally the moment your file-transfer life levels up β¨
NAME πΈ
gfal-copy β Copy files π
SYNOPSIS π¦
gfal-copy [ OPTION ]... SOURCE DEST1 [ DEST2 ]...
DESCRIPTION π
so like, gfal-copy Copies files from source to destination(s). bestie if you specify several destinations, the file will be copy in a chain: src -> dst1, dst1 -> dst2, ... β¨ And if you're using it in an interactive console, transfer information will be giving during the copy, which varies depending on the available information π
This command can be used to upload local files to remote file systems and to register files in the file catalog (see examples). no cap π«Ά
OPTIONS π
-h,--helpβ show help about the command. π-V,--versionβ output version information and exit.-v,--verboseβ verbose mode. Repeat up to 3 times for the most verbose mode. π₯-D,--definition DEFINITIONβ define properties for gfal2. Definitions have the following syntax:"CONFIG_GROUP:KEY=VALUE"-t,--timeout TIMEOUTβ global timeout for the execution of the command. Command is interrupted if time expires before it finishes. Note: A grace period of 30 seconds is given to the global timeout. β³-E,--cert CERTβ user certificate. (This option takes effect only afterX509_USER_PROXYenvironment variable and default`/tmp/x509up_u`id -u`` location cannot provide a certificate) π«--key KEYβ user private key. π-4β forces Gfal2 to use IPv4 addresses only. (Option valid only for GridFTP protocol)-6β forces Gfal2 to use IPv6 addresses only. (Option valid only for GridFTP protocol)-C,--client-info CLIENT_INFOβ provide custom client-side information.--log-file LOG_FILEβ write Gfal2 library logs to the given file location. π-f,--forceβ if destination file(s) cannot be overwritten, delete it and try again. π-p,--parentβ if the destination directory does not exist, create it.-n,--nbstreams NBSTREAMSβ specify the maximum number of parallel streams to use for the copy. π--tcp-buffersize TCP_BUFFERSIZEβ specify the TCP buffersize.-s,--src-spacetoken SRC_SPACETOKENβ source spacetoken to use for the transfer.-S,--dst-spacetoken DST_SPACETOKENβ destination spacetoken to use for the transfer.-T,--transfer-timeout TRANSFER_TIMEOUTβ timeout for the transfer operation. This timeout is enforced by each plugin, so it applies to the transfer operation only. Ensure it is equal or smaller than"--timeout"setting. β-K,--checksum CHECKSUMβ checksum algorithm to use, oralgorithm:value.--checksum-mode CHECKSUM_MODEβ checksum validation mode:'source','target'or'both'.--from-file FROM_FILEβ read sources from a file.--copy-mode COPY_MODEβ select the TPC copy mode:'pull','push'or'streamed'. (Option valid only for HTTP protocol)--just-copyβ just do the copy and skip any preparation (i.e. checksum, overwrite, stats etc.).
β οΈ Warning: use of this switch is incompatible with the presence of directories in the argument list. bestie do NOT mix them, fr fr π
--no-delegationβ disable TPC with proxy delegation.--evictβ evict source file from disk buffer when the transfer is finished.--scitag SCITAGβ SciTag transfer flow identifier (number in[65-65535]range) (available only for HTTP-TPC)-r,--recursiveβ copy directories recursively. π§--abort-on-failureβ abort the whole copy as soon as one failure is encountered.--dry-runβ print what would have happened without any actual change. π
EXAMPLES β¨
Copy a file to srm://endpoint.cern.ch/path/group, preferring a protocol as specified in the configuration file:
gfal-copy file:///etc/group srm://endpoint.cern.ch/path/
You can specify directly a protocol, if you know that it is supported by the end point:
gfal-copy file:///tmp/test gsiftp://endpoint.cern.ch/path/test
Do a chained copy:
gfal-copy file:///tmp/test gsiftp://endpoint.cern.ch/path/test
file:///tmp/test2
Registration of a file in the LFC:
gfal-copy file:///tmp/source gsiftp://endpoint.cern.ch/path/test
lfc://lfc-host.cern.ch/lfn
FILES π¦
/etc/gfal2.d/*β All configuration files in this directory affect the behavior of the underlying gfal2, in particular, the default choice of transfer protocols. πΈ
AUTHORS π«Ά
- Duarte Meneses <duarte.meneses@cern.ch>
- Adrien Devresse <adrien.devresse@cern.ch>
- Alejandro Alvarez Ayllon <alejandro.alvarez.ayllon@cern.ch>
- Andrea Manzi <andrea.manzi@cern.ch>
- Mihai Patrascoiu <mihai.patrascoiu@cern.ch>
- Joao Lopes <joao.pedro.batista.lopes@cern.ch>
SEE ALSO π
gfal-cat(1), gfal-chmod(1), gfal-copy(1), gfal-ls(1), gfal-mkdir(1), gfal-rename(1), gfal-rm(1), gfal-save(1), gfal-stat(1), gfal-sum(1), gfal-token(1), gfal-xattr(1), gfal-evict(1), gfal-bringonline(1), gfal-archivepoll(1)
and that's the whole thing bestie π this little icon is from v1.7.1, dated March 2022 β go forth and copy, you absolute main character πβ¨
π¦ where this page comes from
- debian trixie: gfal2-util-scripts 1.9.0-2 Β· Apache-2.0
- epel 10: gfal2-util-scripts 1.9.1-1.el10_2 Β· Apache-2.0
- epel 9: gfal2-util-scripts 1.9.1-1.el9 Β· Apache-2.0
- nixos 26.05: python3.13-gfal2-util 1.9.1
- nixos 26.05: python3.14-gfal2-util 1.9.1
- nixpkgs unstable: python3.13-gfal2-util 1.9.1
- nixpkgs unstable: python3.14-gfal2-util 1.9.1
- ubuntu noble: gfal2-util-scripts 1.8.1-1 Β· Apache-2.0
- ubuntu questing: gfal2-util-scripts 1.9.0-2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms