reddcoin_linux_guide - reddcoin-project/reddcoin GitHub Wiki

Reddcoin Core 4.22.9 - Linux Installation Guide

1. Overview and Prerequisites

What is Reddcoin Core?

Reddcoin Core is the official full-node wallet software for the Reddcoin network. It enables users to store, send, and receive Reddcoins (RDD) while participating in the network's Proof-of-Stake-Velocity (PoSV) consensus mechanism to earn staking rewards of up to 5-25% annually. The software maintains a complete copy of the Reddcoin blockchain and helps secure the network.

System Requirements

Minimum Requirements:

  • Operating System: Ubuntu 18.04+, Debian 10+, CentOS 7+, Fedora 30+, or equivalent
  • Architecture: x86_64 (64-bit), ARM64, ARM32, PowerPC64, or RISC-V
  • Processor: Dual-core 1.5GHz or equivalent
  • Memory: 2 GB RAM minimum, 4 GB recommended
  • Storage: 5 GB free disk space (pruned mode) or 50+ GB for full blockchain
  • Network: Broadband internet connection with upload speeds of at least 400 Kbps

Recommended Requirements:

  • Operating System: Ubuntu 22.04 LTS, Debian 12, or recent rolling release
  • Processor: Quad-core 2.5GHz or faster
  • Memory: 8 GB RAM or more
  • Storage: 100 GB free disk space on SSD
  • Network: Unlimited or high-cap internet connection (200+ GB/month upload)

Supported Distributions

Tier 1 Support (Fully Tested):

  • Ubuntu: 20.04 LTS, 22.04 LTS, 24.04 LTS
  • Debian: 11 (Bullseye), 12 (Bookworm)
  • CentOS/RHEL: 8, 9
  • Fedora: 38, 39, 40

Tier 2 Support (Community Tested):

  • Arch Linux: Current
  • openSUSE: Leap 15.4+, Tumbleweed
  • Linux Mint: 21+
  • Pop!_OS: 22.04+

Architecture Support:

  • x86_64: Primary support (Intel/AMD 64-bit)
  • ARM64: Raspberry Pi 4+, Apple Silicon compatibility layer
  • ARM32: Raspberry Pi 3+, older ARM boards
  • PowerPC64/PowerPC64LE: IBM POWER systems
  • RISC-V: Experimental support

Required Permissions

  • Standard user account (root not recommended for operation)
  • Sudo access for system package installation
  • Network access on port 45444
  • Read/write access to home directory

Prerequisites and Dependencies

Essential System Packages:

# Ubuntu/Debian
sudo apt update && sudo apt install -y wget curl gnupg2 software-properties-common

# CentOS/RHEL/Fedora
sudo dnf install -y wget curl gnupg2 which

# Arch Linux
sudo pacman -S wget curl gnupg

Runtime Dependencies:

  • Qt5 Libraries: For GUI wallet
  • Berkeley DB: For wallet storage
  • OpenSSL: For cryptographic functions
  • Boost Libraries: For various utilities
  • libevent: For network operations

2. Pre-Installation Steps

Backup Recommendations

⚠️ Critical: If upgrading from a previous version, backup your wallet first!

  1. Locate existing wallet.dat file:

    find $HOME -name "wallet.dat" -path "*/.reddcoin/*" 2>/dev/null
    # Usually: ~/.reddcoin/wallet.dat
    
  2. Create comprehensive backup:

    # Create backup directory
    mkdir -p ~/ReddcoinBackups/$(date +%Y%m%d)
    
    # Backup wallet and configuration
    cp ~/.reddcoin/wallet.dat ~/ReddcoinBackups/$(date +%Y%m%d)/ 2>/dev/null || echo "No existing wallet found"
    cp -r ~/.reddcoin ~/ReddcoinBackups/$(date +%Y%m%d)/reddcoin_config_backup 2>/dev/null || echo "No existing config found"
    
    # Set proper permissions
    chmod 600 ~/ReddcoinBackups/$(date +%Y%m%d)/wallet.dat 2>/dev/null
    

System Preparation

Update System Packages:

# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y

# CentOS/RHEL
sudo dnf update -y

# Fedora
sudo dnf upgrade -y

# Arch Linux
sudo pacman -Syu

Install Build Dependencies (if compiling from source):

# Ubuntu/Debian
sudo apt install -y build-essential libtool autotools-dev automake pkg-config \
    libssl-dev libevent-dev bsdmainutils python3 libboost-all-dev libdb5.3-dev \
    libdb5.3++-dev libminiupnpc-dev libzmq3-dev libqt5gui5 libqt5core5a \
    libqt5dbus5 qttools5-dev qttools5-dev-tools libqrencode-dev

# CentOS/RHEL/Fedora
sudo dnf groupinstall -y "Development Tools"
sudo dnf install -y openssl-devel libevent-devel boost-devel db4-devel \
    miniupnpc-devel zeromq-devel qt5-qtbase-devel qt5-qttools-devel qrencode-devel

Download Instructions

Official Download Source: https://download.reddcoin.com/bin/reddcoin-core-4.22.9/

Available Linux Files:

  • reddcoin-4.22.9-x86_64-linux-gnu.tar.gz (Intel/AMD 64-bit)
  • reddcoin-4.22.9-aarch64-linux-gnu.tar.gz (ARM 64-bit)
  • reddcoin-4.22.9-arm-linux-gnueabihf.tar.gz (ARM 32-bit)
  • reddcoin-4.22.9-powerpc64-linux-gnu.tar.gz (PowerPC 64-bit)
  • reddcoin-4.22.9-powerpc64le-linux-gnu.tar.gz (PowerPC 64-bit LE)
  • reddcoin-4.22.9-riscv64-linux-gnu.tar.gz (RISC-V 64-bit)

Determine Your Architecture:

uname -m
# x86_64 -> use x86_64-linux-gnu
# aarch64 -> use aarch64-linux-gnu  
# armv7l -> use arm-linux-gnueabihf
# ppc64 -> use powerpc64-linux-gnu
# ppc64le -> use powerpc64le-linux-gnu
# riscv64 -> use riscv64-linux-gnu

Download Steps:

# Navigate to downloads directory
cd ~/Downloads

# Download appropriate binary (example for x86_64)
wget https://download.reddcoin.com/bin/reddcoin-core-4.22.9/reddcoin-4.22.9-x86_64-linux-gnu.tar.gz

# Download checksums
wget https://download.reddcoin.com/bin/reddcoin-core-4.22.9/SHA256SUMS

Verification Steps

Verify File Integrity:

# Calculate SHA256 checksum
sha256sum reddcoin-4.22.9-x86_64-linux-gnu.tar.gz

# Compare with official checksums
grep "x86_64-linux-gnu.tar.gz" SHA256SUMS

# Automated verification
sha256sum -c SHA256SUMS --ignore-missing

GPG Signature Verification (Advanced):

# Download GPG signatures (if available)
wget https://download.reddcoin.com/bin/reddcoin-core-4.22.9/SHA256SUMS.asc

# Import Reddcoin signing keys
gpg --keyserver keyserver.ubuntu.com --recv-keys [REDDCOIN_GPG_KEY]

# Verify signature
gpg --verify SHA256SUMS.asc SHA256SUMS

Estimated Time: 5-15 minutes depending on connection speed


3. Installation Instructions

Method 1: Binary Installation (Recommended)

Step 1: Extract Files

# Navigate to downloads
cd ~/Downloads

# Extract tarball (replace with your architecture)
tar -xzf reddcoin-4.22.9-x86_64-linux-gnu.tar.gz

# List extracted contents
ls -la reddcoin-4.22.9/

Step 2: Install to System Location

# Option A: Install system-wide (requires sudo)
sudo mv reddcoin-4.22.9 /opt/reddcoin
sudo chown -R root:root /opt/reddcoin
sudo chmod +x /opt/reddcoin/bin/*

# Create symlinks for easy access
sudo ln -sf /opt/reddcoin/bin/reddcoin-qt /usr/local/bin/reddcoin-qt
sudo ln -sf /opt/reddcoin/bin/reddcoind /usr/local/bin/reddcoind
sudo ln -sf /opt/reddcoin/bin/reddcoin-cli /usr/local/bin/reddcoin-cli

# Option B: Install to user directory (no sudo required)
mkdir -p ~/.local/bin
mv reddcoin-4.22.9 ~/.local/reddcoin
chmod +x ~/.local/reddcoin/bin/*

# Add to PATH in ~/.bashrc or ~/.zshrc
echo 'export PATH="$HOME/.local/reddcoin/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

Step 3: Create Desktop Entry (GUI)

# Create desktop entry for GUI wallet
cat > ~/.local/share/applications/reddcoin-core.desktop << 'EOF'
[Desktop Entry]
Version=1.0
Name=Reddcoin Core
Comment=Reddcoin cryptocurrency wallet
Exec=/usr/local/bin/reddcoin-qt %u
Terminal=false
Type=Application
Icon=reddcoin
MimeType=x-scheme-handler/reddcoin;
Categories=Office;Finance;Network;
StartupWMClass=Reddcoin-qt
EOF

# Update desktop database
update-desktop-database ~/.local/share/applications/

Method 2: Package Manager Installation

Ubuntu/Debian (PPA Method):

# Add unofficial PPA (community maintained)
sudo add-apt-repository ppa:reddcoin/reddcoin-core
sudo apt update
sudo apt install reddcoin-core

# Note: Verify PPA authenticity before use

Arch Linux (AUR):

# Using yay AUR helper
yay -S reddcoin-core

# Or manually
git clone https://aur.archlinux.org/reddcoin-core.git
cd reddcoin-core
makepkg -si

Flatpak (Universal):

# Install Flatpak if not available
sudo apt install flatpak  # Ubuntu/Debian
sudo dnf install flatpak  # Fedora

# Add Flathub repository
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

# Install Reddcoin Core (if available)
flatpak install flathub com.reddcoin.Core

Method 3: Compilation from Source

Step 1: Download Source Code

# Clone repository
git clone https://github.com/reddcoin-project/reddcoin.git
cd reddcoin

# Checkout specific version
git checkout v4.22.9

# Or download source tarball
wget https://download.reddcoin.com/bin/reddcoin-core-4.22.9/reddcoin-4.22.9.tar.gz
tar -xzf reddcoin-4.22.9.tar.gz
cd reddcoin-4.22.9

Step 2: Configure Build

# Generate configure script
./autogen.sh

# Configure with GUI support
./configure --enable-wallet --with-gui=qt5 --enable-upnp-default

# Configure without GUI (daemon only)
./configure --enable-wallet --without-gui --enable-upnp-default

# Configure for minimal installation
./configure --enable-wallet --without-gui --disable-tests --disable-bench

Step 3: Compile

# Compile (use number of CPU cores)
make -j$(nproc)

# Run tests (optional but recommended)
make check

# Install
sudo make install

# Or install to custom location
make install DESTDIR=$HOME/.local

Distribution-Specific Instructions

Ubuntu 22.04 LTS:

# Install dependencies
sudo apt update
sudo apt install -y wget gnupg2

# Download and install
cd ~/Downloads
wget https://download.reddcoin.com/bin/reddcoin-core-4.22.9/reddcoin-4.22.9-x86_64-linux-gnu.tar.gz
tar -xzf reddcoin-4.22.9-x86_64-linux-gnu.tar.gz
sudo mv reddcoin-4.22.9 /opt/reddcoin
sudo ln -sf /opt/reddcoin/bin/* /usr/local/bin/

CentOS/RHEL 9:

# Enable EPEL repository
sudo dnf install epel-release

# Install dependencies
sudo dnf install -y wget tar

# Download and install
cd ~/Downloads
wget https://download.reddcoin.com/bin/reddcoin-core-4.22.9/reddcoin-4.22.9-x86_64-linux-gnu.tar.gz
tar -xzf reddcoin-4.22.9-x86_64-linux-gnu.tar.gz
sudo mv reddcoin-4.22.9 /opt/reddcoin
sudo ln -sf /opt/reddcoin/bin/* /usr/local/bin/

Raspberry Pi (ARM64):

# For Raspberry Pi 4+ with 64-bit OS
cd ~/Downloads
wget https://download.reddcoin.com/bin/reddcoin-core-4.22.9/reddcoin-4.22.9-aarch64-linux-gnu.tar.gz
tar -xzf reddcoin-4.22.9-aarch64-linux-gnu.tar.gz
mkdir -p ~/.local/reddcoin
mv reddcoin-4.22.9/* ~/.local/reddcoin/
echo 'export PATH="$HOME/.local/reddcoin/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

Estimated Time: 10-30 minutes depending on method and hardware


4. Configuration

Initial Setup

Step 1: Create Data Directory

# Create Reddcoin data directory
mkdir -p ~/.reddcoin
chmod 700 ~/.reddcoin

Step 2: Create Configuration File

# Create basic configuration
cat > ~/.reddcoin/reddcoin.conf << 'EOF'
# Basic Reddcoin Configuration
server=1
daemon=0
listen=1
maxconnections=125

# Staking Configuration
staking=1
reservebalance=0

# Network Settings
port=45444
rpcport=45443
rpcbind=127.0.0.1
rpcallowip=127.0.0.1

# Performance Settings
dbcache=512
maxmempool=300

# Optional: Reduce bandwidth usage
# maxuploadtarget=5000

# Optional: Enable pruning for limited disk space
# prune=5000

# Logging
printtoconsole=0
shrinkdebugfile=1
EOF

# Set secure permissions
chmod 600 ~/.reddcoin/reddcoin.conf

Step 3: First Launch

# GUI wallet
reddcoin-qt

# Or daemon mode
reddcoind -daemon

# Check daemon status
reddcoin-cli getinfo

Advanced Configuration Options

Performance Tuning:

# Memory settings (adjust based on available RAM)
dbcache=2048          # Database cache (MB)
maxmempool=512        # Memory pool size (MB)
mempoolexpiry=72      # Hours to keep transactions in mempool

# Network optimization
maxconnections=200    # Maximum peer connections
maxuploadtarget=0     # Unlimited upload (0 = disabled)
blocksonly=0          # Download full transactions (0 = full node)

# Staking optimization
stakegen=1            # Enable stake generation
stakemintime=8        # Minimum stake time (hours)
stakecombine=100      # Combine UTXOs for staking

Security Configuration:

# RPC Security
rpcuser=your_username
rpcpassword=your_secure_password
rpcssl=1

# Network security
onlynet=ipv4          # IPv4 only
proxy=127.0.0.1:9050  # Tor proxy (if using Tor)
listen=0              # Don't accept incoming connections

Logging Configuration:

# Debug logging
debug=1
debuglogfile=/path/to/custom/debug.log

# Specific debug categories
debug=net             # Network messages
debug=stake           # Staking information
debug=rpc             # RPC calls

Systemd Service (Auto-start)

Create systemd service file:

sudo tee /etc/systemd/system/reddcoind.service > /dev/null << 'EOF'
[Unit]
Description=Reddcoin daemon
After=network.target

[Service]
Type=forking
User=reddcoin
Group=reddcoin
WorkingDirectory=/home/reddcoin
ExecStart=/usr/local/bin/reddcoind -daemon -conf=/home/reddcoin/.reddcoin/reddcoin.conf -datadir=/home/reddcoin/.reddcoin
ExecReload=/bin/kill -HUP $MAINPID
KillMode=mixed
Restart=always
RestartSec=5
TimeoutStopSec=60

# Security settings
NoNewPrivileges=yes
PrivateTmp=yes
ProtectSystem=full
ProtectHome=false
ReadWriteDirectories=/home/reddcoin/.reddcoin

[Install]
WantedBy=multi-user.target
EOF

# Create dedicated user (recommended)
sudo useradd -r -m -s /bin/bash reddcoin
sudo -u reddcoin mkdir -p /home/reddcoin/.reddcoin
sudo -u reddcoin cp ~/.reddcoin/reddcoin.conf /home/reddcoin/.reddcoin/

# Enable and start service
sudo systemctl daemon-reload
sudo systemctl enable reddcoind
sudo systemctl start reddcoind

# Check status
sudo systemctl status reddcoind

Environment Variables

Set custom data directory:

# Add to ~/.bashrc or ~/.zshrc
export REDDCOIN_DATADIR="$HOME/.reddcoin"
export REDDCOIN_CONF="$HOME/.reddcoin/reddcoin.conf"

# Reload shell
source ~/.bashrc

Firewall Configuration

UFW (Ubuntu/Debian):

# Enable UFW if not already enabled
sudo ufw enable

# Allow Reddcoin port
sudo ufw allow 45444/tcp comment 'Reddcoin Core'

# Check status
sudo ufw status numbered

FirewallD (CentOS/RHEL/Fedora):

# Check if firewalld is running
sudo systemctl status firewalld

# Allow Reddcoin port
sudo firewall-cmd --permanent --add-port=45444/tcp
sudo firewall-cmd --reload

# Verify rule
sudo firewall-cmd --list-ports

iptables (Manual):

# Allow incoming connections on port 45444
sudo iptables -A INPUT -p tcp --dport 45444 -j ACCEPT

# Save rules (method varies by distribution)
# Ubuntu/Debian:
sudo iptables-save > /etc/iptables/rules.v4
# CentOS/RHEL:
sudo service iptables save

Estimated Time: 20-30 minutes for complete configuration


5. Verification and Testing

Verify Successful Installation

Step 1: Command Availability

# Check if binaries are in PATH
which reddcoin-qt
which reddcoind
which reddcoin-cli

# Verify version
reddcoin-qt --version
reddcoind --version
reddcoin-cli --version

Step 2: Basic Functionality

# Start daemon in background
reddcoind -daemon

# Wait a moment for startup
sleep 5

# Check basic info
reddcoin-cli getinfo

# Check network info
reddcoin-cli getnetworkinfo

# Check blockchain info
reddcoin-cli getblockchaininfo

Step 3: Network Connectivity

# Check peer connections
reddcoin-cli getconnectioncount

# List connected peers
reddcoin-cli getpeerinfo

# Check if port is listening
netstat -tlnp | grep 45444
# or with ss
ss -tlnp | grep 45444

Blockchain Synchronization Verification

Monitor Sync Progress:

# Check sync status
reddcoin-cli getblockchaininfo | grep -E "blocks|headers"

# Monitor in real-time
watch -n 30 'reddcoin-cli getblockchaininfo | grep -E "blocks|headers|verificationprogress"'

# Check specific sync percentage
reddcoin-cli getblockchaininfo | jq '.verificationprogress * 100'

Estimate Sync Time:

#!/bin/bash
# Simple sync progress script
CURRENT=$(reddcoin-cli getblockchaininfo | jq '.blocks')
HEADERS=$(reddcoin-cli getblockchaininfo | jq '.headers')
PROGRESS=$(echo "scale=2; $CURRENT / $HEADERS * 100" | bc)
REMAINING=$(echo "$HEADERS - $CURRENT" | bc)

echo "Current blocks: $CURRENT"
echo "Total headers: $HEADERS"
echo "Progress: $PROGRESS%"
echo "Blocks remaining: $REMAINING"

Basic Functionality Tests

Test 1: Wallet Operations

# Check wallet info
reddcoin-cli getwalletinfo

# Generate new address
reddcoin-cli getnewaddress

# List all addresses
reddcoin-cli listreceivedbyaddress 0 true

# Check balance
reddcoin-cli getbalance

Test 2: Staking Verification (after sync completion)

# Check staking status
reddcoin-cli getstakinginfo

# Expected output should show:
# - "enabled": true
# - "staking": true (if wallet is unlocked and has mature coins)
# - "weight": > 0 (if you have stakeable coins)

Test 3: Configuration Loading

# Verify configuration is loaded
reddcoin-cli getinfo | grep -E "version|connections|blocks"

# Check specific config values
reddcoin-cli getnetworkinfo | jq '.localaddresses'

Test 4: RPC Interface

# Test RPC authentication (if configured)
curl --user your_username:your_password \
     --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getinfo", "params": [] }' \
     -H 'content-type: text/plain;' \
     http://127.0.0.1:45443/

Performance Testing

Resource Usage Monitoring:

# Monitor CPU and memory usage
top -p $(pgrep reddcoind)

# Detailed process information
ps aux | grep reddcoin

# Check disk usage
du -sh ~/.reddcoin/

# Monitor network usage
nethogs  # Install with: sudo apt install nethogs

Database Performance:

# Check database statistics
reddcoin-cli gettxoutsetinfo

# Verify database integrity
reddcoind -checkblocks=100  # Check last 100 blocks

Log File Analysis

Primary Log Locations:

# Main debug log
tail -f ~/.reddcoin/debug.log

# Filter for specific information
grep -i "error\|warning" ~/.reddcoin/debug.log
grep -i "staking\|stake" ~/.reddcoin/debug.log | tail -20
grep -i "connection\|peer" ~/.reddcoin/debug.log | tail -10

Log Analysis Scripts:

# Count connections over time
grep "addcon" ~/.reddcoin/debug.log | tail -50

# Check for recent errors
grep "$(date +%Y-%m-%d)" ~/.reddcoin/debug.log | grep -i error

# Monitor staking activity
grep "$(date +%Y-%m-%d)" ~/.reddcoin/debug.log | grep -i stake

Systemd Logs (if using service):

# View service logs
sudo journalctl -u reddcoind -f

# Check for errors
sudo journalctl -u reddcoind --since "1 hour ago" | grep -i error

# View startup logs
sudo journalctl -u reddcoind --since "today" | head -50

Estimated Time: 10-15 minutes for verification tests


6. Troubleshooting

Common Installation Issues

Issue 1: "Command not found" after installation

# Check if binaries exist
ls -la /usr/local/bin/reddcoin*
ls -la ~/.local/reddcoin/bin/

# Fix PATH if needed
echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

# Or create symlinks manually
sudo ln -sf /opt/reddcoin/bin/* /usr/local/bin/

Issue 2: Permission denied errors

# Fix ownership and permissions
sudo chown -R $USER:$USER ~/.reddcoin/
chmod 700 ~/.reddcoin/
chmod 600 ~/.reddcoin/wallet.dat
chmod 600 ~/.reddcoin/reddcoin.conf

Issue 3: Missing dependencies

# Check missing libraries
ldd $(which reddcoind) | grep "not found"

# Install missing Qt5 libraries (GUI)
sudo apt install -y libqt5gui5 libqt5core5a libqt5dbus5 libqt5network5 libqt5widgets5

# Install missing system libraries
sudo apt install -y libssl1.1 libevent-2.1-7 libboost-system1.71.0 libboost-filesystem1.71.0

Issue 4: Database corruption during initial sync

# Stop daemon
reddcoin-cli stop

# Reindex blockchain
reddcoind -reindex

# If corruption persists, fresh sync
rm -rf ~/.reddcoin/blocks ~/.reddcoin/chainstate
reddcoind -daemon

Network and Connectivity Issues

Issue 1: No peer connections

# Check network connectivity
ping -c 3 seed1.reddcoin.com

# Test port connectivity
telnet seed1.reddcoin.com 45444

# Add seed nodes manually
cat >> ~/.reddcoin/reddcoin.conf << 'EOF'
addnode=seed1.reddcoin.com
addnode=seed2.reddcoin.com
addnode=seed3.reddcoin.com
EOF

# Restart daemon
reddcoin-cli stop
reddcoind -daemon

Issue 2: Firewall blocking connections

# Check if port is blocked
sudo netstat -tlnp | grep 45444

# Test firewall rules
sudo ufw status verbose
sudo iptables -L -n | grep 45444

# Temporarily disable firewall for testing
sudo ufw disable  # Remember to re-enable!

Issue 3: Slow synchronization

# Increase database cache
echo "dbcache=2048" >> ~/.reddcoin/reddcoin.conf

# Add more connections
echo "maxconnections=200" >> ~/.reddcoin/reddcoin.conf

# Use bootstrap if available
# wget [bootstrap_url] -O ~/.reddcoin/bootstrap.tar.gz
# cd ~/.reddcoin && tar -xzf bootstrap.tar.gz

# Restart with new settings
reddcoin-cli stop
reddcoind -daemon

Staking Issues

Issue 1: Staking not active

# Check staking status
reddcoin-cli getstakinginfo

# Common solutions:
# 1. Unlock wallet for staking
reddcoin-cli walletpassphrase "your_passphrase" 0 true

# 2. Wait for coins to mature (8 hours after last transaction)
reddcoin-cli listunspent | jq '.[] | select(.confirmations < 480)'

# 3. Check if wallet has coins
reddcoin-cli getbalance

Issue 2: Low staking weight

# Check current weight
reddcoin-cli getstakinginfo | jq '.weight'

# Consolidate small UTXOs
reddcoin-cli sendtoaddress $(reddcoin-cli getnewaddress) $(reddcoin-cli getbalance) "" "" true

System Resource Issues

Issue 1: High memory usage

# Reduce database cache
echo "dbcache=256" >> ~/.reddcoin/reddcoin.conf

# Enable pruning
echo "prune=5000" >> ~/.reddcoin/reddcoin.conf

# Restart daemon
reddcoin-cli stop
reddcoind -daemon

Issue 2: Slow disk I/O

# Check disk speed
sudo hdparm -t /dev/sda  # Replace with your disk

# Move to faster storage
sudo systemctl stop reddcoind
mv ~/.reddcoin /path/to/ssd/reddcoin
ln -sf /path/to/ssd/reddcoin ~/.reddcoin
sudo systemctl start reddcoind

Error Messages and Solutions

"Error: Unable to bind to port 45444"

# Check what's using the port
sudo lsof -i :45444
sudo netstat -tlnp | grep 45444

# Kill conflicting process
sudo pkill -f reddcoin

# Or use different port
echo "port=45445" >> ~/.reddcoin/reddcoin.conf

"Error loading wallet.dat"

# Check file permissions
ls -la ~/.reddcoin/wallet.dat

# Fix permissions
chmod 600 ~/.reddcoin/wallet.dat

# Restore from backup
cp ~/ReddcoinBackups/[date]/wallet.dat ~/.reddcoin/

# Salvage corrupted wallet
reddcoind -salvagewallet

"Insufficient funds" for staking

# Check mature balance
reddcoin-cli getbalance
reddcoin-cli getbalance "*" 480  # Balance with 480+ confirmations

# Check if wallet is unlocked
reddcoin-cli walletpassphrase "your_passphrase" 0 true

"Database corrupted" errors

# Try repair first
reddcoind -checkblocks=2016  # Check last 2016 blocks

# Reindex if repair fails
reddcoin-cli stop
reddcoind -reindex

# Last resort - fresh sync
reddcoin-cli stop
rm -rf ~/.reddcoin/blocks ~/.reddcoin/chainstate ~/.reddcoin/peers.dat
reddcoind -daemon

Distribution-Specific Issues

Ubuntu/Debian: Package conflicts

# Remove conflicting packages
sudo apt remove --purge reddcoin*

# Clean package cache
sudo apt autoremove
sudo apt autoclean

# Reinstall dependencies
sudo apt install -y libqt5gui5 libqt5core5a libboost-all-dev

CentOS/RHEL: SELinux issues

# Check SELinux status
sestatus

# Set permissive mode temporarily
sudo setenforce 0

# Create custom SELinux policy (advanced)
sudo setsebool -P allow_execmem on

Arch Linux: Rolling release issues

# Update system first
sudo pacman -Syu

# Rebuild AUR package
yay -S reddcoin-core --rebuild

# Check for missing dependencies
ldd $(which reddcoind) | grep "not found"

Getting Additional Help

System Information Collection:

# Collect system info for support requests
cat > ~/reddcoin_system_info.txt << EOF
System Information:
==================
Distribution: $(lsb_release -d 2>/dev/null || cat /etc/os-release | grep PRETTY_NAME)
Kernel: $(uname -r)
Architecture: $(uname -m)
Memory: $(free -h | grep Mem:)
Disk Space: $(df -h ~/.reddcoin 2>/dev/null || df -h ~)

Reddcoin Information:
====================
Version: $(reddcoind --version 2>/dev/null || echo "Not installed")
Config: $(cat ~/.reddcoin/reddcoin.conf 2>/dev/null | grep -v "^#" | grep -v "^$" || echo "No config found")
Status: $(reddcoin-cli getinfo 2>/dev/null || echo "Daemon not running")

Recent Errors:
=============
$(grep -i error ~/.reddcoin/debug.log 2>/dev/null | tail -10 || echo "No debug log found")
EOF

echo "System information saved to ~/reddcoin_system_info.txt"

Official Resources:

Community Support:

  • Reddit: r/reddcoin
  • Discord: Official Reddcoin Discord server
  • Telegram: @reddcoin_official
  • BitcoinTalk: Reddcoin announcement thread

Linux-Specific Help:

  • Distribution Forums: Ubuntu Forums, Arch Wiki, CentOS Forums
  • Stack Overflow: For programming and configuration questions
  • Linux Subreddits: r/linux, r/linuxquestions

7. Uninstallation

Complete Removal Instructions

Step 1: Stop All Reddcoin Processes

# Stop daemon gracefully
reddcoin-cli stop

# Wait for shutdown
sleep 10

# Force kill if necessary
sudo pkill -f reddcoin
sudo pkill -f "Reddcoin Core"

# Stop systemd service (if configured)
sudo systemctl stop reddcoind
sudo systemctl disable reddcoind

Step 2: Backup Critical Data ⚠️ Warning: Last chance to backup your wallet!

# Create final backup
mkdir -p ~/FinalReddcoinBackup
cp ~/.reddcoin/wallet.dat ~/FinalReddcoinBackup/ 2>/dev/null || echo "No wallet found"
cp ~/.reddcoin/reddcoin.conf ~/FinalReddcoinBackup/ 2>/dev/null || echo "No config found"
cp -r ~/.reddcoin ~/FinalReddcoinBackup/complete_backup 2>/dev/null || echo "No data directory found"

echo "Final backup created in ~/FinalReddcoinBackup/"

Remove Installation Files

Method 1: System-wide Installation

# Remove binaries
sudo rm -f /usr/local/bin/reddcoin-qt
sudo rm -f /usr/local/bin/reddcoind
sudo rm -f /usr/local/bin/reddcoin-cli

# Remove installation directory
sudo rm -rf /opt/reddcoin

# Remove systemd service
sudo rm -f /etc/systemd/system/reddcoind.service
sudo systemctl daemon-reload

Method 2: User Installation

# Remove from local directory
rm -rf ~/.local/reddcoin
rm -f ~/.local/bin/reddcoin*

# Remove desktop entry
rm -f ~/.local/share/applications/reddcoin-core.desktop
update-desktop-database ~/.local/share/applications/

Method 3: Package Manager

# Ubuntu/Debian (if installed via PPA)
sudo apt remove --purge reddcoin-core
sudo add-apt-repository --remove ppa:reddcoin/reddcoin-core

# Arch Linux (AUR)
yay -Rns reddcoin-core
# or
sudo pacman -Rns reddcoin-core

# Flatpak
flatpak uninstall com.reddcoin.Core

Cleanup Configuration and Data

Step 3: Remove Data Directory (Optional) ⚠️ Final Warning: This permanently deletes your wallet and all data!

# List contents before deletion
ls -la ~/.reddcoin/

# Remove entire data directory
rm -rf ~/.reddcoin/

# Or selective removal (keeping wallet backup)
cd ~/.reddcoin/
cp wallet.dat ~/wallet_final_backup.dat
rm -rf blocks/ chainstate/ database/ debug.log peers.dat
# Keep: wallet.dat, reddcoin.conf

Step 4: Remove User Account (if created)

# Remove dedicated reddcoin user (if created)
sudo systemctl stop reddcoind
sudo userdel -r reddcoin

Step 5: Cleanup System Configuration

# Remove from PATH (edit shell config files)
sed -i '/reddcoin/d' ~/.bashrc
sed -i '/reddcoin/d' ~/.zshrc

# Remove environment variables
sed -i '/REDDCOIN_/d' ~/.bashrc
sed -i '/REDDCOIN_/d' ~/.zshrc

# Reload shell configuration
source ~/.bashrc

Step 6: Firewall Rules Cleanup

# UFW
sudo ufw delete allow 45444/tcp

# FirewallD
sudo firewall-cmd --permanent --remove-port=45444/tcp
sudo firewall-cmd --reload

# iptables (remove manually added rules)
sudo iptables -D INPUT -p tcp --dport 45444 -j ACCEPT

Step 7: Remove Build Dependencies (Optional)

# Ubuntu/Debian - remove development packages (if only used for Reddcoin)
sudo apt autoremove build-essential libtool autotools-dev automake pkg-config \
    libssl-dev libevent-dev bsdmainutils python3 libboost-all-dev libdb5.3-dev \
    libdb5.3++-dev libminiupnpc-dev libzmq3-dev libqt5gui5 libqt5core5a \
    libqt5dbus5 qttools5-dev qttools5-dev-tools libqrencode-dev

# CentOS/RHEL/Fedora
sudo dnf group remove "Development Tools"
sudo dnf remove openssl-devel libevent-devel boost-devel db4-devel \
    miniupnpc-devel zeromq-devel qt5-qtbase-devel qt5-qttools-devel qrencode-devel

Final Verification

Verify Complete Removal:

# Check for remaining binaries
which reddcoin-qt reddcoind reddcoin-cli

# Search for remaining files
find /usr -name "*reddcoin*" 2>/dev/null
find /opt -name "*reddcoin*" 2>/dev/null
find ~ -name "*reddcoin*" -not -path "*/FinalReddcoinBackup/*" 2>/dev/null

# Check for running processes
ps aux | grep -i reddcoin

# Verify port not in use
netstat -tlnp | grep 45444
ss -tlnp | grep 45444

# Check systemd services
systemctl list-unit-files | grep reddcoin

Clean Package Manager Cache:

# Ubuntu/Debian
sudo apt autoremove
sudo apt autoclean

# CentOS/RHEL/Fedora
sudo dnf autoremove
sudo dnf clean all

# Arch Linux
sudo pacman -Sc

Remove Log Entries:

# Clear systemd logs (optional)
sudo journalctl --vacuum-time=1d

# Remove from shell history (optional)
history | grep -i reddcoin
# Edit ~/.bash_history to remove entries manually

Estimated Time: 10-20 minutes for complete removal


Summary

This comprehensive guide covered the complete installation, configuration, and management of Reddcoin Core 4.22.9 on Linux systems. Key highlights include:

Installation Summary

  • Multiple Methods: Binary installation, package managers, and source compilation
  • Architecture Support: x86_64, ARM64, ARM32, PowerPC, and RISC-V
  • Distribution Coverage: Ubuntu, Debian, CentOS, RHEL, Fedora, Arch, and others

Key Configuration Points

  • Data Directory: ~/.reddcoin/ for user data and blockchain
  • Configuration File: reddcoin.conf for customizing behavior
  • Network Settings: Port 45444 for P2P communication
  • Staking Configuration: Enable for earning rewards while securing network

System Integration

  • Systemd Service: Automatic startup and management
  • Firewall Configuration: Proper port access for network connectivity
  • Desktop Integration: GUI application entry for desktop environments
  • Command Line Tools: Full CLI access for advanced operations

Performance Optimization

  • SSD Storage: Recommended for blockchain data directory
  • Memory Tuning: Configurable database cache and memory pool
  • Network Optimization: Adjustable connection limits and bandwidth
  • Pruning Options: Reduce disk usage for resource-constrained systems

Security Best Practices

  • Wallet Encryption: Strong passphrase protection
  • Regular Backups: Automated and manual backup strategies
  • Dedicated User: Isolated system account for daemon operation
  • Firewall Rules: Controlled network access

Troubleshooting Coverage

  • Common Issues: Installation, network, and configuration problems
  • Distribution-Specific: Solutions for major Linux distributions
  • Performance Issues: Memory usage, disk I/O, and network optimization
  • Log Analysis: Comprehensive debugging techniques

Community Resources

  • Official Channels: Website, GitHub, and documentation
  • Community Support: Reddit, Discord, and Telegram
  • Technical Help: Stack Overflow and distribution forums

The initial blockchain synchronization typically takes 2-24 hours depending on your hardware, internet connection, and storage type. SSD storage significantly improves sync speed and ongoing performance.

Once synchronized, your Reddcoin Core installation will be ready for:

  • Sending and receiving Reddcoins (RDD)
  • Staking to earn rewards and secure the network
  • Running a full node to support the Reddcoin network
  • Advanced operations via RPC interface and CLI tools

For ongoing maintenance, monitor the debug logs, keep your system updated, and maintain regular wallet backups. Stay connected with the Reddcoin community for updates, security announcements, and technical support.