Choose your transfer method
Runpod supports four different file transfer methods, each optimized for specific use cases:Method | Best for | Setup required | File size limit |
---|---|---|---|
runpodctl | Quick, occasional transfers | Preinstalled on Pods | Small to medium files |
SCP | Standard file operations | SSH configuration | Any size |
rsync | Large datasets, syncing | SSH + rsync installation | Any size |
Cloud sync | Backup, multi-environment sharing | Cloud provider setup | Provider dependent |
runpodctl
The simplest option for occasional transfers. Uses secure one-time codes and requires no setup since it’s pre-installed on all Pods. Perfect for quick file exchanges. To installrunpodctl
on your local machine, see the installation guide.
SCP
A reliable, standard method that works over SSH. Ideal for users comfortable with command-line tools who need to transfer both individual files and directories. To configure your Pod for SSH access, see the (SSH setup guide).rsync
The most powerful option, featuring incremental transfers, compression, and detailed progress reporting. Essential for large datasets, regular synchronization, and preserving file attributes. To set uprsync
:
- Configure SSH access (same as for SCP).
- Install rsync on both machines:
apt install rsync
- Ensure your local machine is running a Linux or WSL environment.
Cloud sync
Direct synchronization with cloud storage providers like AWS S3, Google Cloud Storage, or Dropbox. Best for creating backups or sharing files across multiple environments. To learn more, see the cloud sync configuration guide.Transfer with runpodctl
The Runpod CLI offers the most straightforward approach to file transfer using secure one-time codes. This method works great for occasional transfers but consider other options for large files.Send a file
From the source machine (your local computer or a Pod), run:8338-galileo-collect-fidel
is your unique, one-time transfer code.
Receive a file
On the destination machine, use the code provided by the send command:Transfer with SCP
SCP provides reliable file transfer over SSH connections. Use this method when you need standard command-line file operations.Basic syntax
The general format for SCP commands (replace43201
and 194.26.196.6
with your Pod’s port and IP):
If your private key is stored elsewhere or you’re using Windows Command Prompt, update the key path accordingly. For quick one-time setups, consider password-based SSH.
Send files to your Pod
Transfer a single file:-r
for recursive copying):
Download files from your Pod
Simply reverse the source and destination:Transfer with rsync
rsync
offers advanced synchronization features and is the best choice for large datasets or regular backup operations.
rsync
requires a Linux environment or WSL on Windows.Basic syntax
Essential flags
-a
(archive) - Preserves permissions, timestamps, and attributes (essential for directories)-v
(verbose) - Shows detailed transfer information-z
(compress) - Compresses data during transfer (saves bandwidth, uses more CPU)-p
(progress) - Displays transfer progress-d
(delete) - Removes files from destination that don’t exist in source
Send files to your Pod
Transfer with progress and compression:Download from your Pod
Directory synchronization
Transfer directory contents only (note the trailing slash):Incremental transfers
rsync’s key advantage is intelligent synchronization. Files that already exist at the destination aren’t transferred again: First transfer (full copy):Sync with cloud storage
Connect your Pod storage directly to cloud providers for seamless backup and synchronization. To set up cloud sync:- Navigate to your My Pods page
- Click the Cloud Sync option for your Pod
- Follow the provider-specific configuration steps
Transfer with Google Drive
You can also use these Colab notebooks to transfer files between Pods and Google Drive:Troubleshooting
Here are some common issues and possible fixes: Connection refused errors:- Verify SSH is properly configured on your Pod.
- Check that the correct port and IP address are being used.
- Ensure port 22 is exposed in your Pod configuration.
- Confirm your SSH key is correctly specified with
-i
- Verify the key has appropriate permissions (
chmod 600 ~/.ssh/id_ed25519
) - Try password-based authentication for quick tests.
- Use
rsync
instead of SCP for better reliability. - Add the
-z
flag to compress data during transfer. - Consider splitting very large files before transfer.