Transfer files to Lightsail for Research virtual computers using Secure Copy
You can transfer files from your local computer to a virtual computer in Amazon Lightsail for Research using Secure Copy (SCP). With this process, you can transfer multiple files, or entire directories, at one time.
Note
You can also establish a remote display protocol connection to your virtual computer using the browser-based Amazon DCV client available in the Lightsail for Research console. With the Amazon DCV client, you can quickly transfer individual files. For more information, see Access your Lightsail for Research virtual computer's operating system.
Complete the prerequisites
Complete the following prerequisites before you get started.
-
Create a virtual computer in Lightsail for Research. For more information, see Create a Lightsail for Research virtual computer.
-
Make sure the virtual computer that you want to connect to is in a running state. Also, make note of the name of the virtual computer and the AWS Region in which it was created. You will need this information later in this process. For more information, see View Lightsail for Research virtual computer details.
-
Download and install the AWS Command Line Interface (AWS CLI). For more information, see Installing or updating the latest version of the AWS CLI in the AWS Command Line Interface User Guide for Version 2.
-
Configure the AWS CLI to access your AWS account. For more information, see Configuration basics in the AWS Command Line Interface User Guide for Version 2.
-
Download and install jq. It's a lightweight and flexible command line JSON processor used in the following procedures to extract key pair details. For more information about downloading and installing jq, see Download jq
on the jq website. -
Make sure that port 22 is open on the virtual computer you want to connect to. That is the default port used for SSH. It's open by default. But if you closed it, you must reopen it before continuing. For more information, see Manage firewall ports for Lightsail for Research virtual computers.
-
Get the Lightsail default key pair (DKP) for your virtual computer. For more information, see Create a Lightsail for Research virtual computer.
Connect to a virtual computer using SCP
Complete one of the following procedures to connect to your virtual computer in Lightsail for Research using SCP.
This procedure applies to you if your local computer uses a Windows
operating system. This procedure uses the get-instance
AWS CLI
command to obtain the username and public IP address of the instance you
want to connect to. For more information, see get-instance in the AWS CLI Command
Reference.
Important
Make sure you get the Lightsail default key pair (DKP) for the
virtual computer you're trying to connect to before you start this
procedure. For more information, see Get a key pair for a Lightsail for Research virtual computer. That procedure outputs the private
key of the Lightsail DKP to a dkp_rsa
file that is used
in one of the following commands.
-
Open a Command Prompt window.
-
Enter the following command to display the public IP address and username of your virtual computer. In the command, replace
with the code of the AWS Region in which the virtual computer was created, such asregion-code
us-east-2
. Replace
with the name of the virtual computer that you want to connect to.computer-name
aws lightsail get-instance --region
region-code
--instance-namecomputer-name
| jq -r ".instance.username" & aws lightsail get-instance --regionregion-code
--instance-namecomputer-name
| jq -r ".instance.publicIpAddress"Example
aws lightsail get-instance --region
us-east-2
--instance-nameMyJupyterComputer
| jq -r ".instance.username" & aws lightsail get-instance --regionus-east-2
--instance-nameMyJupyterComputer
| jq -r ".instance.publicIpAddress"The response will display the username and public IP address of the virtual computer as shown in the following example. Note these values, because you need them in the following step of this procedure.
-
Enter the following command to establish an SCP connection with your virtual computer and transfer files to it.
scp -i dkp_rsa -r "
source-folder
"user-name
@public-ip-address
:destination-directory
In the command, replace:
-
with the folder on your local computer that contains the files you want to transfer.source-folder
-
with the username from the previous step of this procedure (such asuser-name
ubuntu
). -
with the public IP address of your virtual computer from the previous step of this procedure.public-ip-address
-
with the path to the directory on the virtual computer where you want to copy your files.destination-directory
The following example copies all files from the
C:\Files
folder on the local computer to the/home/lightsail-user/Uploads/
directory on the remote virtual computer.scp -i dkp_rsa -r "
C:\Files
"ubuntu
@192.0.2.0
:/home/lightsail-user/Uploads/
You should see a response similar to the following example. It shows each file that was transferred from the origin folder to the destination directory. You should now be able to access those files on your virtual computer.
-
This procedure applies to you if your local computer uses a Linux, Unix,
or a macOS operating system. This procedure uses the
get-instance
AWS CLI command to obtain the username and
public IP address of the instance you want to connect to. For more
information, see get-instance in the AWS CLI Command
Reference.
Important
Make sure you get the Lightsail default key pair (DKP) for the
virtual computer you're trying to connect to before you start this
procedure. For more information, see Get a key pair for a Lightsail for Research virtual computer. That procedure outputs the private
key of the Lightsail DKP to a dkp_rsa
file that is used
in one of the following commands.
-
Open a Terminal window.
-
Enter the following command to display the public IP address and username of your virtual computer. In the command, replace
with the code of the AWS Region in which the virtual computer was created, such asregion-code
us-east-2
. Replace
with the name of the virtual computer that you want to connect to.computer-name
aws lightsail get-instance --region
region-code
--instance-namecomputer-name
| jq -r '.instance.username' & aws lightsail get-instance --regionregion-code
--instance-namecomputer-name
| jq -r '.instance.publicIpAddress'Example
aws lightsail get-instance --region
us-east-2
--instance-nameMyJupyterComputer
| jq -r '.instance.username' & aws lightsail get-instance --regionus-east-2
--instance-nameMyJupyterComputer
| jq -r '.instance.publicIpAddress'The response will display the username and public IP address of the virtual computer as shown in the following example. Note these values, because you need them in the following step of this procedure.
-
Enter the following command to establish an SCP connection with your virtual computer and transfer files to it.
scp -i dkp_rsa -r '
source-folder
'user-name
@public-ip-address
:destination-directory
In the command, replace:
-
with the folder on your local computer that contains the files you want to transfer.source-folder
-
with the username from the previous step of this procedure (such asuser-name
ubuntu
). -
with the public IP address of your virtual computer from the previous step of this procedure.public-ip-address
-
with the path to the directory on the virtual computer where you want to copy your files.destination-directory
The following example copies all files from the
C:\Files
folder on the local computer to the/home/lightsail-user/Uploads/
directory on the remote virtual computer.scp -i dkp_rsa -r '
Files
'ubuntu
@192.0.2.0
:/home/lightsail-user/Uploads/
You should see a response similar to the following example. It shows each file that was transferred from the origin folder to the destination directory. You should now be able to access those files on your virtual computer.
-