Installing the Swiftly Cloud Files Client


About Swiftly

Swiftly is a client tool you can use to upload and download objects to your Cloud Files account. Swiftly understands the requirements for storing large objects in Cloud Files. If you have a very large object (such as a virtual disk image file), swiftly will take care of splitting up the file into smaller "segments" and then creating the large object "manifest" for you.

Here's where you can find more information about swiftly:

The current version of swiftly is 2.02.

Installing Swiftly on Ubuntu

These instructions were verified on a server built from a Rackspace Ubuntu 13.10 public image.

Invoke the following instructions from a bash shell on your server. You'll need to be the root user.

# update the apt-get database
apt-get update

# install pre-requisites
apt-get install python-pip

# install swiftly
pip install swiftly

Installing Swiftly on CentOS

These instructions were verified on a server built from a Rackspace CentOS 6.5 public image.

Invoke the following instructions from a bash shell on your server. You'll need to be the root user.

# install swiftly
pip install swiftly

Optional: Install GNU Screen

GNU "screen" is a program that allows you to start a screen session. A screen session looks just like an ordinary shell except that you can "detatch" from a screen session, and whatever commands you are running will continue running in your screen session. It's really useful when you've started a long running process (such as a large object upload) from the command line. Then if your laptop battery dies, or your wireless connection is lost, or someone trips over your desktop's ethernet cable, the process can continue running in your screen session.

Installing screen in Ubuntu

As root, invoke the following command from a bash shell:

apt-get screen

Installing screen in CentOS

As root, invoke the following command from a bash shell:

yum install screen

Using screen

To start screen:

screen -s /bin/bash -S display-Name-For-Screen

The -s tells screen what shell to use, the -S is handy if you're going to have several screen sessions running at the same time; it will make it easier to tell which one is which.

Once you have screen started, you can just type in regular bash commands. Screen commands, that is, commands requesting screen to do something, are escaped with Control-a . Some screen commands are single character. For example, to detach from screen, you'd type

C-a d

Other screen commands are longer. To use these, you first type

C-a :

and then you type the rest of the command in the status line of the screen window. For example, you can log screen's output to a file so that you can go back and review it later. To do this type:

C-a : logfile name-of-log-file
C-a : log

As you'd expect, the first command sets the name of the file in which the log will be recorded. The second command toggles logging on/off, so since this is the first time you typed it, it will turn logging on.

We encourage to create a log of screen output so that you'll have a record of everything that happened while you were detached from screen.

You can learn more about screen by visiting http://www.gnu.org/software/screen/manual/screen.html

To exit screen, just type Control-d (without prefacing it with Control-a).

Reattaching to a Running Screen

You can get a list of what screen sessions you currently have running by invoking this command from a bash shell:

screen -list

Your response will look something like this:

There are screens on:
	3064.some-other-stuff	(Detached)
	3004.large-obj-transfer	(Detached)
	3073.even-more-stuff	(Detached)
3 Sockets in /var/run/screen/S-root.

Suppose you want to reattach to the screen named "large-obj-transfer". Note its screen session number (in this example, 3004) and then use this command:

screen -r 3004


Was this content helpful?




© 2011-2013 Rackspace US, Inc.

Except where otherwise noted, content on this site is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License


See license specifics and DISCLAIMER