How to run a Grin-node on Windows 10
Dear future Grin node operator,
Here is a guide to help you get started with running a full Grin node on a different OS than is supported at the time (give the devs some time). This will allow you to fully validate any incoming transaction on the Grin Network by checking the blocks and enforcing consensus rules. You will be independent of any shady exchange and won't lose your dearly earned (or mined) grin when (not if!) the third party that holds the grin now goes down...
- First step:
Download https://www.virtualbox.org/wiki/Downloads and install the VirtualBox software which allows you to run a virtual machine on which to install a supported linux distribution.
I've given it 4GB of memory, NAT internet access and 100GB of scaling discspace. - Second step:
Download a supported Linux distro, I would recommend Ubuntu 18.10 (it works for me): https://www.ubuntu.com/download/desktop and install this on a new virtualbox.
You can select the .iso file as installation disc/mount that will auto-run when you start up the new VirtualBox. Follow the instructions while installing the Ubuntu OS. - Third step:
Now that you have a suitable Linux environment (e.g. Ubuntu 18.x) it is time to get started!
Open the Terminal:
Follow the install instructions on: https://github.com/mimblewimble/docs/wiki/how-to-run-a-grin-node#linux-all-distributions
For which you'll have to download the latest release of grin (or build your own - only recommend that to advanced Linux/git users) for me this was 1.0.0 :
wget "https://github.com/mimblewimble/grin/releases/download/v1.0.0/grin-v1.0.0-479973573-linux-amd64.tgz"
With checksum: f8e3f4711496b14653ebd982ac13ea3e grin-v1.0.0-479973573-linux-amd64.tgz
Unpack with:
tar xzf grin-v1.0.0-479973573-linux-amd64.tgz
This should look similar (maybe in a different directory, that is OK) to:
And finally run with:
./grin
or
./grin server run
You'll be presented with this beautiful classic TUI (text user interface) with which you can monitor the initial blockchain download and see what other peers are connected with you at the moment.
Incase you want to set some custom server configurations:
./grin server config
With the most important variable to make sure you are visible on the P2P network:
To secure your funds it is very important to write down on paper your mnemonic that is generated when you initialize your wallet for the first time with:
./grin wallet init
*don't use the same phrase as in the image above, it is no longer a secret (:
Also wallet configuration has to be changed before you can listen for http payments:
cat ~/.grin/main/grin-wallet.toml
(I used the Text Editor for this: gedit ~/.grin/main/grin-wallet.toml )
Make sure to set the listening address to 0.0.0.0 before requesting a http payment from your exchange or mining pool, like this:
Or run with FLAG --external, -e for without the need to edit first:
grin wallet -e listen
*one more tip, check if your node is visible on port 3415 on: https://www.yougetsignal.com/tools/open-ports/
Congratulations!!! You should now be an independent, validating node operator
Congratulations @krav! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :
Click here to view your Board
If you no longer want to receive notifications, reply to this comment with the word
STOP
To support your work, I also upvoted your post!
For some users the ./grin command does not show the TUI / user interface, but instead show nothing or a core dump. Make sure you are running on a 64-bit OS and 64-bit compatible processor (especially old processors might not support the required commands).
With the latest windows 10 updates, I've found that the Ubuntu Server 18.04.1 is working much better than the Desktop in VirtualBox. So incase you have trouble getting Step 2. to work use: http://cdimage.ubuntu.com/releases/18.04.1/release/
Latest version 1.0.2: https://github.com/mimblewimble/grin/releases/download/v1.0.2/grin-v1.0.2-498013739-linux-amd64.tgz
Update recommended, unpack in a new directory:
How to port forward:
Grin protocol uses ports 3413 through 3417 for various actions, like connecting to peers, sending and receiving txs.
See: https://www.wikihow.com/Set-Up-Port-Forwarding-on-a-Router
If you need help sending grin from the wallet:
Builds a transaction to send coins and sends to the specified listener directly
USAGE:
grin wallet send [FLAGS] [OPTIONS] [amount]