# How to Transfer Files Between Machines Machines are Linux and Windows virtual machines with persistent storage, GPU options, and free unlimited bandwidth. They’re designed for high-performance computing (HPC) workloads. There are several methods to transfer files between your Paperspace machines or between a machine and your local device. Depending on your needs, you can use one of the following methods: - [FileZilla](#transfer-files-using-filezilla): A graphical File Transfer Protocol (FTP) tool for transferring files between machines. - **FileZilla Server**: A cross-platform FTP server, used to transfer files securely between it and any FileZilla clients. - **FileZilla Client**: An open source FTP app, used to transfer files between it and an FTP server. - [Windows’ Remote Desktop Protocol (RDP)](#transfer-files-using-windows-rdp): A Windows feature to securely transfer files between machines. - [`scp` (Secure Copy Protocol)](#transfer-files-using-scp): A command line tool for secure file transfers. - [`wget` (World Wide Web Get)](#transfer-files-using-wget): An open source command line tool for downloading files from the internet, such as public storage buckets or URLs. ## Prerequisites If you’re moving 10 GB or more of data or models, we recommend first [copying the files (`cp`)](https://www.digitalocean.com/community/tutorials/basic-linux-navigation-and-file-management#copying-files-and-directories-with-cp) instead of moving them (`mv`) so the original files stay intact as a backup, and then [using checksums to verify the file transfer](https://www.digitalocean.com/community/tutorials/how-to-verify-downloaded-files). Once you confirm the transfer was successful, you can remove (`rm`) the original files. ### Retrieve Public IP Address Before you transfer your files, get the public IP address of the machine you want to transfer files to or from. To find your machine’s IP address, go to the [Paperspace console](https://console.paperspace.com/), in the top-left corner, click the drop-down menu, select **CORE**, click **Machines** tab, then select the machine you want to get the IP address of. From the machine’s overview page, in the top-right corner, click the **Settings** tab. In the **Settings** page, in the **Public IP** section, copy your machine’s IP address for later use. If your machine doesn’t have a public IP address, [assign a public IP address](https://docs.digitalocean.com/products/paperspace/machines/how-to/manage-public-ips/index.html.md) to your machine. ## Transfer Files Using FileZilla ### Set Up FileZilla Server To configure your FileZilla Server, [connect to the machine](https://docs.digitalocean.com/products/paperspace/machines/how-to/connect/index.html.md) you want as the FileZilla Server, then download and install the [FileZilla Server](https://filezilla-project.org/download.php?platform=win64&type=server). Once the FileZilla Server file is downloaded, [set up your server](https://wiki.filezilla-project.org/FileZilla_FTP_Server#Installation_and_Setup_-_Windows), and [configure its network](https://wiki.filezilla-project.org/Network_Configuration#Setting_up_and_testing_FileZilla_Server) and [set the passive mode public IP address](https://wiki.filezilla-project.org/Network_Configuration#Passive_mode_2) to the public IP address of the machine you’re using as the FileZilla Server. All the default settings should remain unchanged except for the public IP address. Afterwards, [add a user to your FileZilla Server](https://filezillapro.com/docs/server/advanced-options/filezilla-server-users-panel/). To ensure your file transfers remain uninterrupted, [disable all Windows firewalls on your machine](https://support.microsoft.com/en-us/windows/turn-microsoft-defender-firewall-on-or-off-ec0844f7-aebd-0583-67fe-601ecf5d774f). ### Set Up FileZilla Client To set up a FileZilla Client, [connect to the machine](https://docs.digitalocean.com/products/paperspace/machines/how-to/connect/index.html.md) you want as the client, then download and install the [FileZilla Client](https://filezilla-project.org/download.php?platform=win64). Once you have your server and client set up, [connect them](https://wiki.filezilla-project.org/Using#Connecting_to_an_FTP_server), then begin [transferring files](https://wiki.filezilla-project.org/Using#Transferring_files). For more general usage, you can refer to [FileZilla’s documentation](https://wiki.filezilla-project.org/Documentation). ## Transfer Files Using Windows’ RDP **Note**: You can only use Windows’ RDP for Windows-based machines. ### Set Up RDP Server To set up an RDP Server, [connect to the machine](https://docs.digitalocean.com/products/paperspace/machines/how-to/connect/index.html.md) you want to use as the server, then [enable Remote Desktop](https://learn.microsoft.com/en-us/windows-server/remote/remote-desktop-services/clients/remote-desktop-allow-access). Afterwards, [add users to your RDP Server](https://learn.microsoft.com/en-us/troubleshoot/windows-server/remote/add-user-services-rdp-permissions). If the user is correctly identified, the username should change to the machine’s ID followed by the username, for example, for a Paperspace machine, `PSLLCO7TVKWR\paperspace`. ### Connect Clients to RDP Server To connect a client to your RDP Server, [connect to the machine](https://docs.digitalocean.com/products/paperspace/machines/how-to/connect/index.html.md) you want to use as a client, then retrieve the [Windows’ password](https://docs.digitalocean.com/products/paperspace/machines/how-to/use-windows-features/index.html.md#password-tool) and its [public IP address](#prerequisites). Then, [specify the RDP Server by using the RDP Server’s IP address](https://support.microsoft.com/en-us/windows/how-to-use-remote-desktop-5fe128d5-8fb1-7a23-3b8a-41e636865e8c). You may need to use your machine’s [Windows password](https://docs.digitalocean.com/products/paperspace/machines/how-to/use-windows-features/index.html.md#password-tool) and [IP address](#prerequisites) for authentication. After connecting your client to your RDP server, [transfer files between them](https://support.microsoft.com/en-us/topic/how-to-gain-access-to-local-files-in-a-remote-desktop-session-to-a-windows-xp-based-or-to-a-windows-server-2003-based-host-computer-021ee183-e6be-4201-809e-c355c47b17f4#bkmk_5). ## Transfer Files Using `scp` **Note**: For Windows-based machines, install [Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/install) in order to use `scp`. Before using `scp`, ensure you have an [SSH key](https://docs.digitalocean.com/products/paperspace/accounts-and-teams/add-ssh-keys/index.html.md) to authenticate your file transfers. To transfer files, [connect to the machine](https://docs.digitalocean.com/products/paperspace/machines/how-to/connect/index.html.md) you want to transfer files from, then run the following command to download a file: ```bash scp -i ~/.ssh/your-key.pem ~/path/to/local_file paperspace@your-machine-ip-address:~/. ``` This `scp` command uses your SSH key, the old location of the file (for example, your local machine), and the new destination (for example, your Paperspace machine). ## Transfer Files Using `wget` To transfer files using `wget`, [connect to the machine](https://docs.digitalocean.com/products/paperspace/machines/how-to/connect/index.html.md) you want to download files for, then run the following command to download a file: ```bash wget https://example.com/example-data-set.tar.gz ```