SmartCash Node - quick  setup guide

in #smartcash6 years ago (edited)


There are lots of guides out there for beginners, but I don't need all the gubbins, just the steps, and some explanation about options. So here is a simple guide.

(also posted here: https://medium.com/@mattfink/smartcash-node-short-setup-guide-4798bb86e6c6)

See https://smartcash.cc/

Prerequesites:

  • SmartCash Desktop Wallet - https://smartcash.cc/wallets/
  • You need 10,000 SMART - simplest way is to use something like https://cryptowolf.eu/exchange/
  • A server (VPS or otherwise) running Ubuntu 16.04 (17 and 18 not currently supported out of the box) with a fixed IP. 1 GB ram, and** 20GB storage space**. https://vultr.com/ seem cheap ($5/month) and OK
  • About 30 mins of setup time (subject to network confirmations etc. and ability)

TL;DR

  • Send 10,000 SMART in one transaction to a new local address, copy down the transaction ID.
  • Use the wallet console to run smartnode genkey and note down the smartnode's private key
  • get the smart node index from the wallet console smartnode outputs (likely to be 0 for your first node)
  • create a smartnode.conf file in your local wallet (~/Library/Application\ Support/Smartcash/ on a Mac) and add a line with smartnode name ip:port smartnode private key transaction id output index
  • install the smartcash daemon on your VPS
wget https://rawgit.com/smartcash/smartnode/master/install.sh
chomod +x install.sh && ./install.sh
  • wait for node syncing use use smartcash-cli smartnode status to verify you are setup, and smartcash-cli getinfo to watch the block-count go up (tip: use the getinfo wallet console command to see the current block)
  • start node from wallet with Start Alias button on SmartNodes tab.
  • don’t move the 10k SMART and wait for payouts (at least 5 days before first one)

Step 1 - Configure the wallet

Quit the SmartCash wallet (from the menu, so it's a clean exit).
Find your smartcash.conf file (or create it, if it does not exist).
For Mac this is usually here:

cd ~/Library/Application\ Support/Smartcash/
cat "txindex=1" >> smartcash.conf

There is no need to set rpcuser and rpcpassword.

NOTE: Setting txindex=1 forces the wallet to maintain all transaction history details. - This may not be entirely needed for the local wallet.

Start the wallet, and wait for the blockchain to sync.. may take a long time, so speed it up with the optional step below.

Optional Step 1a - Bootstrap the blockchain

Because we are now tracking all history, we will need to update our blockchain, speed this up by downloading a copy manually (so long as you trust it).

cd ~/Library/Application\ Support/Smartcash/
curl -L0 http://proteanx.com/txindexstrap.zip > txindexstrap.zip

Then unzip it

unzip txindexstrap.zip
... stuff happens
rm txindexstrap.zip

Start the wallet. Wait for it to fully sync ... may take some time

Step 2 - Configure wallet to talk to SmartNodes

Open or create a smartnode.conf file

cd ~/Library/Application\ Support/Smartcash/
nano smartnode.conf

An empty one should look something like

# Smartnode config file
# Format: alias IP:port smartnodeprivkey collateral_output_txid collateral_output_index

Step 2a Create a receiving address to accept the 10,000 smart

We will use this to send 10,000 SMART to, so that we can get a transaction ID to prove that we can run a node.

Send 10,000 smart to that address

Step 2b - generate a private key for the server

Open the debug window from the desktop wallet, and run smartnode genkey. This will give you a private key to use for the server.

Then get the transaction id and output index for the 10,000 smart transaction

smartnode outputs

Add all of that into your smartnode.conf file, so it becomes:

# Smartnode config file
# Format: alias IP:port smartnodeprivkey collateral_output_txid collateral_output_index
smartnode-name 127.0.0.1:9678 7Q2.... 22e.... 0 

Step 3 - install the smartnode on the server

Make sure your Ubuntu server is up to date  apt-get update followed by apt-get upgrade (this actually gets run by the following script, but no harm in doing it now.)

Get the handy bash install all in one script - be sure you are happy with it's security before running it.
Don't try to be clever, and make a fancy user, it's hard-coded for root user and puts stuff in /root/smartcash and /root/.smartcash, which is then used in some cronjobs that look for ~/smartcash/xxx.sh.

wget https://rawgit.com/smartcash/smartnode/master/install.sh

make it executable. Run it, as root, or with sudo.

chmod +x install.sh
./install.sh

It will reboot after it's finished… then hopefully you will have some magic happening.

Step 4 - wait for the blockchain to sync..

Keep waiting…
Wait a little longer… (it took around 4–6 hours for mine to sync fully to ~52k blocks)
or, do the same trick to bootstrap the blockchain in step 1a.

cd ~/.smartcash/
curl -L0 http://proteanx.com/txindexstrap.zip > txindexstrap.zip
tar xvf txindexstrap.zip

Step 5 - start the node from the wallet interface

Open the SmartNodes, My SmartNodes tab, select your newly minted node, and click "Start Alias".

Note: If you do this before you have fully synced, you will see a status of PRE_ENABLED . I also found that I had to Start Alias again once the node had synced, to get it to turn from PRE_ENABLED to ENABLED.

Sort:  

Cool, thanks for sharing.

@smartbot tip 30

Σ$$$ Tipped @mattfink Σ30 SMART! Comment @smartbot help to claim. Currently the price of SmartCash in the market is $0.068 USD per SMART. Current value of the tip is $2.04 USD. To find out more about SmartCash, please visit https://smartcash.cc.

@smartbot help

You can use the following commands:

  • balance - displays your current wallet balance
  • address- displays your deposit address
  • withdraw <amount> <address> - withdraws the amount of SMART to address
  • tip <username> <amount> - sends the amount of SMART to username
  • terms - displays terms and conditions for using @smartbot

@smartbot balance

You have Σ30 SMART (unconfirmed: Σ0 SMART).

@smartbot withdraw 30 SMb5Q7j3gsSU1g2hqvDVeVcsxesQZQm4cj

Congratulations @mattfink! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 1 year!

Click here to view your Board

Support SteemitBoard's project! Vote for its witness and get one more award!

Congratulations @mattfink! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 2 years!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!