Howto use duplicity to back to dreamhost.com accounts and Amazon S3:
Dreamhost has some amazing offerings, one of which is a huge amount of storage, that increases over time! Using duplicity there is easy because you can simply ssh, or even better: scp, into it.
From the manual page of duplicity (i.e. “man duplicity”) :
duplicity --full /home/me scp://email@example.com/some_dir
Put your username in where it has “uid”, making sure you have shell access at dreamhost for that user. Put your domain name which you host at dreamhost, such as example.com. Make sure whatever directory you choose exists in your home directory at dreamhost. I chose duplicity_backups so it would be easy to recognize.
Duplicity will then ask you for a gpg passphrase. Make it a good one. Since the first full backup will take awhile, I started the session by typing “screen”, that way I could exit the shell with CNTL-a-d, and go on to other things. To return to that terminal session, just type “screen -r”.
Strange thing though is the low throughput rates. On a tier-1 backbone connection, I’m only getting top speeds of 50KB/s, which is only about 400kbps. What gives? I should be at least getting two to three times that speed. Oh well, perhaps dreamhost.com does some ingress throttling to dampen any adverse network latency effects.
Word to the wise: Start small, if during your initial “first” backup, the transfer fails, you will have to start all over. To me that it is rediculous, but I guess its the cost of encryption.
This isn’t so easy. I’m trying duplicity with BitBucket, with directions from here:
But I’m getting these errors when I try to run duplicity-bin.
ImportError: No module named _librsync
Ugh that’s just not going to work.
OK, found this in CVS-Readme:
CVS README - Notes for people checking out of CVS------------------------------------------------- Getting duplicity to run:------------------------- If you want to run a version of duplicity checked out of CVS into your$DUP_ROOT directory, change to $DUP_ROOT/duplicity and run the./compilec.py file. With any luck, a _librsync.so library will appear in that directory. Then run duplicity-bin, making sure that all the files are in your PYTHONPATH: PYTHONPATH=$DUP_ROOT duplicity-bin or PYTHONPATH=$DUP_ROOT rdiffdir Running the unit tests:----------------------- If you want to try some of tests, you first have to untar the testfiles.tar.gz as root (the tarball contains device files, files with various uid/gid, etc): cd testing; tar -xvzf testfiles.tar.gz Then run the various *test.py files, for instance: cd testing; python lazytest.py
Except now I’m getting: error: command ‘gcc’ failed with exit status 1
Argh. OK so I couldn’t get _librsync.so to compile, but I installed rdiff_backup with:
apt-get install rdiff_backup
and then copied the _librsync.so to the duplicity src directory.
cp /var/lib/python-support/python2.4/rdiff_backup/_librsync.so duplicity
Then got the bitbucket:
wget http://cheeseshop.python.org/packages/source/B/BitBucket/BitBucket-0.4a.tar.gz tar -xzvf BitBucket-0.4a.tar.gz cd BitBucket-0.4a python setup.py install
Holy cow - it works! Gosh I do wish I could get it to show me how quickly the files are loading.