BPCP(1)

πŸ“¦ version 3.2.1, in ubuntu jammy

πŸ’– BPCP(1) πŸ’–

okay bestie, sit DOWN, because today we're talking about bpcp β€” a remote copy utility for delay tolerant networks utilizing NASA JPL's Interplanetary Overlay Network (ION). yes, THE NASA JPL. we're copying files across SPACE, basically. iconic βœ¨πŸ›°οΈ


✨ NAME ✨

bpcp β€” a remote copy utility for delay tolerant networks utilizing NASA JPL's Interplanetary Overlay Network (ION) πŸš€πŸ’«


πŸŽ€ SYNOPSIS πŸŽ€

bpcp [-dqr | -v] [-L bundle_lifetime] [-C custody_on/off] [-S class_of_service] [host1:]file1 ... [host2:]file2

πŸ¦‹ DESCRIPTION πŸ¦‹

so like. bpcp copies files between hosts utilizing NASA JPL's Interplanetary Overlay Network (ION) to provide a delay tolerant network. and no, "delay tolerant" is not a metaphor for your group chat replies, it's literally a whole networking paradigm πŸ’…

File copies from local to remote, remote to local, or remote to remote are all permitted. the range?? unmatched. 🫢

bpcp depends on ION to do any authentication or encryption of file transfers. so don't come to bpcp asking for security, that's ION's job, iykyk πŸ”

🚨 MAJOR ONE, do not skip this: All convergence layers over which bpcp runs MUST be reliable. not "probably reliable", not "reliable-ish". reliable. periodt.

πŸ’… the options, bestie

The options are permitted as follows:

  • -d β€” Debug output. Repeat it for increased verbosity. like, stack it. one -d? chill. more -ds? now we're yapping πŸ”
  • -q β€” Quiet. Do not output status messages. the "leave me alone, i'm focusing" flag 🀫
  • -r β€” Recursive. yes queen, go into the folders 🌳
  • -v β€” Display version information. hello, who are you πŸ‘‹
  • -L bundle_lifetime β€” Bundle lifetime in seconds. Default is 86400 seconds (that's 1 day, for the non-math girlies) ⏳
  • -C BP_custody β€” Acceptable values are ON/OFF, YES/NO, 1/0. Default is ON. 🀝
  • -S class_of_service β€” Bundle Protocol Class of Service for this transfer. Available options are:
    • 0 β€” Bulk Priority 🐌
    • 1 β€” Standard Priority 🚢
    • 2 β€” Expedited Priority πŸƒπŸ’¨

Default is Standard Priority. so 1, if you were wondering. no cap.


😭 the CFDP of it all

bpcp utilizes CFDP to preform the actual file transfers. and this has several important implications, so let's get into it:

  1. First, ION's CFDP implementation requires that reliable convergence layers be used to transfer the data. (told you it was serious.)
  2. Second, file permissions are not transferred. Files will be made executable on copy. so like, everything's getting the executable glow-up whether it asked or not πŸ’€
  3. Third, symbolic links are ignored for local to remote transfers, and their target is copied for remote transfers. the links said "not today" πŸ™ˆ
  4. Fourth, all hosts must be specified using ION's IPN naming scheme. that's the whole [host:]file situation up in the synopsis, bestie πŸ“›

πŸ‘‘ the daemon situation

In order to preform remote to local transfers or remote to remote transfers, bpcpd must be running on the remote hosts. like, it's required. it's the main character of the remote side 🫑

🚨 BUT β€” and this is the important part β€” bpcp should NOT be run simultaneously with bpcpd or cfdptest. do not do it. i'm begging. the vibes will be rancid and things will break. πŸ’€

🌈 EXIT STATUS 🌈

  • "0" β€” bpcp terminated normally. slay, we ate ✨
  • "1" β€” bpcp terminated abnormally. Check console and the ion.log file for error messages. go read the receipts πŸ”πŸ˜­

πŸ“ FILES πŸ“

No configuration files are needed. nothing to configure, nothing to forget to configure. we love a low-maintenance queen πŸ’–


🧚 ENVIRONMENT 🧚

No environment variables apply. zero. none. your env is safe from us 🌸


πŸ’€ BUGS πŸ’€

Report bugs to <ion-bugs@korgano.eecs.ohiou.edu> πŸ“§ β€” they want to hear from you, fr fr


⭐ SEE ALSO ⭐

bpcpd(1), ion(3), cfdptest(1)

go read those too, they're part of the lore πŸ¦‹


and that's the whole page bestie!! πŸŽ€ this one's perl v5.24.1, dated 2016-07-07, from the CFDP executables era β€” vintage, but still serving πŸ’…πŸ‘‘ mwah, go copy some files across space πŸš€βœ¨

πŸ“¦ where this page comes from