Running pruned node on Umbrel?

Is it possible to get away with a smaller SSD by running Core as a pruned node? Technically LND can work with pruned Core node, but I wonder if Umbrel supports it too, or not.

Came here looking for an answer to this as well.

I know VPS hosting is not the best practice but if Umbrel could run pruned then that would cut VPS costs significantly.

Hi there!

I tried it myself on testnet so I edited bitcoin.conf and set prune=1000 while doing #txindex=1, but doesn’t seem to work for me.

It’s probably not recommended but I managed to get Umbrel working with Bitcoin in pruned mode on my Linux Ubuntu home server (old laptop, 4GB RAM, 120 SSD).

I edited the bitcoin.conf file: txindex and blockfilterindex are disabled. Prune is set 10 000. This takes up about 25 GB on the SSD.

What I tested and what seems to work:

  • on-chain tx’s
  • private LN channel open via Ride The Lightning app
  • LND lightning tx’s
  • connecting to Zap Lightning Wallet
  • BTC RPC Explorer

Things that DON’T work:

  • The Electrum server does not support pruned nodes. The result is that the Docker container keeps restarting in the background. It does not seem to consume much resources and does not seem to affect the Umbrel functionality.
  • Apps that rely on Electrum server do not work. I think this is the case for Mempool.space as it displays stuck at syncing 99% in the UI.
  • Connecting wallets that require Electrum do no work: I tried Phoenix and Blue Wallet.

Take into account that after each Umbrel update the bitcoin.conf file is overwritten so you have to remember to edit it manually to keep the pruned bitcoin configuration.

4 Likes

Hi Jorishr,
Im in Australia and can’t download a full node as too large. Can I run a pruned node on a Raspberry Pi with only a microSD as storage? I want to have a go at Lightning Pool is still possible? Can I send some sats for help to get running?

Kind regards
Tim Lester tim (ats) nuganics (dot) ((com))

If you want to run a small node, you can use on your own mobile these 2 Neutrino nodes:
Blixt - https://blixtwallet.github.io
Nayuta - https://nayuta.co/core
In max 10-15 min you have a ready to use LN node on your mobile.

1 Like

Thank you DarthCoin, I really want to try Lightning Pool. I run a full node on a VPS but too complex to add lightning (I know there are guides but really out of my league, im a agronomist by trade). I think a pruned node will help more people get into the Umbel community just need a bit of help (can send sats). Would be great to get into core if good enough so others can benefit also.

Don’t struggle too much having from the beginning a running node.
Running a node is something very important and require a previous knowledge and experience.
Start low, increase your base knowledge and you will know when is time to run a node.
Please read this another guides I wrote, maybe will give you more insight:
Be your own bank - think like a bank
Bitcoin for merchants - how to start
Bitcoin LN wallet - how to fund it
and many more on my substack page

Thank you. I have done more reading and MicroSD isn’t too stable for constant writing so blocks would have to be kept in memory (Raspberry Pi OS has this option) then periodically written to MicroSD to limit the number of writes. Another option might be to trust another node or better still a collection of nodes that change so less issues with bad actors. All a bit beyond me but hopefully someone works out a decent compromise so more nodes are run especially in areas where banking is terrible.

p.s I read a few of your articles and like the don’t think you can earn without work like a Communist :slight_smile:

Greetings fellow plebs.

This is an update to the post by @jorishr Sep '21 on how to prune a Umbrel Bitcoin node using Umbrel v0.5.x. I’m using v0.5.3 on an old laptop with 2 cores, 8GB RAM, 500GB SSD running Debian 11.

Pruning a Bitcoin node allows you to reduce the disk space required for a resource constrained server. As noted by @jorishr, it’s probably not recommended in the official Umbrel guide to do so, and it will break Electrs and other apps that require Electrs such as Mempool. So proceed at your own risk. :slight_smile:

As noted in a few previous posts, with the introduction of v0.5, Umbrel no longer creates a bitcoin.conf file in the ~/umbrel/app-data/bitcoin/data/bitcoin directory. You can create one and add the prune command, but then you also need to add the other commands Umbrel is using to start bitcoind.

Here is a better solution by editing the exports.sh script [note commands listed are for Debian, so adjust according to your machine’s distro]:

  1. Stop umbrel running
    $ sudo ~/umbrel/scripts/stop
  2. Make a backup copy of exports.sh
    $ cp ~/umbrel/app-data/bitcoin/exports.sh ~/umbrel/app-data/bitcoin/exports.bk
  3. Edit exports.sh
    $ nano ~/umbrel/app-data/bitcoin/exports.sh
    Scroll down to the lines beginning with BIN_ARG
    DELETE the following lines:
    BIN_ARGS+=( “-txindex=1” )
    BIN_ARGS+=( “-blockfilterindex=1” )
    BIN_ARGS+=( “-peerbloomfilters=1” )
    BIN_ARGS+=( “-peerblockfilters=1” )

ADD the following line:
BIN_ARGS+=( “-prune=5000" )

Press CONTROL-O to save
Press CONTROL-X to exit

*Note: It can be 550, 1000, 2000, 10000, 20000 or any value as you like. But 550 is the minimum recommended value and setting anything lower will not work. It should be >=550. For example if you are fine to allow 5 GB of blockchain size then you can set prune=5000.

**Note: I’m not 100% sure you need to delete BIN_ARGS+=( “-peerbloomfilters=1” ) and BIN_ARGS+=( “-peerblockfilters=1” ), but it worked for me.

***Note: I needed to delete and reinstall the Liquid Elements Core app after pruning. It seems to be working again. Everything else on my server worked unchanged.

  1. Restart Umbrel
    $ sudo ~/umbrel/scripts/start

  2. Check Bitcoin log files
    $ sudo tail -f ~/umbrel/app-data/bitcoin/data/bitcoin/debug.log

verify the following in the log file:
Command-line arg: prune=“5000”
Unsetting NODE_NETWORK on prune mode
init message: Pruning blockstore…

Happy Pruning

This is currently outdated you can find the update on reddit worked for me

Blockquote

  1. Add / update following lines to /umbrel/app-data/bitcoin/data/bitcoin/umbrel-bitcoin.conf (for 10GB prune)

prune=10000

txindex=0

  1. Update /umbrel/app-data/bitcoin/exports.sh and comment following lines:

#BIN_ARGS+=( "-blockfilterindex=1" )

#BIN_ARGS+=( "-peerbloomfilters=1" )

#BIN_ARGS+=( "-peerblockfilters=1" )

  1. Update /umbrel/app-data/bitcoin/data/app/bitcoin-config.json and set:

"prune": {

"enabled": true,

"pruneSizeGB": 10

Blockquote

1 Like

ok looks like the 3rd config is all you should need because I now see pruned option in the drop down settings of the umbrel bitcoin app and that is where it saves it. I cant remember if you change it prior to it 100% syncing a new node in the app but you can via a text editor.