[tahoe-dev] FAQ? - What happens if I loose the Tahoe-LAFS gateway machine? production ready?

Brian Warner warner at lothar.com
Wed Jan 5 23:14:48 UTC 2011

On 1/5/11 2:26 PM, Carsten Krüger wrote:
>> What matters most is the filecap, dircap, or "rootcap" under which
>> you stored your data. You must retain access to that string.
> This is only a small amount of data that never changes?

Right. Think of it like a URL that points to a whole site full of data.

> Is it possible to restore all my data if my one and only gateway
> disappaers and I only have the "config/keys" of that gateway?
> For example I've one server in company that is also LAFS gateway, at
> creation of LAFS gateway it I do a backup of the config/keys on dvd.
> The server's data is nightly backuped to LAFS, RAID of server crashs.
> Can I recover all my data with that dvd and 3-of-10 clients?

I'm not sure I'm understanding you correctly, but I believe the answer
is yes.

You mentioned having 20 servers. Let's say you start with one gateway
machine G1, one introducer I1, and twenty servers S1-S20. (the
introducer could easily live on one of the server machines, instead of
being on a separate machine). You start the Introducer, ask it for the
introducer.furl, then paste that into G1 and S1-S20. The grid comes up
and all the machines connect to each other.

Then you upload a lot of data by using the CLI tools, telling them to
connect to G1, and doing something like:

 tahoe create-alias root
 tahoe cp -r ~/data root:data
 tahoe list-aliases

and you write down (or print out or otherwise make a safe copy of) the
rootcap emitted by the "list-aliases" command). As Shawn showed, the
$ROOTCAP is about 80 printable characters long, and looks a bit like a
URL. The aliases are stored in ~/.tahoe/private/aliases on whatever
machine you run the CLI tools (which is frequently the gateway machine,
but since the CLI tools all speak HTTP to the gateway, it could easily
be somewhere else).

Now, if you destroy G1, you can get your data back by doing the

* build a new gateway named G2
* paste the introducer.furl into it, start it up
* G2 will connect to the grid just like G1 used to
* use the CLI tools, tell them to connect to G1
* if the aliases were on the lost G1 machine, replace them with:
  * tahoe add-alias root $ROOTCAP
* tahoe cp -r root:data ~/copy-of-data

The grid, and the rootcap, are all that you need to retrieve the data.

>> The default encoding parameters are "3-of-10", which means that e.g.
> You got me wrong. I want to know if there is changeing metadata that
> has to be backuped to restore all the data in the grid.

Nope. The rootcap is the root access key to a tree of data that includes
everything you've uploaded under that directory hierarchy. The data is
stored in a graph of directory/file nodes, all nodes are stored in the
grid (not in any gateway), and anything reachable from the root node
will be retrievable with that rootcap. The only critical piece is the

> Speed is no problem. 5 mb/s of write speed in a gigabit network would
> be good enough for me.

I think we can do that. We haven't run our automated performance tests
in a while, but I think we were getting about 5MBps on a fast local

hope that helps,

More information about the tahoe-dev mailing list