(Unofficial) Guide to Zcash Solo Mining

Hi everyone. I noticed that there are a lot of people in this forum that are interested in mining zcash. If you are new to mining and aren’t sure where to start, I put together a guide for you.

https://github.com/Austin-Williams/ZCASH-MINING-N00BS/wiki/Zcash-Mining-Guide-(Unofficial) <— Old One [Broken]

https://github.com/Austin-Williams/zcash-guides/wiki/Guide-to-Solo-Mining-Zcash <— New One [Works]

These are the basics of solo mining (with the native zcash miner) as I’ve come to understand them by floundering around with the software for a while.

I hope you find it useful.


This was very helpful. Thank you. I keep getting stuck at ‘Running’ section. By adding ‘nano’ to the command line, it allowed me to move forward.

Thanks again.

Nice job @Austin-Williams ! :grin:

1 Like

Wanted to see if someone could clarify about the wallet and address(es) here. I have tried creating a wallet and even new address. However, with the sources provided, I am not having any luck. Any suggestions?

I am currently mining and according to the ‘listtransaction’, I have several addresses. Do we get a new address for each block that we mine? How do I consolidate those to a single wallet?

1 Like

The wallet is generated automatically by the client. The client is configured to use a new address for each block that it mines, so that is likely what you see when running listtransaction. You can find your wallet file in “~/.zcash/testnet3/wallet.dat”

If you want to move them all to single address, you can use the “sendtoaddress” command. You can learn more about it here: Original Bitcoin client/API calls list - Bitcoin Wiki (This is the command list for bitcoin core, but since Zcash is derived from Bitcoin core, almost all the commands work).

Good luck!


It is stating “Permission denied” when I put in “~/.zcash/testnet3/wallet.dat”.

If you’re entering that at a linux command line, you’ll need to specify a command first…

I just noticed that file isn’t stored as ASCII text…

Assuming your linux terminal is in the zcash directory, the specific zcash commands you might like to try are:

./src/zcash-cli listaccounts


./src/zcash-cli getaccountaddress “”

yes…using linux. And I am a first time user, specifically used it to start mining zcash.

I entered:
root@rig1-desktop:/# ~/.zcash/testnet3/wallet

and this is returned:
bash: /home/rig1/.zcash/testnet3/wallet.dat: Permission denied

1 Like

The linux terminal is for running programs and scripts (simply put: lists of program names) - usually ones that are specifically designed for the simple, text based input and output the terminal is limited to. What you’re entering is not the name of a program, it’s a data file.

As an aside, good job taking the time to install linux. After you get past the learning curve, I bet you’ll come to love it. :slight_smile:


I just wanted to say a massive thanks for putting this guide together, was smooth and easy to follow and I’m up and running mining on the testnet.

Will send you some btc as a ‘token’ of my appreciation when I get a chance.

Thanks a million Austin, truly appreciated!


Hi guys, i created a Docker image since this is the easiest option for me to do lots of (automated) testing in a short amount of time.

Be up and mining testnet in no time!

The sources are here:

Get it while its hot and have fun!


Pardon my newbness but… Are Docker files linux-only or can they be prepared for OS X as well? I ask because I had a total fail trying to follow the directions to compile on a friends iMac…


For solo mining, what version of Ubuntu do you recommend?


I use Ubuntu Server 14.04 personally.

Is it normal to have only 1 connection, or is this an issue with docker?

You have to open some ports to be able to connect to other peers.

I know you’re using docker rather than AWS but if you check the ‘how to
mine on AWS’ how-to documentation it lists which ports need to be opened.

I’d link to it here but I’m on mobile.

1 Like

really good job thanks alot

I have had good luck with RHEL 7.2

1 Like