Ubuntu minimal (server) node tutorial

I couldn’t really find any actual instruction to deploy node via SSH on ubuntu device plugged to my router. I was looking for something like raspberry pi instructions but for ubuntu (odroid with 16.04 version).
Most recent tutorials I’ve found are related to 1.3 version where it’s needed to decompress zip file and run mining app I assume are related to desktop version of Ubuntu with interface.
I would like to know step by step how to do that by console commands how to run it if it’s possible just like for testnet.
Edit:
If i proceed with this tutorial without using vpn with all the auto updater scripts etc. from tutorial below


Will be my node working just fine?

Most of the step by step tutorials for Linux (Raspberry Pi or cloud machines) are a bit old (for testnet), but the principles should be the same. If you follow the terminal commands, as well as do some adjustment for mainnet, it should run. Let us know if you succeed and share your experience with the other people.

You can also find the latest releases of source code and build instructions on our github site:

I used this VPS tutorial with two changes, one important was that I found different golang version matching my Odroid that was apparently not x64 version mentioned in tutorial link, second difference was that some of the last commands i needed to write with sudo on front to make them work. As far i know my node is runningfine but with SYNC_STARTED state since then so I don’t know if it’s 100% properly deployed. My node IP 89.73.32.12

It seems your node is working properly, syncing up blocks (218K) towards current network block height (907K). All the ports (30001-30005) are open. So you are good, just need to wait until all blocks are sync’d.

Now when my node finally synced up to latest block after few weeks (really?) I have next serious problem.
There seems to be no more free place on my SD card after syncing, 29 Gb of memory is already used.
What can I do now? Do I need to buy card with bigger memory what is the last thing I would like to do honestly.
Or can I somehow replace my downloaded chain db via 1.3 version by snapshot ChainDB from https://nkn.org/ChainDB_pruned_latest.tar.gz ? Would it take less amount of memory or not really?
Or maybe it was already implemented in 1.3 version to make synced chain db size smaller with --pruning lowmem argument?
If not how can I simply replace downloaded chain db on my ubuntu server via SSH by this latest DB which can I download from link above? Or do i need to delete node and start deploying from the beggining?

Hi, you can do the following:

  1. stop your nknd
  2. delete your ChainDB directory
  3. download latest pruned chain DB
  4. unzip and it will become the new ChainDB directory
  5. start nknd again

Pruning yourself will take a very long time: e.g. several days.

Bruce, do you know by chance what exact location is ChainDB stored on ubuntu? In other words which folder should I unzip pruned.tar.gz database file?
Sorry for digging in old post but haven’t time since then cause of covid situation.

Hi, the chain db is here if you install with 1-click:

/home/nkn/go/src/github.com/nknorg/nkn/ChainDB

This is where you unzip your pruned snapshot.

1 Like