Skip to main content

Copying files

Move data to and from your machine with scp and rsync on its SSH port, and download models directly on the machine.

On this page

Everything on the machine is permanently erased when your reservation ends, so plan how you get data on and — more importantly — off. Every command needs your machine's SSH port, from the reservation page. The examples use 2211; a DGX Spark might be on 2201.

If you've set up the short name gpu in Using ~/.ssh/config, the port and user come from there, and gpu:~/ replaces renter@ssh.gputorent.com:~/ in every command below, without the port flag.

Download on the machine, not through your laptop

Models and datasets usually come from the internet — Hugging Face, GitHub, a cloud bucket. Download them on the machine, not to your computer first: it's faster and doesn't use your own connection. For example, with the Hugging Face CLI in a Python virtual environment in your home folder:

bash
ssh -p 2211 renter@ssh.gputorent.com
python3 -m venv ~/.venvs/hf
~/.venvs/hf/bin/pip install --upgrade "huggingface_hub[cli]"
~/.venvs/hf/bin/hf download mlx-community/Qwen3-8B-4bit

A startup script can start the download before you even log in.

scp: copy a few files

scp takes the port as a capital -P (lowercase -p means something else to scp).

Copy a file to your home folder on the machine:

bash
scp -P 2211 ./data.zip renter@ssh.gputorent.com:~/

Copy a file back:

bash
scp -P 2211 renter@ssh.gputorent.com:~/results.csv ./

Add -r to copy a folder:

bash
scp -P 2211 -r renter@ssh.gputorent.com:~/results ./results

With the config entry, the same copies are scp ./data.zip gpu:~/ and scp gpu:~/results.csv ./.

rsync: large or repeated transfers

rsync copies only what changed, can resume, and shows progress — the better choice for anything large. Give it the port inside its SSH command with -e:

bash
rsync -avP -e "ssh -p 2211" ./data/ renter@ssh.gputorent.com:~/data/
rsync -avP -e "ssh -p 2211" renter@ssh.gputorent.com:~/checkpoints/ ./checkpoints/

The trailing / on the source means "the contents of this folder". Run the same command again to pick up where an interrupted copy stopped. With the config entry, rsync -avP ./data/ gpu:~/data/ is enough.

On Windows, rsync isn't built in: use scp, or run rsync inside WSL.

Before your reservation ends

When the reservation ends, all of this is permanently erased:

  • your home folder,
  • your files anywhere else on the machine, such as /tmp and shared folders,
  • the tools you installed,
  • your crontab and background processes, and
  • the account itself, including any keys you added.

There are no backups, so:

  • Watch for the Ending soon email, an hour before the end (you can turn it off in Settings, but we recommend keeping it).
  • Start copying results well before 23:59 UTC on your last day. A large copy that's still running at the end is cut off.
  • Don't rely on the machine for storage between reservations: every reservation starts from a clean account.
  • For big outputs, push them from the machine to your own storage (for example an S3 bucket or the Hugging Face Hub) instead of pulling them through your connection.