Skip to content

Instantly share code, notes, and snippets.

@kdmukai
Last active February 16, 2024 15:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kdmukai/c13fabe7cc7c0ef3e334814b16040b0c to your computer and use it in GitHub Desktop.
Save kdmukai/c13fabe7cc7c0ef3e334814b16040b0c to your computer and use it in GitHub Desktop.
Create Fulcrum CT in Proxmox

Create a Fulcrum CT in Proxmox

Existing Proxmox resources:

  • Separate data drive set up as a "Directory" disk

Create the CT

  • Debian 12 image
  • 1GB disk in local-lvm
  • 8192 MB RAM (8GB), 0 MB swap

Add a data disk mount point

In the CT's "Resources" > "Add" > "Mount point":

  • Storage: "Directory" disk from above
  • Disk size: 300 GB (Fulcrum currently needs about 150GB)
  • Path: /data

Enable ssh

nano /etc/ssh/sshd_config

# In sshd_config:
PermitRootLogin yes

Exit and save changes, restart ssh

/etc/init.d/ssh restart

Install Fulcrum

Download a pre-built binary:

wget https://github.com/cculianu/Fulcrum/releases/download/v1.9.7/Fulcrum-1.9.7-x86_64-linux.tar.gz
tar --extract --file Fulcrum-1.9.7-x86_64-linux.tar.gz
rm Fulcrum-1.9.7-x86_64-linux.tar.gz
cd cd Fulcrum-1.9.7-x86_64-linux/

Copy the Fulcrum quick config and edit accordingly

nano /data/fulcrum.conf

Possible settings tweaks:

  • db_mem = 4096.0 # < 50% of available RAM; biggest speed improvement for initial sync
  • db_max_open_files = 500 (?)
  • fast-sync = 4096 # adjust for what's available, avoids disk i/o slowdowns; turn down after sync is complete?

Run Fulcrum

cd ~/Fulcrum-1.9.7-x86_64-linux
./Fulcrum /data/fulcrum.conf

Install as a service

nano /etc/systemd/system/fulcrum.service

# configuration:
[Unit]
Description=Fulcrum
After=network.target

[Service]
ExecStart=/root/Fulcrum-1.9.7-x86_64-linux/Fulcrum /data/fulcrum.conf
TimeoutStopSec=30min
Restart=always
StandardOutput=append:/data/stdout.log
StandardError=append:/data/error.log

[Install]
WantedBy=multi-user.target

Load the new service and run:

systemctl enable fulcrum
systemctl start fulcrum
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment