Syscoin 4 Masternode Manual Setup Guide

Below are the minimum requirements for your VPS. Please do not try to compile without the minimum.

  • 64-bit CPU — 2 Cores (4 preferred)
  • 4gb RAM (real) minimum (8gb RAM preferred)
  • 4gb swap (if less than 8gb real RAM) Will need to use SSD if using Swap
  • KVM or OpenVZ (KVM preferred)
  • Linux OS — Ubuntu 18.04.1 LTS (Bionic Beaver) preferred.
  • 80gb Disk Space (100gb+ SSD preferred).
  • Port open for Syscoin (default: 8369) and Geth (default: 30303)

To use this procedure you must have upgraded your QT to Sys4

Syscoin 3 to Syscoin 4 Upgrade Procedure

Please read these instructions carefully the majority of issues are because these instructions are not read correctly.

Update your VPS OS:

Log onto your Server using Putty as Root.

All text in boxes are commands and need to be typed (Copy/Paste into Putty followed by Enter.

Install Nano (Text editor)

sudo apt-get update

sudo apt-get install nano

Open ports/enable firewalls etc.apt install ufw python virtualenv git unzip pv
ufw allow ssh/tcp
ufw limit ssh/tcp
ufw allow 8369/tcp
ufw allow 30303/tcp
ufw logging on
ufw enable

Install Swap file if you have only 4gb Memory

fallocate -l 4G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
nano /etc/fstab

Add the following line at the end of the file, then press Ctrl + X to close the editor, then Y and Enter save the file.

/swapfile none swap sw 0 0

We will create a new user with the following command, replacing <username>with a username of your choice.

adduser <username>

You will be prompted for a password. Enter and confirm using a new password (different to your root password) and store it in a safe place. You will also see prompts for user information, but this can be left blank.

Once the user has been created, we will add them to the sudo group so they can perform commands as root.

usermod -aG sudo <username>

Reboot the server:

Log onto your Server using Putty with the Username and password you created not as Root.

Build Syscoin Core from sources:

sudo apt-get update 
sudo apt-get install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils python3 libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-test-dev libboost-thread-dev
sudo apt install git
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:bitcoin/bitcoin
sudo apt-get update
sudo apt-get install libdb4.8-dev libdb4.8++-dev
git clone
cd syscoin
git checkout master
make -j$(nproc)
// (This will take 40 minutes or more, do not shut Putty down)
mkdir ~/.syscoin

We need to create the config file

nano ~/.syscoin/syscoin.conf

Paste in the following:

# rpc config
# syscoind config

Press Ctrl + X to close the editor and Y and Enter save the file

Run Syscoin Core

cd ~/syscoin/src

Syscoind will start and type to check progress.

./syscoin-cli getblockchaininfo

Wait for “geth_sync_status”: “synced”

Look for the “geth_sync_status”. The state should go form “waiting” to “syncing” to “synced”. If you’re running without the -daemon argument, you'll see the terminal being flooded with Geth logs where it's syncing.

Then, check ./syscoin-cli mnsync status. The asset name should go from "MASTERNODE_SYNC_INITIAL" to "MASTERNODE_SYNC_LIST" to "MASTERNODE_SYNC_MNW" to "MASTERNODE_SYNC_GOVERNANCE" to "MASTERNODE_SYNC_FINISHED"

Once Synced stop Syscoind

./syscoin-cli stop

Edit syscoin.conf

nano ~/.syscoin/syscoin.conf

Add the following using your MN key created in QT and your VPS IP

# masternode config


Start syscoind


Check the status

./syscoin-cli getblockchaininfo

Check Masternode has Synced

./syscoin-cli mnsync status

Start Masternode in QT

Check it has started

./syscoin-cli masternodelist json yourvpsip

Install Sentinel

Please ensure you are still in syscoin/src directory 
(cd ~/syscoin/src)
sudo apt-get update
sudo apt-get install -y git python-virtualenv
git clone
cd sentinel
git checkout sys4

We now need to edit the sentinel config file

nano sentinel.conf
  1. If there is a # In front of syscoin_conf= then remove it
  2. Change the directory from syscoincore to just syscoin
  3. put a # next to network=testnet remove the # next to network=mainnet to enable mainnet version of sentinel.
  4. replace YOURUSERNAME with your VPS user name next to syscoin_conf at the top


Should look like this

Finish Sentinel setup

virtualenv venv

If this command fails try installing this package

sudo apt-get install -y virtualenv and then run virtualenv venv

Install sentinel dependencies

venv/bin/pip install -r requirements.txt

venv/bin/python bin/

Should return nothing but silence. This is how you know it’s working.
If it says wait for sync, wait a minute and try again.

Create a crontab entry to wake sentinel every 5 minutes.

crontab -e

Please wait and select Nano as the option if this is the first time you have done this and add this line to the end of the file, including * * * * *

  • */5 * * * * cd /home/YOURUSERNAME/syscoin/src/sentinel && ./venv/bin/python bin/ 2>&1 >> sentinel-cron.log

To Start Syscoind automatically on boot you can add this line.

//Thanks to Locutus

  • @reboot /home/YOURUSERNAME/syscoin/src/syscoind -daemon >/dev/null 2>&1

Replace YOURUSERNAME with your VPS user name.


Check to see MN state

cd ..
./syscoin-cli masternodelist json yourvpsip




Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store


Trustless Interoperability. Token & Asset Micro-Transactions. Bitcoin Core Compliant - Merge Mined.