Amazon S3 is an online storage web service offered by Amazon. I tested it back in 2006, since I was quite surprised that Amazon offered such an innovative product.
I found JungleDisk to be a nice and free utility to access your storage space, since Amazon doesn't offer standardized WebDAV access. While I was still hoping that Jungle Tools would release their software as free and open source, they decided to charge a (reasonable) fee of $20 for this software. I lost interest in continuing testing, since I intended to use S3 as backup space and still prefer open source software for critical tasks.
There were some open source projects trying to replace JungleDisk, but I couldn't get one to work reliable enough for a backup solution.
I was really pleased when I read that Steven Harms reviewed s3fs, a FUSE file system for Amazon S3.
Assumed you already own a Amazon Web Service Account, just make sure you've got Git and Python bindings for fuse installed:
sudo apt-get install python-fuse python-boto git-core
Since there is no Ubuntu package of s3fs available, checkout the source code:
git clone git://git.fedorahosted.org/s3fs ~/s3fs
To play around with s3fs, just start it up with:
# create a bucket, while providing your key pair.
~/s3fs/src/s3fs -C -c <bucketname> -p "<aws access key>" -s "<aws secret access key>"
# format bucket
~/s3fs/src/s3fs -C -f <bucketname> -p "<aws access key>" -s "<aws secret access key>"
# create mount point
# Unfortunately, I couldn't convince s3fs to accept the key pair as a command line option when mounting.
# So, just export them:
export AWS_ACCESS_KEY_ID=<aws access key>
export AWS_SECRET_ACCESS_KEY=<aws secret access key>
# mount it!
~/s3fs/src/s3fs -o bucket=<bucketname> ~/backupS3/
Finally you're able to use your S3 space with GUI-tools.
"WARNING You should not yet store any data that you do not have otherwise backed up on s3fs! development on this filesystem is early enough that data loss/corruption may occur!! "
It works quite nice for me. I just wished s3fs could provide some visual feedback when it finishes copying. An integration with gvfs would be great, so I could get an simple progress bar for the copy process.