TAHOE(1)

NAME
tahoe - Secure distributed file store.

SYNOPSIS
tahoe [global-options] <command> [command-options]

DESCRIPTION
Tahoe-LAFS is a Free and Open decentralized cloud storage system. It distributes your data across multiple servers. Even if some of the servers fail or are taken over by an attacker, the entire file store continues to function correctly, preserving your privacy and security.

The "tahoe" executable can be used to create and manage client/server nodes, manipulate the file store, and perform several debugging/maintenance tasks.

Please have a look at the 'SEE ALSO' section at the end of this manual page for pointers to further instructions.

GLOBAL OPTIONS

-d, --node-directory=
    Specify which Tahoe node directory should be used. The directory should either contain a full Tahoe node, or a file named node.url that points to some other Tahoe node. It should also contain a file named 'private/aliases' which contains the mapping from alias name to root dirnode URI. [default for most commands: '$HOME/.tahoe']

--eliot-destination=
    Add an Eliot logging destination. May be given more than once.

--help
    Display help and exit.

--help-eliot-destinations
    Emit usage information for --eliot-destination.

-q, --quiet
    Operate silently.

-V, --version
    Display version numbers.

--wormhole-invite-appid=
    The appid to use on the wormhole server. [default: tahoe-lafs.org/invite]

--wormhole-server=
    The magic wormhole server to use. [default: ws://wormhole.tahoe-lafs.org:4000/v1]

COMMANDS

The tahoe runner can be used for various tasks depending on the command used:

tahoe COMMAND [OPTION]... [NODEDIR]

ADMINISTRATION

Create node configurations and securely invite clients to a grid.

  COMMANDS

create-node
    Create a node that acts as a client, server or both.

create-client
    Create a client node (providing storage to others initially disabled).

create-introducer
    Create an introducer node. When the grid is large or very dynamic, introducers make it easier for clients to connect. See "Static Server Definitions" in the documentation on how to configure clients to connect to one or more storage servers without using an introducer.

invite
    Invite a new node to a grid. See "Magic Wormhole Invites" in the documentation.

  OPTIONS

-C, --basedir=
    Same as the global --node-directory option.

-n, --nickname=
    Specify the nickname for this node (create-node and create-client only).

-i, --introducer=
    Specify the introducer FURL to use (create-node and create-client only).

--hostname=
    Hostname to automatically set --location/--port when --listen=tcp (the default).

-p, --webport=
    Specify which TCP port to run the HTTP interface on. Use 'none' to disable. Default: 'tcp:3456:interface=127.0.0.1' (create-node and create-client only).

--no-storage
    Do not offer storage service to other nodes (create-node only).

CONTROLLING NODES

In the past, the 'tahoe' command offered service watching (with start, restart, stop commands), but this was not very portable and has been deprecated.

  COMMANDS

run Run a node without daemonizing. This is the only command for running nodes.

  OPTIONS

--allow-stdin-close
    Do not exit when stdin closes ("tahoe run" otherwise will exit). This is required for some service runners (like systemd, for example).

-C, --basedir=
    Same as the global --node-directory option.

--help
    Display help and exit. This includes lots of 'twistd-options' for debugging, logging, profiling, et cetera that are left out of this manual page for brevity.

USING THE FILE STORE

All the following commands require pointing tahoe to a running client node with the '--node-directory' ('-d') option (or, alternatively, using the default location).

Please run 'tahoe COMMAND --help' for more details on each command.

  COMMANDS

mkdir
    Create a directory and return its capability ("dircap").

add-alias
    Add an alias for an existing cap.

create-alias
    Create an alias pointing to a new cap.

list-aliases
    List all alias caps.

ls  List a directory.

get Retrieve a file from the grid.

put Upload a file into the grid.

cp  Copy one or more files or directories.

unlink
    Unlink a file or directory on the grid.

rm  Same as unlink.

mv  Move a file within the grid.

ln  Make an additional link to an existing file or directory.

backup
    Make target dir look like local dir.

webopen
    Open a web browser to a grid file or directory.

manifest
    List all files/directories in a subtree.

stats
    Print statistics about all files/directories in a subtree.

check
    Check a single file or directory.

deep-check
    Check all files/directories reachable from a starting point.

DEBUGGING

The following commands are useful for developers and for troubleshooting.

tahoe debug SUBCOMMAND [OPTION]... [PARAMETER]...

Please run e.g. 'tahoe debug dump-share --help' for more details on each subcommand.

  SUBCOMMANDS

dump-share
    Unpack and display the contents of a share.

dump-cap
    Unpack a read-cap or write-cap.

find-shares
    Locate sharefiles in node directories.

catalog-shares
    Describe all shares in node dirs.

corrupt-share
    Corrupt a share by flipping a bit.

flogtool
    Utilities to access log files.

AUTHORS

Tahoe-LAFS has been written by Brian Warner, Zooko Wilcox-O'Hearn and dozens of others. This manpage was originally written by bertagaz.

REPORTING BUGS

Please see https://tahoe-lafs.org/trac/tahoe-lafs/wiki/HowToReportABug.

Tahoe-LAFS home page: <https://tahoe-lafs.org/>

tahoe-dev mailing list: https://lists.tahoe-lafs.org/mailman/listinfo/tahoe-dev

COPYRIGHT

Copyright © 2006–2025 The Tahoe-LAFS Software Foundation.

SEE ALSO
Run 'tahoe --help' for an overview of commands and 'tahoe <command> --help' for more details on each command.

See https://tahoe-lafs.readthedocs.io/en/tahoe-lafs-1.20.0/frontends/CLI.html for user documentation specific to the 'tahoe' command.

See https://tahoe-lafs.readthedocs.io/ for "the documentation" - in-depth, longer-form explanations, specifications and step-by-step tutorials.