Log in as root to your existing server.
Verify whether rsync is installed on your existing server.
rsync -version
If rsync is not installed, install it based on your distribution.
apt-get install rsync
Use SSH to log in to your Rackspace server from your existing server. Generate an SSH key from your existing server if you have not done so already:
ssh-keygen -t rsa -b 4096 -v
Transfer your SSH key to your Rackspace server. Substitute your new Rackspace server’s IP address in the following command.
ssh-copy-id 111.344.65.781
Copy your existing server files by using rsync. Replace the IP address after root@ with the IP address of your Rackspace cloud server.
Note: Adjust the following command to fit your specific situation. For example, you might need additional excludes or to change the source and destination paths.
rsync --exclude="/sys/*" --exclude="/proc/*" -aHSKDvz -e ssh / root@111.344.65.781:/media/xvda/
rsync flags
`-r` = recursive
`-a` = stands for "archive" and syncs recursively and preserves symbolic links, special and device files, modification times, group, owner, and permissions.
`-n` (or --dry-run) = dry-run for testing
`-P` = combines flags `--progress` and `--partial`
Sync with remote system
rsync -anP ~/dir1/ username@remote_host:destination_directory
https://support.rackspace.com/how-to/cloud-files-uploading-large-files/
Example login via commandline
swift -A https://auth.api.rackspacecloud.com/v1.0 -U username -K api_key stat -v
Uploading multiple files. Important: be sure to call command from directory containing files to be uploaded.
swift -A https://auth.api.rackspacecloud.com/v1.0 -U username -K api_key upload <Rackspace container/folder> <file name_1> <filename_2> <filename_3> --changed --skip-identical