kryptokrona
  • Welcome to the Kryptokrona Wiki
  • ❓About
    • About Kryptokrona
    • Background and History
    • Kryptokrona Community
    • Contributing
    • Contributors
    • Frequently Asked Questions
    • Getting Started
    • Supporting
    • Technical Data
    • Timeline
  • 😎Developer
    • 😎Kryptokrona
      • Compiling from Source
      • Forking Kryptokrona
      • Local Testnet
      • Developer Resources
      • Running a Node on a Pi
      • Subwallets
      • kryptokronad behind HAProxy
      • CI/CD
      • Versioning
      • Help and Support
      • Kryptokrona API Docs
        • Daemon JSON RPC API
        • kryptokrona-wallet-backend-js
        • kryptokrona-service
        • RPC Errors
        • Wallet RPC API
        • Daemon HTTP RPC API
    • 🐦Hugin API
      • Setup
      • API usage examples
      • Build Test and Deployment
      • Dashboard
      • Database
      • Help and Support
      • Onion Services
      • Technologies
      • Test Environment
      • Testing
      • Websockets
      • Sponsors
      • Contribute
    • 🧰Kryptokrona Kotlin SDK
      • Getting Started
      • How To Use Kryptokrona SDK
  • 🎓Guides
    • 👛Wallets
      • 📜Making a Paper Wallet
      • 👜Making a Kryptokrona Wallet
      • 🚑Recovering your Wallet
      • 💻Using Kryptokrona Desktop Wallet
      • 💻Using Kryptokrona Desktop Wallet *deprecated*
      • 🛰️Using Remote Nodes
      • 👾Command Line
        • Using xkrwallet
    • 🐦Hugin API
      • Deploy Your Own Hugin API
  • 🐦Hugin Messenger
    • 📱How to use Hugin Mobile
  • 🕸️Node
    • 😇Deploy a Public Node (manually)
    • 🚢Deploy node with Docker
    • 🦅Deploy a Hugin Full Node with Docker
    • 🍇Run a Node on a Raspberry Pi
    • ✏️How to configure the node?
    • 🥾Node bootstrap
  • ⛏️Mining
    • ⛏️Get started with mining
    • 😎Solo-mining Kryptokrona
    • 🍇Mining with a SBC
    • 🧑‍🎓🧑🎓 Mining Intro
    • 📒Notes
    • 🌊Mining Pools
    • 🚚Mining with XMRig
    • 🏊‍♂️🏊♂ Run a Mining Pool
    • 📱Mining on Android
    • Mining on macOS
    • 🍯Mining on HiveOS
Powered by GitBook
On this page
  • Requirements
  • Setting Up the OS
  • OS Setup
  • Download kryptokrona
  • Mount your SSD
  • Run kryptokrona and Keep it Running
  • Speeding Up Synchronization
  • Special Thanks
  1. Developer
  2. Kryptokrona

Running a Node on a Pi

PreviousDeveloper ResourcesNextSubwallets

Last updated 2 years ago

This guide is going to walk you through the process of installing and setting up a 64 bit OS, downloading the kryptokrona ARM binaries and syncing your node on a Raspberry Pi. ARM builds just recently got fixed, so this is great news for anyone that has been wanting to run a node on one.

Requirements

You'll need:

  • a raspberry pi with a 64bit processor (Raspberry Pi 2, 3, 3B and 3B+)

    • Recommended:

  • a microSD card for the OS (keep in mind faster is better here)

  • a SATA to USB adapter such at

  • A 2.5" SATA SSD of at least 120GB (I recommend 240gb to future proof it)

  • A 64 bit OS image file (I'm using pi64 lite edition for this tutorial, which you can find )

  • installed in order to flash the micro SD card easily

Setting Up the OS

Make sure you've downloaded and installed and have the pi64.img file saved somewhere on your hard drive. Insert your microSD card into your computer, select the image file in Etcher, click flash and wait for completion. When it's finished flashing and validating, remove the microSD from your computer and insert it into the pi.

OS Setup

Connect your ethernet cable and plug in the pi. Either install a keyboard, mouse and monitor in order to do preliminary setup or SSH into the pi from another computer (open-ssh server is installed and enabled by default on pi64.) The default user is pi and its password raspberry, it has passwordless root privileges escalation through sudo.

Once logged in, you might want to run sudo pi64-config in order to get assisted with your setup! Otherwise, set up the linux environment to your liking.

Download kryptokrona

Once you're either ssh'd into your OS or using it directly with a mouse and keyboard, we're going to need to download the kryptokrona software. You can use these commands to do so:

cd ~ mkdir kryptokrona cd kryptokrona sudo apt install p7zip-full wget https://github.com/kryptokrona/kryptokrona/releases/download/0.0.1/kryptokrona-linux.zip 7z xz kryptokrona-linux.zip

and check that it's working ok with

./kryptokrona --version

Note: you'll notice we're wgetting this link from discord's servers. With the ARM builds being fixed so recently, none of the official releases have been updated yet. Once a new official released is pushed this link will be updated.

Mount your SSD

kryptokrona needs alot of space on a fast drive for the database. So plug in your SSD to one of the USB ports on the pi and we'll create a mount point for it.

First, run this command to view your available disks.

lsblk

Look at the options and take note of which one is your SSD. It should say something about "SCSI Device" and have the correct size as your drive. For me, it was located at /dev/sda1.

I recommend formatting the device to exFAT so that I can access it easily on both windows and linux systems. In order to mount this type of format, we'll need some additional packages...

sudo apt install exfat-fuse exfat-utils

Now, we can create a folder called .blockchain in the home directory and mount the SSD there.

cd ~ mkdir .blockchain sudo mount /dev/sda1 /home/pi/.blockchain

Note: replace /dev/sda1 with your drive location and pi with your username if you changed it.

That will temporarily mount the drive in ~/.blockchain, but we want it to be permanent. We'll need to edit the fstab file.

sudo nano /etc/fstab

Scroll to the bottom and add

/dev/sda1 /home/pi/.blockchain exFAT defaults 0 2

Save and close by pressing Ctrl+X, y

Run kryptokrona and Keep it Running

sudo apt install screen

install screen to keep the daemon running in the background

cd ~/kryptokrona/ ./kryptokrona --data-dir '/home/pi/.blockchain' --save-config 'daemon.conf'

(point kryptokrona to use the mount point we made earlier as the database location, and save a config file to do so automatically in the future)

screen -d -m ./kryptokrona -c daemon.conf

tell kryptokrona to run with the config file we just generated inside of a detached screen session

Now just wait to sync!

Speeding Up Synchronization

Alternatively, if you have another computer that already has a synced blockchain, you can copy the data in the .kryptokrona or Appdata/Roaming/kryptokrona folder onto your SSD and enjoy starting with a fully synced chain!

Special Thanks

Thanks to LeoCuvee, thinkpol, ibmcd, zpalm, rocksteady, and anyone else who helped get these binaries functional on ARM architecture!

There's a couple things you can do to speed up the blockchain sync. One is to use checkpoints: follow the directions .

😎
😎
Raspberry Pi 3 B
this one
here
Etcher
Etcher
here