6. Install Bitcoin Core
Bitcoin Core is the reference implementation of Bitcoin, a direct descendent of the code base created by Satoshi Nakamoto (in those days, known as Bitcoin QT). This is the software your node runs to connect you to the the Bitcoin network and broadcast your transactions.
As an open source software protocol, there are other implementations available for you to run if you want to. The second most popular implementation is Bitcoin Knots (about 20% of the network), which is a fork of the Bitcoin Core code with some changes to some settings.
For the purpose of this guide, we'll install Bitcoin Core, but it's worth understanding there are other implementations available and it's your responsibility to understand the difference between the implementations and run the one you want to.
Bitcoin Core (and other implementations) have different versions of the software available for download. Each version includes new updates, patches and functionality. Bitcoin does not have auto or push updates, so as a node runner you must understand what each version of Bitcoin contains and update accordingly.
At the time of publishing this guide, the latest version of Bitcoin Core is 30.0, Ketan installs an earlier version in his 2024 video, so make sure you understand which version you want to install before proceeding.
1. Prerequisites
Before installing Bitcoin Core, ensure your Ubuntu server meets the following requirements:
- Storage: 2TB of storage. The current blockchain size is around 790GB. Additional applications like Electrum Server will require more space and you want enough space to run for several years.
- Memory: 16GB of RAM, though 8GB is the minimum requirement.
- Internet Connection: A fibre internet connection with a direct Ethernet cable to your router is best.
2. Installation Steps
- Download Bitcoin Core: Visit the official Bitcoin Core website to download the latest version.
- Verify the Software: Ensure the integrity of your download by verifying it against the signed checksums.
- Install Bitcoin Core: Follow the installation instructions provided in the Ministry of Nodes Video.
- Start Bitcoin Core: Initiate the Initial Block Download (IBD), which can take up to 24 hours depending on your internet speed and hardware.
Follow the Guide - Install Bitcoin Core on Ubuntu
In his best Richie Benaud voice, Ketan walks us through installing the Bitcoin software on Ubuntu.
Resources:
- Download Bitcoin Core
- Bitcoin Core installation instructions - Bitcoin.org website
- Bitcoin Core repository on Github
3. Initial Block Download (IBD)
Once installed and started, Bitcoin Core begins downloading the entire blockchain. This process can take up to 24 hours. Use the following commands to monitor progress:
- Check IBD Status: bitcoin-cli getblockchaininfo
- Blockchain Size: du -sh ~/.bitcoin/blocks
4. Configuring your Bitcoin Node
After starting the Initial Block Download, you need to configure Bitcoin Core:
- Create & Configure bitcoin.conf: Set up your configuration file to customize Bitcoin Core settings.
- Stop Bitcoin Core: Temporarily halt Bitcoin Core to apply configurations.
- Configure Bitcoin Core to Run at Boot: Add a service file to ensure Bitcoin Core starts automatically on boot.
- Restart Bitcoin Core: Resume operations to implement changes.
Follow the Guide - Configure Bitcoin Core with Ketan
Useful Command-Line Tools
The command line is where you interact with your Bitcoin node, if you've never used it before it takes a little getting used to but it's not difficult to use. The thing you'll notice in the command line is that you don't have a pretty screen telling you what to do and the commands are in a less user-friendly language.
Here are some basic commands to use on your node:
- Bitcoin Core Status: sudo systemctl status bitcoind
- Show Peer Count: bitcoin-cli getconnectioncount
- List Connected Nodes: bitcoin-cli getpeerinfo
- Network Information: bitcoin-cli getnetworkinfo
- Total Bitcoin Supply: bitcoin-cli gettxoutsetinfo
- Bitcoin Core Help: bitcoin-cli help
Resources and Time
- Cost: Bitcoin Core is free and open-source software.
- Time: Installation of Bitcoin Core took me approximately 1 hour, with the IBD completing in 24 hours.
- Bitcoin Core Version Used: 28.0.0
I usually wait for a while before upgrading the software on any of my Bitcoin services to let other people be the crash test dummies. Unless there's a security vulnerability, there's no hurry to update.
Congratulations - you're now running Bitcoin
Once you've completed your initial block download and configuration, you're now a first class citizen of the Bitcoin Network! Even before you connect your wallet, it's fun to watch progress of the blockchain directly from your own node.