Sia (sia.tech) is a decentralized cloud storage platform based on the blockchain technology. With rclone you can use it like any other remote filesystem or mount Sia folders locally. The technology behind it involves a number of new concepts such as Siacoins and Wallet, Blockchain and Consensus, Renting and Hosting, and so on. If you are new to it, you'd better first familiarize yourself using their excellent support documentation.
Before you can use rclone with Sia, you will need to have a running copy of
siad (the Sia daemon) locally on your computer or on local
network (e.g. a NAS). Please follow the Get started
guide and install one.
rclone interacts with Sia network by talking to the Sia daemon via HTTP API
which is usually available on port 9980. By default you will run the daemon
locally on the same computer so it's safe to leave the API password blank
(the API URL will be
http://127.0.0.1:9980 making external access impossible).
However, if you want to access Sia daemon running on another node, for example due to memory constraints or because you want to share single daemon between several rclone and Sia-UI instances, you'll need to make a few more provisions:
--disable-api-securityarguments on the daemon command line.
siaddaemon via environment variable
SIA_API_PASSWORDor text file named
apipasswordin the daemon directory.
api_passwordtaking it from above locations.
siac wallet unlock. Alternatively you can make
siadunlock your wallet automatically upon startup by running it with environment variable
siadcannot find the
SIA_API_PASSWORDvariable or the
apipasswordfile in the
SIA_DIRdirectory, it will generate a random password and store in the text file named
YOUR_HOME/.sia/directory on Unix or
C:\Users\YOUR_HOME\AppData\Local\Sia\apipasswordon Windows. Remember this when you configure password in rclone.
siadwithout API password is to run it on localhost with command line argument
--authorize-api=false, but this is insecure and strongly discouraged.
Here is an example of how to make a
sia remote called
This will guide you through an interactive setup process:
No remotes found, make a new one? n) New remote s) Set configuration password q) Quit config n/s/q> n name> mySia Type of storage to configure. Enter a string value. Press Enter for the default (""). Choose a number from below, or type in your own value ... 29 / Sia Decentralized Cloud \ "sia" ... Storage> sia Sia daemon API URL, like http://sia.daemon.host:9980. Note that siad must run with --disable-api-security to open API port for other hosts (not recommended). Keep default if Sia daemon runs on localhost. Enter a string value. Press Enter for the default ("http://127.0.0.1:9980"). api_url> http://127.0.0.1:9980 Sia Daemon API Password. Can be found in the apipassword file located in HOME/.sia/ or in the daemon directory. y) Yes type in my own password g) Generate random password n) No leave this optional password blank (default) y/g/n> y Enter the password: password: Confirm the password: password: Edit advanced config? y) Yes n) No (default) y/n> n -------------------- [mySia] type = sia api_url = http://127.0.0.1:9980 api_password = *** ENCRYPTED *** -------------------- y) Yes this is OK (default) e) Edit this remote d) Delete this remote y/e/d> y
Once configured, you can then use
rclone like this:
rclone lsd mySia:
rclone ls mySia:
rclone copy /home/source mySia:backup
Here are the standard options specific to sia (Sia Decentralized Cloud).
Sia daemon API URL, like http://sia.daemon.host:9980.
Note that siad must run with --disable-api-security to open API port for other hosts (not recommended). Keep default if Sia daemon runs on localhost.
Sia Daemon API Password.
Can be found in the apipassword file located in HOME/.sia/ or in the daemon directory.
NB Input to this must be obscured - see rclone obscure.
Here are the advanced options specific to sia (Sia Decentralized Cloud).
Siad User Agent
Sia daemon requires the 'Sia-Agent' user agent by default for security
The encoding for the backend.
See the encoding section in the overview for more info.
rclone aboutnot supported