Command line options for downloading from BALSA are not functional with our older Aspera server. We are planning to Implement one or more alternatives to the current GUI-based Aspera Connect in the next couple of months, but we don’t have it available yet. What we recommend for now is to mount the target server filesystem from a computer on the same network/in the same building that does have a GUI/browser to interact with Aspera.
Best,
Jenn
The materials in this message are private and may contain Protected Healthcare Information or other information of a sensitive nature. If you are not the intended recipient, be advised that any unauthorized use, disclosure, copying or the taking of any action in reliance on the contents of this information is strictly prohibited. If you have received this email in error, please immediately notify the sender via telephone or return mail.
Downloading AABC from BALSA via command line (HPC / cluster)
You need the IBM Aspera command-line client (ascp). On some clusters it is provided as a module:
module load aspera-connect/3.11.0.5If which ascp fails, ask your admin to install Aspera or provide a module.
BALSA uses Aspera Connect and provides a JSON “transfer spec” (payload) that contains the file paths, host/user, ports, token, cookie, and SSH fingerprint.
Go to the AABC project page on BALSA and select the files you want.
Open Chrome DevTools → Network tab.
Click Download (this triggers Aspera Connect and may ask you to choose a local destination folder).
In DevTools → Network, find the request that starts the transfer (often called start).
Open that request and copy the Request Payload / payload JSON.
Save it on the cluster as a file, e.g. payload.txt.
Note: tokens can expire. If your cluster download fails with auth errors, regenerate a fresh payload.
Aspera Connect uses an “SSH-bypass” key named:
aspera_tokenauth_id_rsa (passphrase-protected)
On Windows it is typically located at:
C:\Users\<USERNAME>\AppData\Local\Programs\IBM\Aspera Connect\etc\aspera_tokenauth_id_rsa
Copy that file to the cluster:
mkdir -p ~/.ssh chmod 700 ~/.ssh # copy file to ~/.ssh/aspera_tokenauth_id_rsa chmod 600 ~/.ssh/aspera_tokenauth_id_rsaThe key is encrypted; Aspera Connect provides the passphrase to ascp at runtime via the environment variable ASPERA_SCP_PASS.
Start an AABC download on Windows so ascp.exe is actively running.
Open Sysinternals Process Explorer (Google this program and download it. This is free)
Locate the running ascp.exe process.
Open its Properties → Environment tab.
Find ASPERA_SCP_PASS and copy its value.
On the cluster, store it in a protected file:
printf '%s\n' 'PASTE_PASSPHRASE_HERE' > ~/.ssh/aspera_pass chmod 600 ~/.ssh/aspera_passSecurity note: Treat this like a password. Keep it private (chmod 600) and don’t paste it into shared documents.
For large downloads, avoid running on the login node.
Use sbatch (or an interactive compute job if your site prefers that).
Make it private/executable:
chmod 700 download_tags.shSave as aspera_download.sbatch:
#!/usr/bin/env bashSubmit:
sbatch aspera_download.sbatchIf it fails with authentication errors, your token likely expired → regenerate a fresh payload.
If compute nodes cannot reach the Aspera host/port (firewall), you may need a transfer node or a throttled login-node download.
Logs are in: DEST/log/
Awesome! Thanks for sharing.
--
Michael Harms, Ph.D.
-----------------------------------------------------------
Professor of Psychiatry
Washington University School of Medicine
Department of Psychiatry, Box 8134
660 South Euclid Ave.
St. Louis, MO 63110