Amazon S3
Pluses
- Reliable company, won't disappear overnight, not associated with piracy or on anyone's sh*t list.
- Works great on Linux, Windows, Mac, in a browser plugin, on the command line, and other odd places.
- Well known service, used in thousands of businesses
- Pay for what you use means not having to choose an account size
- Virtually unlimited capacity
- Access to files via web browser, command line tools and various libraries
- Option to publish a directory as its own web site
- Small accounts are OK and can be free to very inexpensive (~$10/yr for storing 10-15Gb).
Minuses
- You will need to copy/paste security keys out of the web interface into configuration files for the other tools you might want to use.
- You will need to write a cron job to sync automatically.
- No spending limit, so don't let bad guys get your keys.
- Charged for outbound transfer after free 1GB ~ around $0.12/GB.
- You need to know what you are doing, although there is documentation.
Amazon S3 is more of an industrial B2B solution but is usable. Many of the consumer services are built on top of S3. As such, it is a bit more involved to set up and works more like a secure file transfer than as a virtual drive. You get charged monthly for traffic and storage. I think inbound traffic is free but outgoing could be expensive if you have lots of traffic for restores.
One thing that makes it different from a consumer service is that there are no plans or usage limits, at least not any you can see. For storage, there is virtually infinite capacity. Instead, you are charged for usage. This means
there is a risk of being charged lots of money for someone stealing your account. In practice, I've never heard of this happening, though surely it must. It has never happened to me. Some people, though, don't recommend S3 as a web-hosting platform because popularity or evildoers might run up a bill. As a storage, only platform that is less of a problem provided that you keep your keys safe.
Currently, 5Gb of storage is free for new users for a year. The additional 10GB, if you are really going to use it, is currently $0.085/GB-month in Feb 2014. So that's US$0.85/month or about $10 for the first year, for storage. For traffic, incoming is free, and outgoing is 1GB/month free then currently $0.12/GB in Feb 2014. I think they also give away a free micro-VPS for a year if you want a server, too, but that is a separate service (EC2).
Full details, see: S3 storage pricing
Go to aws.amazon.com to sign up.
In ubuntu, install s3cmd to have a command line interface to upload/download files. s3cmd includes a sync option.
From the s3tools man page, you get all of this:
COMMANDS
s3cmd can do several actions specified by the following commands.
s3cmd mb s3://BUCKET
Make bucket
s3cmd rb s3://BUCKET
Remove bucket
s3cmd ls [s3://BUCKET[/PREFIX]]
List objects or buckets
s3cmd la
List all object in all buckets
s3cmd put FILE [FILE...] s3://BUCKET[/PREFIX]
Put file into bucket
s3cmd get s3://BUCKET/OBJECT LOCAL_FILE
Get file from bucket
s3cmd del s3://BUCKET/OBJECT
Delete file from bucket
s3cmd sync LOCAL_DIR s3://BUCKET[/PREFIX] or s3://BUCKET[/PREFIX]
LOCAL_DIR
Synchronize a directory tree to S3
s3cmd du [s3://BUCKET[/PREFIX]]
Disk usage by buckets
s3cmd info s3://BUCKET[/OBJECT]
Get various information about Buckets or Files
s3cmd cp s3://BUCKET1/OBJECT1 s3://BUCKET2[/OBJECT2]
Copy object
s3cmd mv s3://BUCKET1/OBJECT1 s3://BUCKET2[/OBJECT2]
Move object
s3cmd setacl s3://BUCKET[/OBJECT]
Modify Access control list for Bucket or Files
s3cmd accesslog s3://BUCKET
Enable/disable bucket access logging
s3cmd sign STRING-TO-SIGN
Sign arbitrary string using the secret key
s3cmd fixbucket s3://BUCKET[/PREFIX]
Fix invalid file names in a bucket
Plus, you get another page of commands to manage publishing s3 files to the web,
if you want to make a website out of your files.
Configuration will require an S3 access key from your S3 account... and this isn't something you should leave lying around in an insecure environment such as a shared PC at work, a virtual server that might get hacked, a laptop you carry that is subject to theft etc., or else some scammer could use your s3 key and be deleting your files or perhaps using your credit card to finance his illegal download site until he gets you banned. One solution is to use gpg --symmetric
to encrypt your dotfile with a passphrase and delete the dotfile when not in use. I had posted some short 2-3 line scripts for this to the s3tools blog, but that site is not responding at the time I write this.
When s3cmd is not handy, you can use the aws web tool to upload/download files.
The only problem I have encountered with this service involved Verizon Mifi, and is probably a Verizon network limitation. The Verizon portable broadband would drop the connection after transferring several hundred megabytes. You can access Amazon S3 from virtually any location on the internet. I have never seen a timeout or disconnect problem on a wired network.