bitcoin/bitcoin.conf at master · bitcoin/bitcoin · GitHub

Lnd with Bitcoind ZeroMQ Connection Refused

Hi All,
Trying to set this up and can't get it to work.
bitcoin.conf:
datadir=/Backup/Blockchain/Bitcoin server=1 rpcport=8332 rpcuser=bitcoinrpc rpcpassword={somepasswd} txindex=1 zmqpubrawblock=tcp://127.0.0.1:28332 zmqpubrawtx=tcp://127.0.0.1:28332
lnd.conf
[Bitcoin] bitcoin.active=1 bitcoin.node=bitcoind [Bitcoind] bitcoind.rpcuser=bitcoinrpc bitcoind.rpcpass={somepasswd} bitcoind.zmqpath=tcp://127.0.0.1:28332
I get the following:
[email protected]:~/.lnd$ lnd --bitcoin.mainnet 2018-03-18 16:16:51.743 [INF] LTND: Version 0.4.0-beta 2018-03-18 16:16:51.743 [INF] LTND: Active chain: Bitcoin (network=mainnet) 2018-03-18 16:16:51.752 [INF] CHDB: Checking for schema update: latest_version=0, db_version=0 2018-03-18 16:16:51.843 [INF] RPCS: password RPC server listening on 127.0.0.1:10009 2018-03-18 16:16:51.847 [INF] RPCS: password gRPC proxy started at 127.0.0.1:8080 2018-03-18 16:16:51.847 [INF] LTND: Waiting for wallet encryption password. Use lncli create to create wallet, or lncli unlock to unlock already created wallet. 2018-03-18 16:18:14.427 [INF] LNWL: Opened wallet 2018-03-18 16:18:14.557 [INF] LTND: Primary chain is set to: bitcoin 2018-03-18 16:18:14.557 [INF] LTND: Initializing bitcoind backed fee estimator 2018-03-18 16:18:15.925 [INF] LNWL: Opened wallet unable to start wallet: dial tcp 127.0.0.1:28332: connect: connection refused unable to create chain control: dial tcp 127.0.0.1:28332: connect: connection refused
submitted by anonCapitalist to BitcoinBeginners [link] [comments]

A simple script to ban peers from your node

#!/bin/bash # autoban.sh # shell script to automatically identify and ban certain bitcoin clients # developed and tested on Raspi3 (Raspian) # Step 1) Adjust BTC_CLI variable so it calls bitcoin-cli with the right parameters # My setup requires the -conf and -datadir parameters BTC_CLI="/uslocal/bin/bitcoin-cli -conf=/home/pi/bitcoin.conf -datadir=/media/usb0/btcdta" # Step 2) Enter the list of nodes you wish to ban separated with a comma # make sure the peer version doesn't contain any commas BANNED="/ViaBTC:bitpeer.0.2.0/,/BitcoinUnlimited:1.0.3(EB16;AD12)/,/Satoshi:1.14.4(2x)/,/bitcoinj:0.14.5/" #3) The main script based on mawk (not tested with awk or gawk) $BTC_CLI getpeerinfo | mawk -F":" -v banned="$BANNED" -v btccli="$BTC_CLI" -- ' BEGIN { split(banned,BAN,","); } /\"id\"*/ { id=substr($2,2,length($2)-2);ID[id]=id; } /^....\"addr\"/ { if (substr($2,3,1)=="[") { sadr = substr($0,index($0,":")); start = index(sadr,"["); end = index(sadr,"]"); IP[id]=substr(sadr,start,end-3); } else { IP[id]=substr($2,3); } } /\"subver\"*/ { s=length($1)+4; VER[id]=substr($0,s,(length($0)-s-1)); } END { for (id in ID) { for (banned in BAN) { if(VER[id]==BAN[banned]) { system(btccli" setban "IP[id]" add"); } } } }' #4) add script to the crontab to run periodically! 
submitted by kretchino to Bitcoin [link] [comments]

Running bitcoind at startup Ubuntu 17.04

I've created a bitcoin.service file as found here:
https://github.com/bitcoin/bitcoin/blob/mastecontrib/init/bitcoind.service
However i've modified it as i build bitcoin-core from source to the following:
https://gist.github.com/anonymous/7e1bca97739147d698327d7f3a119992
It is installed to:
/lib/systemd/system
As apparently in this version of Ubuntu it must be there
It runs when i run this command:
bitcoind -daemon -pid=/home/chris/.bitcoin/bitcoind.pid - conf=/home/chris/.bitcoin/bitcoin.conf - datadir=/home/chris/.bitcoin/ -disablewallet 
However trying to run:
systemctl start bitcoind 
Gives this error
bitcoind.service - Bitcoin's distributed currency daemon Loaded: loaded (/lib/systemd/system/bitcoind.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since Sun 2017-10-15 17:27:38 BST; 2s ago Process: 4180 ExecStart=/home/chris/.bitcoin/bitcoind -daemon - pid=/home/chris/.bitcoin/bitcoind.pid - conf=/home/chris/.bitcoin/bitcoin.conf -datadir=/home/chris/.bitcoin/ -disablewallet (code=exited, status=203 Oct 15 17:27:38 chris-GE60-2PL systemd[1]: bitcoind.service: Unit entered failed state. Oct 15 17:27:38 chris-GE60-2PL systemd[1]: bitcoind.service: Failed with result 'exit-code'. Oct 15 17:27:38 chris-GE60-2PL systemd[1]: bitcoind.service: Service hold-off time over, scheduling restart. Oct 15 17:27:38 chris-GE60-2PL systemd[1]: Stopped Bitcoin's distributed currency daemon. Oct 15 17:27:38 chris-GE60-2PL systemd[1]: bitcoind.service: Start request repeated too quickly. Oct 15 17:27:38 chris-GE60-2PL systemd[1]: Failed to start Bitcoin's distributed currency daemon. Oct 15 17:27:38 chris-GE60-2PL systemd[1]: bitcoind.service: Unit entered failed state. Oct 15 17:27:38 chris-GE60-2PL systemd[1]: bitcoind.service: Failed with result 'exit-code'. 
Does anyone know what i'm doing wrong here ?
submitted by sunlollyking to Bitcoin [link] [comments]

Bitcoin-qt datadir alternative storage location

I tried asking this in the bitcoincore sub yesterday, but it only has a handful of members and got no answers, so i now try here.
When bitcoin-qt is first started, it asks for the location of datadir. If it is set to a custom location, it remembers it on subsequent launches. Where is this location stored, as no bitcoin.conf is generated in the default location, and i have not seen any other documentation to specify datadir except command line option and bitcoin.conf file?
submitted by varikonniemi to Bitcoin [link] [comments]

Bitcoin Fullnode Install Guide for Dummies ;-)

Bitcoin Fullnode Install Guide for Dummies ;-)
Feel free to stop at Level 0 or Level 1, which is fine. More advanced configs are offered to those with more tech savvy. This guide, obviously assumes a Windows 10 install, but other OSes work fine, just find a different guide. BTW, the "For Dummies" is a callback to a set of "tech" books in the 90's intended to be as easy as possible. It is in jest and not intended to insult the reader. Finally, if you dislike the formatting, a well formatted copy can be found here
There is a fairly small subset of Bitcoin users that run a full node. I think the idea of running a full node has gotten a bad rap over the years since there is so much talk about running on a Raspberry Pi, or getting zippy SSDs. Although all of this can be fun, it is often not really required at all. Here are some ways to run a full node starting with the very simple. I'll get into more complex configs, but these are all optional.

Tech Skill Level: 0 (the basics)

  1. Download Bitcoin Core
  2. Launch the downloaded installer and install the app
  3. Launch the installed "Bitcoin Core" app and let it run overnight
In many cases, thats it. If your running a new machine with a fairly good internet connection, 8 or 9 hours will be enough to complete the "Initial Block Download" (IBD). This may fill up your drive a bit, but again, on most new machines, 300 GB of space isn't that hard to come by.

Tech Skill Level: 1 (encrypted wallet)

One thing we left out in the level-0 exercise is encrypting your wallet. It's easy enough to do well, but a bit more difficult to do right. The main challenge is that humans generate really poor passwords. If you want a good password, the best way is to use something called "diceware". Basically, you just grab 4 or 5 dice and each throw of the dice represents a certain word on a special list. The throw {1,4,5,3,1} for example would be the word camping on the EFF-diceware-wordlist. So you repeat this a few times until you have a list of 8 or so words which becomes the passphrase you use to encrypt your wallet. Write it down, it is always hard to remember at first. So at level-1 your list becomes:
  1. Download Bitcoin Core
  2. Launch the downloaded installer and install the app
  3. Launch the installed "Bitcoin Core" app and let it run overnight
  4. Choose Encrypt Wallet from the Settings menu
  5. Enter your 8 word (or so) passphrase generated using the Diceware method

Wallet Encryption Dialog

Tech Skill Level: 2 (enable pruning if needed)

Though I said "300 GB of space isn't hard to come by", some times it actually is. If space is an issue, a simple way to fix it is to tell bitcoin to simple take less space. This is called "pruning" and can take that number from 300 GB down to below 5 GB. If you can't find 5 GB, then you'll have to read ahead to level-4 to add USB storage. But the good news is, enabling pruning is pretty easy, we just add another step to our working list:
  1. Download Bitcoin Core
  2. Launch the downloaded installer and install the app
  3. Launch the installed "Bitcoin Core" app and let it run overnight
  4. Do the wallet encryption steps here if you wish
  5. Choose Options from the Settings menu
  6. Choose Prune block storage to: and select the max size for the blocks to use
  7. Exit and restart the bitcoin application for the changes to take effect

Pruning Dialog
Note, even setting this to 1 GB will still leave you with about a 4.5 GB install. The blocks take up a lot of space, but the chainstate and other folders eat up at least 3.5 GB and they can't be pruned. Also, be aware, to disable pruning requires you to perform the entire IBD again. While pruned some other functions my be disabled as well, so just know that pruning does limit some functionality.

Tech Skill Level: 3 (verify the installer)

Although this is arguably something that should be done at level-0, some find the intricacies of comparing hash (thumbprint) values to be tedious and beyond the scope of a beginner. You will find these types of hash compares suggested quite often as a way to prevent running tainted programs. Programs are often tainted by bad disk or network performance, but most often, taint is malicious code inserted by viruses or malware. This is a way to guard yourself against those types of attacks.
What I cover here is a very basic comparison on the certificate, but a more thorough verification advised by mosts uses a program called Gpg4Win, and is beyond the scope of this beginners guide. But regardless, most users should strive to do this minimum level of validation.
  1. Download Bitcoin Core
  2. Launch the downloaded installer
  3. When prompted "Do you want to allow..." click Show more details
  4. In the details section select Show information about the publisher's certificate
  5. In the certificate window select the Details tab
  6. In the Details tab Subject should start with "CN = Bitcoin Core Code Signing Association"
  7. Ensure Thumbprint in Details reads ea27d3cefb3eb715ed214176a5d027e01ba1ee86
  8. If the checks pass, click OK to exit the certificate window and Yes to allow the installer to run.
  9. Launch the installed "Bitcoin Core" app and let it run overnight
  10. Do the wallet encryption steps here if you wish
  11. Do the optional pruning steps here if you wish

Certification Validation Windows
Note: The certificate used to sign the current Bitcoin installer is only valid from March 2020 to March 2021. After that point the thumbprint on the certificate will change. This is by design and intentional. If your reading this post after March 2021, then it is understood that the thumbprint has changed.

Tech Skill Level: 4 (use secondary storage)

We glossed over the "new machine with fairly good internet" part. Truth be known many people do not have fairly new machines, and find the IBD to take longer than the "over night" best wishes. For most people the slowdown is the disk access when calculating what is called chainstate. This requires fast random reads and writes to the disk. If you have an SSD disk, this will be no problem, but if you have a non-SSD "spinning" disk, random writes are always slow. Though an SSD will speed things up, they are pricey, so a nice middle ground may be a simple high-end USB key drive. You can get some with 10 to 15 MB/s random writes for $20 on Amazon. This is usually a order of magnitude faster than a "spinning" disk. And with pruning (see level-2), a small USB drive should be fine.
Once you decide on a drive, the tricky part will be to enable external storage. It requires editing a configuration file and adding a line. First, we want to create a directory on the key drive. You will need to determine the drive letter of your USB key drive. For the sake of this example, we will assume it is D:, but you must determine this yourself and correct the example. Once you know the drive letter, create a blank folder on the drive called Bitcoin. So for this example, creating Bitcoin on drive D: will create the path D:\Bitcoin. Once done, assuming that D: is your drive, here are the new steps including the edit of the configuration file:
  1. Download Bitcoin Core
  2. Launch the installer, verify it, then run it
  3. Launch the installed "Bitcoin Core" app and let it run overnight
  4. Do the wallet encryption steps here if you wish
  5. Do the optional pruning steps here if you wish
  6. Launch "Notepad" by typing "Notepad.exe" in the windows search bar then click Open
  7. Type the line datadir=D:\Bitcoin (depending on your drive letter) in the blank file
  8. Choose Save from the File menu in notepad
  9. Type %APPDATA%\Bitcoin\bitcoin.conf (note the percent signs) in the File name box
  10. Select All Files from the Save as type dropdown
  11. Click the Save button and overwrite the file if prompted
  12. Exit and restart the bitcoin application for the changes to take effect

Save As Dialog
Now that you've reached this level of technical expertise, there are many new configuration options that you can begin to modify if you wish. Most configuration data is contained in the bitcoin.conf file and learning how to maintain it is a key step for a node operator.

Tech Skill Level: 5 (all other customizations)

Here's a short list of various things you can ADD to your bitcoin.conf file. You generally just add a new line for each configuration settings.
  • addresstype=bech32
  • changetype=bech32
The addresstype / changetype allows your wallet to use the native-segwit (bech32) format. This is the most efficient and inexpensive way to spend bitcoin, and is a recommended configuration. The default uses something called p2sh-segwit which is more compatible with older wallets, but more expensive to spend.
  • minrelaytxfee=0.00000011
Changing the minrelaytxfee setting allows you to help propagate lower fee transactions. It will require more memory but TXN memory is capped at 300 MB by default anyways, so if you have enough memory, it is a good setting to choose.
  • dbcache=2048
The dbcache setting controls how many MB of memory the program will use for the chainstate database. Since this is a key bottleneck in the IBD, setting this value high (2048 MB) will greatly speed up the IBD, assuming you have the memory to spare
  • blocksdir=C:\Bitcoin
  • datadir=D:\Bitcoin
In level-4 we discussed moving the datadir to a fast external storage, but the majority of the space used for bitcoin is the blocks directory (blocksdir). Although you should always use for fastest storage for datadir, you are free to use slow storage for blocksdir. So if you only want to consume a small amount of your SSD (assumed D:) then you can keep your blocks on your slow "spinning" drive.
  • upnp=1
One of the harder challenges you may face running a node, is to get incoming connections. If you are lucky, you may find that your firewall and network HW support the uPnP protocol. If they do, this setting will allow bitcoin to configure uPnP to allow incoming connections to your node. Other methods exist to make your node reachable, but they are well beyond the scope of this guide.
submitted by brianddk to Bitcoin [link] [comments]

Anatomy of the Bitcoin Node filesystem

There are man explanations like this, but this one is mine.
Just in case anyone was curious. I dug up some good posts on this and thought I'd distill it as best I could. I'll be using Windows file separators, but fee free to change them in your head.
If you name a -datadir argument, this is what will land there. If one is not named it defaults to %APPDATA%\Bitcoin
If you name a -blocksdir argument, this is what will land there. If one is not named it defaults to
If you name a -walletdir argument, this is what will land there. If one is not named it defaults to \wallets or just if the wallets subdirectory doesn't exist.
  • \wallet.dat - The wallet file with private keys and UTXOs
  • \db.log - Database log of access to wallet
Note that -datadir, -blocksdir and -walletdir can all point to different storage. The things you need to keep in mind:
  1. -datadir should be your FASTEST storage
  2. -blocksdir should be your LARGEST storage
  3. -walletdir should be your most SECURE storage
As a footnote, -testnet will throw a testnet3\ in everything, and -walletdir would be assumed to refer to test.walletdir
submitted by brianddk to Bitcoin [link] [comments]

[ Bitcoin ] Anatomy of the Bitcoin Node filesystem

Topic originally posted in Bitcoin by brianddk [link]
There are man explanations like this, but this one is mine.
Just in case anyone was curious. I dug up some good posts on this and thought I'd distill it as best I could. I'll be using Windows file separators, but fee free to change them in your head.
If you name a -datadir argument, this is what will land there. If one is not named it defaults to %APPDATA%\Bitcoin
If you name a -blocksdir argument, this is what will land there. If one is not named it defaults to
  • \blocks\blk*.dat - The raw block data
  • \blocks\rev*.dat - The Undo files. List of spent UTXOs for each block
If you name a -main.walletdir argument, this is what will land there. If one is not named it defaults to \wallets or just if the wallets subdirectory doesn't exist.
  • \wallet.dat - The wallet file with private keys and UTXOs
  • \db.log - Database log of access to wallet
Note that -datadir, -blocksdir and -main.walletdir can all point to different storage. The things you need to keep in mind:
  1. -datadir should be your FASTEST storage
  2. -blocksdir should be your LARGEST storage
  3. -main.walletdir should be your most SECURE storage
As a footnote, testnet will through a testnet3\ in everything, and would require a -test.walletdir switch to set the wallet directory.
brianddk your post has been copied because one or more comments in this topic have been removed. This copy will preserve unmoderated topic. If you would like to opt-out, please send a message using [this link].
[deleted comment]
submitted by anticensor_bot to u/anticensor_bot [link] [comments]

is not pruned!

to have a bitcoin full node on Raspbi I loaded the blockchain with windows on a ssd (vfat), after connection to Raspbi (lubuntu) bitcoin-qt says: sorry your data is pruned, start resync (lasts 4 years). I definitely did not prune, started bitcoin-qt without any commandline options (despite datadir), any idea what went wrong?
submitted by 4piII to Bitcoin [link] [comments]

Test

Test
There is a fairly small subset of Bitcoin users that run a full node. I think the idea of running a full node has gotten a bad rap over the years since there is so much talk about running on a Raspberry Pi, or getting zippy SSDs. Although all of this can be fun, it is often not really required at all. Here are some ways to run a full node starting with the very simple. I'll get into more complex configs, but these are all optional.

Tech Skill Level: 0 (the basics)

  1. Download Bitcoin Core
  2. Launch the downloaded installer and install the app
  3. Launch the installed "Bitcoin Core" app and let it run overnight
In many cases, thats it. If your running a new machine with a fairly good internet connection, 8 or 9 hours will be enough to complete the "Initial Block Download" (IBD). This may fill up your drive a bit, but again, on most new machines, 300 GB of space isn't that hard to come by.

Tech Skill Level: 1 (encrypted wallet)

One thing we left out in the level-0 exercise is encrypting your wallet. It's easy enough to do well, but a bit more difficult to do right. The main challenge is that humans generate really poor passwords. If you want a good password, the best way is to use something called "diceware". Basically, you just grab 4 or 5 dice and each throw of the dice represents a certain word on a special list. The throw {1,4,5,3,1} for example would be the word camping on the EFF-diceware-wordlist. So you repeat this a few times until you have a list of 8 or so words which becomes the passphrase you use to encrypt your wallet. Write it down, it is always hard to remember at first. So at level-1 your list becomes:
  1. Download Bitcoin Core
  2. Launch the downloaded installer and install the app
  3. Launch the installed "Bitcoin Core" app and let it run overnight
  4. Choose Encrypt Wallet from the Settings Menu
  5. Enter your 8 word (or so) passphrase generated using the Diceware method

Wallet Encryption Dialog

Tech Skill Level: 2 (enable pruning if needed)

Though I said "300 GB of space isn't hard to come by", some times it actually is. If space is an issue, a simple way to fix it is to tell bitcoin to simple take less space. This is called "pruning" and can take that number from 300 GB down to below 5 GB. If you can't find 5 GB, then you'll have to read ahead to level-3 to add USB storage. But the good news is, enabling pruning is pretty easy, we just add another step to our working list:
  1. Download Bitcoin Core
  2. Launch the downloaded installer and install the app
  3. Launch the installed "Bitcoin Core" app and let it run overnight
  4. Do the wallet encryption steps here if you wish
  5. Choose Options from the Settings Menu
  6. Choose Prune block storage to: and select the max size for the blocks to use
  7. Exit and restart the bitcoin application for the changes to take effect

Pruning Dialog
Note, even setting this to 1 GB will still leave you with about a 4.5 GB install. The blocks take up a lot of space, but the chainstate and other folders eat up at least 3.5 GB and they can't be pruned. Also, be aware, to disable pruning requires you to perform the entire IBD again. While pruned some other functions my be disabled as well, so just know that pruning does limit some functionality.

Tech Skill Level: 3 (verify the installer)

Although this is arguably something that should be done at level-0, some find the intricacies of comparing hash (thumbprint) values to be tedious and beyond the scope of a beginner. You will find these types of hash compares suggested quite often as a way to prevent running tainted programs. Programs are often tainted by bad disk or network performance, but most often, taint is malicious code inserted by viruses or malware. This is a way to guard yourself against those types of attacks. What I cover here is a very basic comparison on the certificate, but a more thorough comparison advised by mosts uses a program called Gpg4Win, and is beyond the scope of this beginners guide. But regardless, most users should strive to do this minimum level of validation.
  1. Download Bitcoin Core
  2. Launch the downloaded installer
  3. When prompted "Do you want to allow..." click Show more details
  4. In the details section select Show information about the publisher's certificate
  5. In the certificate window select the Details tab
  6. In the Details tab Subject should start with "CN = Bitcoin Core Code Signing Association"
  7. Also ensure Thumbprint reads ea27d3cefb3eb715ed214176a5d027e01ba1ee86
  8. If the checks pass, click OK to exit the certificate window and Yes to allow the installer to run.
  9. Launch the installed "Bitcoin Core" app and let it run overnight
  10. Do the wallet encryption steps here if you wish
  11. Do the optional pruning steps here if you wish

Certification Validation Windows
Note: The certificate used to sign the current Bitcoin installer is only valid from March 2020 to March 2021. After that point the thumbprint on the certificate will change. This is by design and intentional. If your reading this post after March 2021, then it is understood that the thumbprint has changed.

Tech Skill Level: 4 (use secondary storage)

We glossed over the "new machine with fairly good internet" part. Truth me known many people do not have fairly new machines, and find the IBD to take longer than the "over night" best wishes. For most people the slowdown is the disk access when calculating what is called chainstate. This requires fast random reads and writes to the disk. If you have an SSD disk, this will be no problem, but if you have a non-SSD "spinning" disk, random writes are always slow. Though an SSD will speed things up, they are pricey, so a nice middle ground may be a simple high-end USB key drive. You can get some with 10 to 15 MB/s random writes which is usually a order of magnitude faster than a "spinning" disk. And with pruning (see level-2), a small USB drive should be fine.
Once you decide on a drive, the tricky part will be to enable external storage. It requires editing a configuration file and adding a few lines. The configuration file needs to be in both the default directory, and USB key drive, but before we do that, we want to create a directory on the key drive. You will need to determine the drive letter of your USB key drive. For the sake of this example, we will assume it is D:, but you must determine this yourself and correct the example. Once you know the drive letter, create a blank folder on the drive called Bitcoin. So for this example, creating Bitcoin on drive D: will create the path D:\Bitcoin. Once done, assuming that D: is your drive, here are the steps to edit the two configuration files:
  1. Download Bitcoin Core
  2. Launch the installer, verify it, then run it
  3. Launch the installed "Bitcoin Core" app and let it run overnight
  4. Do the wallet encryption steps here if you wish
  5. Do the optional pruning steps here if you wish
  6. Launch "Notepad" by typing "Notepad.exe" in the windows search bar then click Open
  7. Type the line datadir=D:\Bitcoin (depending on your drive letter) in the blank file
  8. Choose Save from the File menu in notepad
  9. Type %APPDATA%\Bitcoin\bitcoin.conf (note the percent signs) in the File name box
  10. Select All Files from the Save as type dropdown
  11. Click the Save button and overwrite the file if prompted
  12. Exit and restart the bitcoin application for the changes to take effect

Save As Dialog
Now that you've reached this level of technical expertise, there are many new configuration options that you can begin to modify if you wish. Most configuration data is contained in the bitcoin.conf file and learning how to maintain it is a key step for a node operator.

Tech Skill Level: 5 (all other customizations)

Here's a short list of various things you can ADD to your bitcoin.conf file. You generally just add a new line for each configuration settings.
  • addresstype=bech32
  • changetype=bech32
The addresstype / changetype allows your wallet to use the native-segwit (bech32) format. This is the most efficient and inexpensive way to spend bitcoin, and is a recommended configuration. The default uses something called p2sh-segwit which is more compatible with older wallets, but more expensive to spend.
  • minrelaytxfee=0.00000011
Changing the minrelaytxfee setting allows you to help propagate lower fee transactions. It will require more memory but TXN memory is capped at 300 MB by default anyways, so if you have enough memory, it is a good setting to choose.
  • dbcache=2048
The dbcache setting controls how many MB of memory the program will use for the chainstate database. Since this is a key bottleneck in the IBD, setting this value high (2048 MB) will greatly speed up the IBD, assuming you have the memory to spare
  • blocksdir=C:\Bitcoin
  • datadir=D:\Bitcoin
In level-4 we discussed moving the datadir to a fast external storage, but the majority of the space used for bitcoin is the blocks directory (blocksdir). Although you should always use for fastest storage for datadir, you are free to use slow storage for blocksdir. So if you only want to consume a small amount of your SSD (assumed D:) then you can keep your blocks on your slow "spinning" drive.
  • upnp=1
One of the harder challenges you may face running a node, is to get incoming connections. If you are lucky, you may find that your firewall and network HW support the uPnP protocol. If they do, this setting will allow bitcoin to configure uPnP to allow incoming connections to your node.
submitted by brianddk to brianddk [link] [comments]

Bitcoin datadir location storage

When bitcoin-qt is first run it asks where to put the datadir, and offers the default location ~/.bitcoin or lets you choose. Where is this choice stored as no bitcoin.conf is generated? How does it know on subsequent launches to look in the custom location?
submitted by varikonniemi to BitcoinCore [link] [comments]

Bitcoin core RPC very slow: "mapOrphan overflow, removed 1 tx"

I am running bitcoin core v0.18.0 and noticed that now my queries made locally through the RPC are taking very long. Here is my bitcoin.conf:
txindex=1 datadir=/media/**** maxmempool=30000 mempoolexpiry=99999 choosedatadir=1 checkblocks=3 minrelayfee=0 maxconnections=9999 debug=mempool debug=mempoolrej addnode=*** addnode=*** logips=1 rest=1 rpcuser=*** rpcpassword=*** 
And here is a sample of the log, notice the unusual mapOrphan overflow lines:
20-05-21T21:04:09Z AcceptToMemoryPool: peer=33: accepted 1755b76d790f73252c0ccf890477803aa295444953514fc5c9aad8c2fe6154e0 (poolsz 20383 txn, 105635 kB) 2020-05-21T21:04:09Z stored orphan tx 89cdced1c7c61bf59633af323fd2dbe07c5a6859c51d83247f0fb01b83eb1451 (mapsz 101 outsz 137) 2020-05-21T21:04:09Z mapOrphan overflow, removed 1 tx 2020-05-21T21:04:10Z AcceptToMemoryPool: peer=26: accepted 1122f2315279bc0378fe51733638ede97dcaa938c2fcbd930d91ac2405999fcd (poolsz 20385 txn, 105762 kB) 2020-05-21T21:04:10Z AcceptToMemoryPool: peer=33: accepted 95bd4499ffd3111dab98dbbcb565ff897f21a07c9242659cd38f452022267f78 (poolsz 20386 txn, 105763 kB) 2020-05-21T21:04:10Z stored orphan tx 8c547967ff198c286770f966256c3b09482c5390a93016e597d8a1c6c6699afa (mapsz 101 outsz 138) 2020-05-21T21:04:10Z mapOrphan overflow, removed 1 tx 2020-05-21T21:04:10Z stored orphan tx 2d5fcb835d580caa7fd32f0260cb4ce0e5edf67bf1dc134d1153d6d3118c7009 (mapsz 101 outsz 138) 2020-05-21T21:04:10Z mapOrphan overflow, removed 1 tx 2020-05-21T21:04:10Z AcceptToMemoryPool: peer=20: accepted a49508232092870d58d4f7c63127cb688897d25f8ba1fb0d1c86e4c4b09a2f00 (poolsz 20387 txn, 105764 kB) 2020-05-21T21:04:10Z stored orphan tx 854ccbbd7fd0f04b466dec92df3cbfe96fd8aa25eb0aa17a8524aa82a4bff6ff (mapsz 101 outsz 138) 2020-05-21T21:04:10Z mapOrphan overflow, removed 1 tx 2020-05-21T21:04:10Z stored orphan tx 8ee4f6de0f5d9bdeaa840749193799636b22498711401936e86fc265574430f7 (mapsz 101 outsz 138) 2020-05-21T21:04:10Z mapOrphan overflow, removed 1 tx 
The node is up-to-date and I didn't detect anything unusual (like a stale block/fork).
submitted by johnturtle to BitcoinBeginners [link] [comments]

Bitcoin core configuration in Windows

I've installed Bitcoin Core on Windows with the installer. I don't know how to increase the number of connections. Currently, it's always 8.
Several sources on the internet claim that custom configuration belong to a bitcoin.conf in the AppData/Bitcoin directory. But that doesn't work for me. I tried. In fact, I found out that the configuration including the datadir is currently contained in the registry. Not a single source I could found tells me that the registry contains these config values, so I'm kinda bummed out by this.
In any case, does that mean that I have to add a config value in the registry? And if so, how? The config names are different, namely, the registry config names are in camel case, while the names in bitcoin.conf are like "maxconnections=150". Help!
Edit: I consider the possibility that using the bitcoin.conf actually works and I made a mistake.
Edit2: Only 8 outgoing connections are possible (without addnode), so I opened the firewall as suggested.
Edit3: I finally get incoming connections. It's still slow but I'm optimistic that the speed will increase. It almost feels like synching an Ethereum node ffs.
Edit4: After having had 16 peers at some point yesterday, I'm back to 8 peers and no incoming connections. Speed is 1.3% per hour.
Edit5: I'm under the impression that I simply underestimated the size of the blockchain. I'm used to download huge files within minutes but 200gb is certainly something else. My bandwidth doesn't seem to be used to its full extent but it spikes up to the maximum throughput from time to time, so I guess this is the limiting factor after all. And some people want even larger blocks? F*** that.
submitted by HelloImRich to Bitcoin [link] [comments]

Spinning up a BU Cash node. Can I just copy my BTC block data over to the BU Cash dir to prevent downloading the entire chain fresh?

Or even symlink the existing BTC block data over?
submitted by suchCow to btc [link] [comments]

Guide to running bitcoind on a Raspberry Pi 4 (4gb ram) on an external hard drive

I have seen a lot of guides online but for a few reasons I thought it'd be good to share how I set up my full node (with relatively few headaches) and less than $150.

Stuff to get

  1. Raspberry Pi 4 (4gb ram is essential!) - $55
  2. Power cable for the raspberry pi - $10
  3. Case for the raspberry pi - $5 (optional, looks good and makes it easier to store)
  4. microHDMI to HDMI cable (needed to view desktop of raspberry pi) - $10
  5. SD Card, at least 8GB - ~$10+ (PS: you may also need a converter to read/write from your PC to the SD card).
  6. External hard drive, ideally at least a 1TB - $50+

Setup the Raspberry pi

  1. Download NOOBS and unzip it to SD card, and insert the SD card into the Raspberry Pi.
  2. Insert the SD card into the Raspberry Pi, and place the Raspberry Pi into its case. Connect the relevant cables, and plug in the power to the Raspberry Pi.
  3. Follow the instructions on screen to get Raspian up and running.

Configuring the External Hard Drive

  1. Turn off automount
  2. Configure the raspberry pi to mount the external hard drive where you want it. See this page on how to configure external hard drives for Raspberry Pis.

Download and configure bitcoin-core

  1. Go to bitcoin.org and download bitcoin-core.
  2. Follow the instructions here and install bitcoin-core.
  3. Create a directory called .bitcoin from the home directory.
  4. Create a file called bitcoin.conf in ~/.bitcoin. Add the following settings to it to ensure that you can process historical transactions:

server=1 txindex=1 rpcuser= rpcpassword= datadir= dbcache=2500 

Run bitcoind

  1. From the command line, run bitcoind -daemon
  2. Now you can run bitcoin-cli -getinfo or tail /debug.log to get info on how bitcoind is doing.
That should do it. Assuming a solid internet connection, you should be up and running relatively quickly (less than a day). If you need help, feel free to ask questions below. I'd be happy to help.
submitted by AdvancedStock3 to BlockchainDataScience [link] [comments]

[DEVELOPMENT] Bitcoind IPV4 testnet port (18332) is failing to bind

[SOLVED] Thanks for everyone that have helped!


Hello everyone, this is a development problem that I'm currently having. Since the BTC Development sub is kind of inactive and I couldn't find any rule contraty to posting about BTC Development, I'll try my luck in here as I'm hopeless already. I've posted on BTC Stack Exchange but no answers also. Please, don't get me wrong, I'm trying to solve this problem for many days now, I've looked up everywhere for this.
I'm new to Bitcoin development and I'm currently having difficulties trying to make RPC calls from a Docker Container to a Bitcoin-Core daemon running in a SSH server. I suppose that the problem may be with Firewall or closed ports, but I also do not know much about Network settings.
I'm using nbobtc/bitcoind-php package to make the RPC calls with HTTP requests, and it is running in a Docker container. I'm sure the container is functional and is not the problem.
So here's what happening: when I run bitcoind in root user (but normal also won't work) in my SSH server, the IPV4 testnet port seems to be not opened. This message goes up when I run bitcoind:
Binding RPC on address 0.0.0.0 port 18332 failed.
Here's what my bitcoin.conf looks like (I want to use testnet in here). I'm using Bitcoin-Core "subversion": "Satoshi:0.17.1".
server=1 debug=net txindex=1 testnet=1 rpcuser=userb rpcpassword=test test.rpcport=18332 # I've already tried allowing the IP these 3 ways: # rpcallowip=192.168.xx.xx # My machine's IP # rpcallowip=172.19.x.x/xx # Docker's NBOBTC container IP # rpcallowip=0.0.0.0/0 # Allowing all IP datadir=/home/bitcoin-dev/.bitcoin debuglogfile=/home/bitcoin-dev/.bitcoin/debug.log 
Here's what appears in debug.log right after I run Bitcoind:
2019-05-06T14:43:10Z Bitcoin Core version v0.17.1 (release build) 2019-05-06T14:43:10Z InitParameterInteraction: parameter interaction: -whitelistforcerelay=1 -> setting -whitelistrelay=1 2019-05-06T14:43:10Z Assuming ancestors of block 0000000000000037a8cd3e06cd5edbfe9dd1dbcc5dacab279376ef7cfc2b4c75 have valid signatures. 2019-05-06T14:43:10Z Setting nMinimumChainWork=00000000000000000000000000000000000000000000007dbe94253893cbd463 2019-05-06T14:43:10Z Using the 'sse4(1way),sse41(4way)' SHA256 implementation 2019-05-06T14:43:10Z Default data directory /root/.bitcoin 2019-05-06T14:43:10Z Using data directory /home/bitcoin-dev/.bitcoin/testnet3 2019-05-06T14:43:10Z Using config file /home/bitcoin-dev/.bitcoin/bitcoin.conf 2019-05-06T14:43:10Z Using at most 125 automatic connections (1024 file descriptors available) 2019-05-06T14:43:10Z Using 16 MiB out of 32/2 requested for signature cache, able to store 524288 elements 2019-05-06T14:43:10Z Using 16 MiB out of 32/2 requested for script execution cache, able to store 524288 elements 2019-05-06T14:43:10Z Using 4 threads for script verification 2019-05-06T14:43:10Z scheduler thread start 2019-05-06T14:43:10Z Binding RPC on address 0.0.0.0 port 18332 failed. 2019-05-06T14:43:10Z HTTP: creating work queue of depth 16 2019-05-06T14:43:10Z Config options rpcuser and rpcpassword will soon be deprecated. Locally-run instances may remove rpcuser to use cookie-based auth, or may be replaced with rpcauth. Please see share/rpcauth for rpcauth auth generation. 2019-05-06T14:43:10Z HTTP: starting 4 worker threads 2019-05-06T14:43:10Z Using wallet directory /home/bitcoin-dev/.bitcoin/testnet3/wallets 2019-05-06T14:43:10Z init message: Verifying wallet(s)... 2019-05-06T14:43:10Z Using BerkeleyDB version Berkeley DB 4.8.30: (April 9, 2010) 2019-05-06T14:43:10Z Using wallet wallet.dat 2019-05-06T14:43:10Z BerkeleyEnvironment::Open: LogDir=/home/bitcoin-dev/.bitcoin/testnet3/wallets/database ErrorFile=/home/bitcoin-dev/.bitcoin/testnet3/wallets/db.log 2019-05-06T14:43:10Z net: setting try another outbound peer=false 2019-05-06T14:43:10Z Cache configuration: 2019-05-06T14:43:10Z * Using 2.0MiB for block index database 2019-05-06T14:43:10Z * Using 56.0MiB for transaction index database 2019-05-06T14:43:10Z * Using 8.0MiB for chain state database 2019-05-06T14:43:10Z * Using 384.0MiB for in-memory UTXO set (plus up to 286.1MiB of unused mempool space) 2019-05-06T14:43:10Z init message: Loading block index... 2019-05-06T14:43:10Z Opening LevelDB in /home/bitcoin-dev/.bitcoin/testnet3/blocks/index 2019-05-06T14:43:10Z Opened LevelDB successfully 2019-05-06T14:43:10Z Using obfuscation key for /home/bitcoin-dev/.bitcoin/testnet3/blocks/index: 0000000000000000 2019-05-06T14:43:19Z LoadBlockIndexDB: last block file = 161 2019-05-06T14:43:19Z LoadBlockIndexDB: last block file info: CBlockFileInfo(blocks=755, size=30875345, heights=1513309...1514061, time=2019-04-29...2019-05-03) 2019-05-06T14:43:19Z Checking all blk files are present... 2019-05-06T14:43:20Z Opening LevelDB in /home/bitcoin-dev/.bitcoin/testnet3/chainstate 2019-05-06T14:43:20Z Opened LevelDB successfully 2019-05-06T14:43:20Z Using obfuscation key for /home/bitcoin-dev/.bitcoin/testnet3/chainstate: 2686d59caeb1917c 2019-05-06T14:43:20Z Loaded best chain: hashBestChain=00000000b3b6a5db140b6058b7abe5cb00d8af61afd2a237ae3468cd36e387fa height=927391 date=2016-09-08T15:04:00Z progress=0.311180 2019-05-06T14:43:20Z init message: Rewinding blocks... 2019-05-06T14:43:29Z init message: Verifying blocks... 2019-05-06T14:43:29Z Verifying last 6 blocks at level 3 2019-05-06T14:43:29Z [0%]...[16%]...[33%]...[50%]...[66%]...[83%]...[99%]...[DONE]. 2019-05-06T14:43:29Z No coin database inconsistencies in last 6 blocks (500 transactions) 2019-05-06T14:43:29Z block index 19450ms 2019-05-06T14:43:29Z Opening LevelDB in /home/bitcoin-dev/.bitcoin/testnet3/indexes/txindex 2019-05-06T14:43:30Z Opened LevelDB successfully 2019-05-06T14:43:30Z Using obfuscation key for /home/bitcoin-dev/.bitcoin/testnet3/indexes/txindex: 0000000000000000 2019-05-06T14:43:30Z init message: Loading wallet... 2019-05-06T14:43:30Z txindex thread start 2019-05-06T14:43:30Z [default wallet] nFileVersion = 170100 2019-05-06T14:43:30Z [default wallet] Keys: 2005 plaintext, 0 encrypted, 2005 w/ metadata, 2005 total. Unknown wallet records: 1 2019-05-06T14:43:30Z Syncing txindex with block chain from height 694205 2019-05-06T14:43:30Z [default wallet] Wallet completed loading in 123ms 2019-05-06T14:43:30Z [default wallet] setKeyPool.size() = 2000 2019-05-06T14:43:30Z [default wallet] mapWallet.size() = 7 2019-05-06T14:43:30Z [default wallet] mapAddressBook.size() = 4 2019-05-06T14:43:30Z mapBlockIndex.size() = 1515581 2019-05-06T14:43:30Z nBestHeight = 927391 2019-05-06T14:43:30Z torcontrol thread start 2019-05-06T14:43:30Z Bound to [::]:18333 2019-05-06T14:43:30Z Bound to 0.0.0.0:18333 2019-05-06T14:43:30Z init message: Loading P2P addresses... 2019-05-06T14:43:30Z Loaded 10420 addresses from peers.dat 36ms 2019-05-06T14:43:30Z init message: Loading banlist... 2019-05-06T14:43:30Z Loaded 0 banned node ips/subnets from banlist.dat 29ms 2019-05-06T14:43:30Z init message: Starting network threads... 2019-05-06T14:43:30Z net thread start 2019-05-06T14:43:30Z dnsseed thread start 2019-05-06T14:43:30Z addcon thread start 2019-05-06T14:43:30Z msghand thread start 2019-05-06T14:43:30Z init message: Done loading 2019-05-06T14:43:30Z opencon thread start 
After all that appears above, there are just "UpdateTip", "Requesting block", "received block" and "getdata" messages. (so the P2P port, 18333, works).

And here is when I netstat:

sudo netstat -nap|grep bitcoin|grep LISTEN
tcp 0 0 0.0.0.0:18333 0.0.0.0:* LISTEN 31185/bitcoind tcp6 0 0 :::18332 :::* LISTEN 31185/bitcoind tcp6 0 0 :::18333 :::* LISTEN 31185/bitcoind 
Thank you in advance!

PS: A few days ago I could make it work when running bitcoind with root user, but now even that won't solve the problem.
submitted by VicPietro to Bitcoin [link] [comments]

Bitcoin core v18.0 keeps crashing on cloud server. Help.

I am trying to synchronize a full node on a Digital Ocean instance with 3GB of RAM and 300 GB disk space. However, I noticed that bitcoin core is crashing very frequently. From the instance monitoring, it seems like it's a RAM issue: https://imgur.com/a/KuMev4A
Thought that 3GB of RAM were more than enough but apparently not. What is the recommended RAM then?
Here is how I installed bitcoin core:
 wget https://bitcoincore.org/bin/bitcoin-core-0.18.0/bitcoin-0.18.0-x86_64-linux-gnu.tar.gz; tar -zxvf bitcoin-0.18.0-x86_64-linux-gnu.tar.gz; cp -r bitcoin-0.18.0/bin/* /uslocal/bin; 
My bitcoin.conf is:
 maxmempool=30000 mempoolexpiry=99999 minrelayfee=0 maxconnections=50 rest=1 txindex=1 dbcache=300 
I don't notice anything in debug.log: https://pastebin.com/SkrEzmTb
I don't have anything else running on this instance.
EDIT: after adding some swap memory, bitcoin core doesn't crash anymore but it seems to be synchronizing extremely slowly while RAM usage stays around 97%
EDIT2: replaced bitcoin.conf:
EDIT3: new bitcoin.conf
 rest=1 txindex=1 dbcache=2000 datadir=/mnt/volume_fra1_01/.bitcoin 
submitted by johnturtle to BitcoinBeginners [link] [comments]

TAILS, Blockchain on USB, everything configured and stuck at importing addresses into account

Hi,
as the title says, ive got this far but it seems to get stuck at importing 200 addresses into account joinmarket-wallet-68a6c1 as you can see below...
[email protected]:~/Persistent/joinmarket$ python wallet-tool.py wallet.json
2016-03-20 19:03:49,862 [MainThread ] [DEBUG] hello joinmarket
Enter wallet decryption passphrase:
2016-03-20 19:06:19,761 [MainThread ] [DEBUG] requesting wallet history
2016-03-20 19:06:35,179 [MainThread ] [DEBUG] rpc: getaddressesbyaccount ['joinmarket-wallet-68a6c1']
2016-03-20 19:08:42,696 [MainThread ] [DEBUG] importing 200 addresses into account joinmarket-wallet-68a6c1
ive tried a couple of times and left it running well over an hour previously with no update.
does anyone have any suggestions please?
i've searched this sub and github and cant see anyone else having this issue.
thanks again
EDIT:
Also, i just accidentally interaupted it and got this:
CTraceback (most recent call last):
File "wallet-tool.py", line 106, in
jm_single().bc_interface.sync_wallet(wallet)
File "/home/amnesia/Persistent/joinmarket/joinmarket/blockchaininterface.py", line 76, in sync_wallet
self.sync_addresses(wallet)
File "/home/amnesia/Persistent/joinmarket/joinmarket/blockchaininterface.py", line 549, in sync_addresses
self.add_watchonly_addresses(wallet_addr_list, wallet_name)
File "/home/amnesia/Persistent/joinmarket/joinmarket/blockchaininterface.py", line 519, in add_watchonly_addresses
self.rpc('importaddress', [addr, wallet_name, False])
File "/home/amnesia/Persistent/joinmarket/joinmarket/blockchaininterface.py", line 510, in rpc
res = self.jsonRpc.call(method, args)
File "/home/amnesia/Persistent/joinmarket/joinmarket/jsonrpc.py", line 111, in call
response = self.queryHTTP(request)
File "/home/amnesia/Persistent/joinmarket/joinmarket/jsonrpc.py", line 78, in queryHTTP
conn.request("POST", "", body, headers)
File "/uslib/python2.7/httplib.py", line 1001, in request
self._send_request(method, url, body, headers)
File "/uslib/python2.7/httplib.py", line 1035, in _send_request
self.endheaders(body)
File "/uslib/python2.7/httplib.py", line 997, in endheaders
self._send_output(message_body)
File "/uslib/python2.7/httplib.py", line 850, in _send_output
self.send(msg)
File "/uslib/python2.7/httplib.py", line 812, in send
self.connect()
File "/uslib/python2.7/httplib.py", line 793, in connect
self.timeout, self.source_address)
File "/uslib/python2.7/socket.py", line 562, in create_connection
sock.connect(sa)
File "/uslib/python2.7/socket.py", line 224, in meth
return getattr(self._sock,name)(*args)
KeyboardInterrupt
i dont know if that means anything? does it indicate its working still?
thanks
submitted by smokingskills1 to joinmarket [link] [comments]

Run a 0.14 Full-Node on RaspberryPi3 Pruned(less than 16GB SD needed)

Hi!
Happy if this guide helps you.
Tip if you want: 19656Uwdwko5RjtnuwQENpjBwE3ChzD59v
UPDATE 04/06/17
Add 'uacomment=UASF-SegWit-BIP148' into your bitcoin.conf if you want to signal UASF.
UPDATE 03/13/17
ADDED a tl;dr; Version at the end of this Post.
UPDATE 03/12/17:
Just to test it - I reinstalled all on 8GB SD and it works as well. But maybe you should use at least 16GB for the beginning.
Using a 128GB card for the first version was a little bit stupid - so I reinstalled everything on a 8GB SD card. Including Linux and a pruned blockchain - and it works.
I used prune=550 and Jessie Lite (headless / command line) - without wallet and gui.
The SD is almost full, but it works so far
I also updated the whole manual a bit to make things more clear. Thank you for all your feedback!
Just started my Bitcoin Node today and wanted to share the way I did it with people who are interested in running their own full node. It took some time to write everything down - hopefully correct so far.
I am sure, many people around bitcoin are way more informed and educated as I am - I am the noob. So I wrote this manual to help users like me - noobs, to get started with a cheap, simple bitcoin node on raspberry pi.
Have fun!
I wanted to get my Raspberry Pi 3 working as a node to support the network. Actually the process of installing and running the node was more or less easy - but for Noobs (like I am) it might be a bit tricky to start the whole thing, because there are different ways.
Did you - like me - think you would need +120GB on the raspi, external USB HDD to be a full node? You won't!
If you have a Raspberry and you know what Bitcoin is, I guess, you are a little bit aware of linux, networks and of course bitcoin - so I won't go into detail too much.
This guide is just a little helper to get a full node running on your raspberry pi. Thanks to the help of the nice people in this sub and of course the documentation by the developers, I got it working - and of course also special thanks to raspnode.com - as I followed their tutorial to start - I went some other ways here and there - so please read carefully.
For the Part 2 I would suggest to have http://raspnode.com/diyBitcoin.html open and read through my manual.
I split the tutorial in 2 Parts - PART ONE is about installing the client on your PC and downloading the Blockchain.
PART TWO is about the setup of the raspberryPi and transferring the pruned blockchain to the pi and run it as a full node!
The first thing to be aware of is: You actually need to download the whole blockchain to get this working - if you already have your bitcoin client synced on the PC / MAC great you can reuse it!
Now you might think "but you said less than 16GB in the title!"
Yes, but the good thing is you won't need to download it on your Raspberry, neither you need to sync it completely on your raspberry which took ages (weeks!) before. When you finished this Guide, you will just have a max. 4GB Blockchain on your Raspberry Pi - but it still is a full node! The magic word is Pruning.
Maybe even a 8GB SD Card works just fine including Linux (jessie lite)!
So, if you already have a full node on your PC - Great you can almost skip PART ONE - BUT have at how to Prune in PART ONE if you don't know about it.
For PART TWO you'll need a Raspberry Pi 2 or 3 (I used 3) min. 8GB (works also) or better 16GB SD Card. (I used a 128GB for the first version of this manual - which is way too big)

PART ONE

This is the manual how to get started on you PC / MAC / Linux (I did it on Win7)
Go to: https://bitcoin.org/en/download and download the core Client for your Machine (I used win64).
Install it and configure it to save the Blockchaindata to the directory of your choice - so instead getting 120GB on your C drive, I would suggest to download it to another place like a USB drive.
You can set this up during the install. Standard folder for the blockchain folder is "%APPDATA%\Bitcoin" on Windows.
or you can do it after the install by creating a bitcoin.conf file inside your installation folder / or %APPDATA%\Bitcoin and add
datadir=l:\yourfolder
to the file. Line by line.
By the way here you could also just add dbcache - to use more memory to speed up the process a bit:
dbcache=4096
if you don't want to use the settings inside the program. (you can also set this inside the program under settings! If you have this inside the bitcoin.conf you will see the amount you set there from inside the program - it overrides the values)
You can check inside the windows client under settings, if you can see a manual dbcache is set by having a look at the left footer area. When your dbcache value shows up, everything is fine.
So the Blockchain download process will take time - maybe a few days! Depending on your machine, internet connection and HDD.
The Blockchain is huge as it contains every single transaction of the past until today. You won't need to keep your PC running all the time, you can turn it off and on and it will resync automatically when you start bitcoin-qt.exe!
Make sure to close the client always via "quit" - ctrl+q.
After you have your bitcoin core installed, the blockchain downloaded and synced - you are ready to PRUNE!
First - close the Client and let it close smoothly. After it is really closed you can follow these steps:
By pruning, your blockchain will dramatically shrink. From 120GB to just a few GB.
Be aware, that you will lose your Downloaded Blockchain as pruning will erase a big chunk of it! If you have enough space, you could of course keep the full blockchain saved somewhere on another HDD.
You can prune by editing your bitcoin.conf file by adding:
prune=550
I used prune=1024 - not sure where the differences are right now (min. prune=550). (for my 8GB version I used 550! I suggest to use this.)
Save the bitcoind.conf file and restart your windows client.
It will now clean up the Blockchain. So just the latest blocks are saved. The client should start without any problems. Maybe it takes some time to prune the blockchain data.
Check if everything works normally (the client opens as usual, you can see an empty wallet) than close the client.
Inside the Bitcoin Folder, you'll find two folders called:
blocks chainstate
those are the interesting folders containing the important data (now pruned) - and we will transfer those two to the raspberry later!
Now you are good to start the raspi transfer explained in the next part.

PART 2

Here is what I did:
1) I installed Raspian Pixel (https://www.raspberrypi.org/downloads/raspbian/) using a 128 GB SD - which is not needed because of "Pruning" - I think a 16GB card might work, too! (You can also install Raspian Jessie Lite - which saves you even more space, as it runs headless - only command line) (Updated: It is better to use Jessie Lite to save a lot of space - when you are fine with only command line)
2) I followed partly this tutorial to get everything running and setup:
http://raspnode.com/diyBitcoin.html
Please have a look at it - I have copied the Headlines in capitals to let you know what I did, and what I skipped.
On Tutorial Page: Start with RASPBIAN (OPTIONAL) CONFIG OPTIONS.
Set You RasPi up including "EDITING FILES" to save your Layout at the tutorial page and come back here.
I skipped the CONFIGURE USB AND SET AUTOMOUNT process, as we are going to use PRUNING to reduce the 120GB to a tiny filesize - so USB Devices are not needed here!
It was necessary to ENLARGE SWAP FILE to install bitcoin core - otherwise it didn't went through which ended in a frozen raspi.
So have a close look by following the raspnode tutorial at: ENLARGE SWAP FILE.
I have my raspi running via cable to router - but you can also WiFi setup everything described under NETWORKING ON THE RASPBERRY PI.
Now comes the interesting part: Follow the steps at DOWNLOADING BITCOIN CORE DEPENDENCIES - they work fine for 0.14.0 too. Git should be on Board already when you installed Pixel - otherwise you would need to install it.
sudo apt-get install git -y (only jessy lite)
I skipped the next command lines - as I don't use bitcoin-qt wallet. If you want to use it as wallet - do the step.
mkdir ~/bin cd ~bin
Now you are in the folder you want your bitcoin core data be downloaded to via git. I didn't Downloaded the Berkeley Database source code - so I also skipped the whole next command lines
[email protected]~/bin$ wget http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz [email protected]~/bin$ tar -xzvf db-4.8.30.NC.tar.gz [email protected]~/bin$ cd db-4.8.30.NC/build_unix/ [email protected]~/bin/db-4.8.30.NC/build_unix$ ../dist/configure --enable-cxx [email protected]~/bin/db-4.8.30.NC/build_unix$ make -j4
and went on with "INSTALLING BITCOIN"!
I followed the first part but instead downloading 0.13 I took of course the latest version:0.14
git clone -b 0.14 https://github.com/bitcoin/bitcoin.git cd bitcoin ./autogen.sh
this might take some time to start.
If you have trouble with hanging RESOLVING DELTAS - just restart the Raspberry Pi and remove the bitcoin folder inside /~bin using
rm -rf bitcoin
this command will delete the folder and you can reuse
git clone -b 0.14 https://github.com/bitcoin/bitcoin.git

For some reason RESOLVING DELTAS is a common problem with different downloads - so just retry it and at least after 3 times it should work!

as I didn't use the GUI/ Wallet, I ran
./configure --enable-upnp-default --disable-wallet
as I don't need the wallet functionality.
I didn't need to use "MAKE" which saves you maybe up to 2.5 hours.
instead you can just go ahead with:
sudo make install
(If I am wrong in doing so - please let me know)
The install takes some time - and just a heads up: when it gets stuck somewhere - just redo the installation process - it took three times to went through - stuck at some processing.
After the installation took place you can finally get your Raspberry Pi Node running in no time!
To test if the the installation went through - you can just start bitcoind using:
bitcoind &
than check if everything is working so far:
bitcoin-cli getinfo
after a few seconds you should see version: etc...
if not, something went wrong. Try to redo the steps in the raspnode tutorial.
(don't give up if it failed - retry! Ask your questions here)
IMPORTANT: you need to stop bitcoin on your raspberry now!
bitcoin-cli stop
If you don't need an external USB Drive - what I hope - as we are going to use pruning just go ahead and skip the USB part and create a file inside (or follow the raspnode tutorial on how to setup the USB drive):
cd .bitcoin
sudo nano bitcoin.conf
and enter the exact same pruning size you have used on your Desktop Machine to prune. I used 1024 but the minimum is 550. (used 550 for the 8GB SD card on PC and Raspberry)
prune=550
That's it for the raspi.
update: To signal UASF enter in a new line:
uacomment=UASF-SegWit-BIP148

TRANSFER

Now you have to transfer the two folders CHAINSTATE and BLOCKS from your PC bitcoind directory to your raspberry.
I am using a program called "WINSCP" - it is free and easy to use: https://winscp.net/eng/download.php
We need this to transfer the files to the Raspberry pi. Pretty sure you can also do it via SSH - but I am the noob. So let's keep it simple.
Open Winscp and put in the IP Address of your Raspberry Pi, User and Password (same as in SSH)
You should now see the directories on your Raspberry Pi. There is a folder called
.bitcoin
enter it and you will see the two folders
blocks & chainstate
you can delete them on the raspberry as they have some data from your previous test inside.
Make sure you can also see the bitcoin.conf file in that directory, which needs to contain the exact same prune line, like the one on your desktop machine. If not, make sure to edit it via SSH. The line "datadir=l:\yourfolder" is obviously not needed in the Raspberry bitcoin.conf file.
Now grab the two folders CHAINSTATE and BLOCKS from your PC and copy them to your .bitcoind folder.
I also copied banlist.dat, fee_estimation.dat, mempool.dat and peers.dat to the folder - not really knowing if needed! Not needed.
The whole copy process might take some minutes (against some weeks in the old way).
After copying is finished, you can now start bitcoind on the Raspberry.
bitcoind &
the & symbol let you still use the command line while the process is running btw.
The process - if succesfull - will take some time to finish.
bitcoin-cli getinfo
Will give you some informations what is going on right now. When you can see, that it is checking the blocks, this is good!
If you get an error - double check - if you have the correct prune size (same as on desktop machine) - in bitcoin.conf and that this file is inside .bitcoin on RaspberryPi. It took me some time, to find my mistakes.
Congrats! You are almost a part of the network!
To make your node now a fullnode, you will need to go to your router (often 192.168.1.1) and enable portforwarding for your raspberry pi - and open ports 8333 - that's it!
You can now go to: https://bitnodes.21.co/nodes/
scroll down to "JOIN THE NETWORK" and check check if your node IP is connected!
It will show up as soon as the blocks are checked and the raspi is running.
Well done!
Now you are running a full node, with a small Blockchain and got it working in Minutes, not weeks!
I really hope, my little tutorial worked for you and your are part of the Node network now.
If you have problems or I made a mistake in this helper tut, just let me know and I will try to make it better.
Have fun and NODL!
the noob
tl;dr; (if you are a real noob start with the non-tl;dr version!)
tl;dr; PART ONE
1) Download & install / setup bitcoincore @ https://bitcoin.org/de/download
2) change dbcache to something smaller than your memory and download the whole Blockchain (120GB).
3) create a file called bitcoin.conf put the line prune=550 (or higher) in to activate pruning on win inside %appData%/bitcoin
4) Open ports 8333 on your Router to make this a full node with a smaller Blockchain.
You are running a full node on your PC.
tl;dr; PART TWO
1) Install jessie lite and the needed dependencies on your SDCard - Raspberry
( >git clone -b 0.14 https://github.com/bitcoin/bitcoin.git )
  • see tutorial for more info.
2) create a file called bitcoin.conf inside .bitcoin and add the same prune=Number you had on your PC.
3) transfer the pruned folders BLOCKS and CHAINSTATE to the Raspberry Folder .bitcoin
4)Start "bitcoind &"
5) let everything sync
6) Make sure you have port 8333 opened on your router.
You are running a full node on your Raspberry with a super small Blockchain (I put all on a 8GB SDcard)
Tip if you want : 19656Uwdwko5RjtnuwQENpjBwE3ChzD59v
updated 03/12 - will update more, soon.
updated 03/12.2 - I updated the whole process a bit and also added some improvements.
updated 03/14/ Added a tl;dr version at the end.
submitted by I-am-the-noob to Bitcoin [link] [comments]

Lightning node on Windows - testing, get not connected

Ok after testing BTCPay, C-Lightning, LND on Ubuntu I said ok let's try also the Windows implementation, is just few clicks and done (as it is promoted).
So I followed this github guide that actually send you to this one.
OK, started Bitcoin-core client on Windows 7 x64, with an already synced data folder. Empty bitcoin.conf (none of guides says how to configure the conf file). Wait until the client is full synced. And then launched the windows-node-launcher (from a subfolder inside Bitcoin folder). All good, started slowly and a small popup appeared in systray saying Bitcoin node is syncing. Reviewed the config of Bitcoin and LND through that little app in systray and saw that bitcoin.conf was already filled with some settings. Didn't change anything. After 1 day (with the bitcoin blockchain already synced), the systray popup still says that is syncing and have a red dot. In the tutorial says that we have to leave it to sync until is blue and then green.
I said, ok maybe it has more things to do. So I open that LND Output link, to see what is going on... And I see that LND is not well. Says: 2019-04-06 21:11:29.772 [INF] LTND: Version: 0.6.0-beta commit=v0.6-beta-rc3, build=production, logging=default 2019-04-06 21:11:29.772 [INF] LTND: Active chain: Bitcoin (network=mainnet) 2019-04-06 21:11:29.774 [INF] CHDB: Checking for schema update: latest_version=8, db_version=8 2019-04-06 21:11:29.808 [INF] RPCS: password RPC server listening on 127.0.0.1:10009 2019-04-06 21:11:29.808 [INF] RPCS: password gRPC proxy started at 127.0.0.1:8080 2019-04-06 21:11:29.808 [INF] LTND: Waiting for wallet encryption password. Use lncli create to create a wallet, lncli unlock to unlock an existing wallet, or lncli changepassword to change the password of an existing wallet and unlock it. 2019-04-06 21:11:32.673 [INF] LNWL: Opened wallet 2019-04-06 21:11:33.183 [INF] LTND: Primary chain is set to: bitcoin unable to create chain control: unable to connect to bitcoind: unable to subscribe for zmq block events: dial tcp 127.0.0.1:18502: connectex: No connection could be made because the target machine actively refused it. 2019-04-06 21:11:36.087 [INF] LTND: Shutdown complete unable to connect to bitcoind: unable to subscribe for zmq block events: dial tcp 127.0.0.1:18502: connectex: No connection could be made because the target machine actively refused it. 2019-04-06 21:11:39.229 [INF] LTND: Version: 0.6.0-beta commit=v0.6-beta-rc3, build=production, logging=default
Now the bitcoin.conf have this: printtoconsole=1 rpcallowip=::/0 whitelist=0.0.0.0/0 datadir=C:\Users\Admin\AppData\Roaming\Bitcoin prune=0 txindex=1 server=1 disablewallet=0 timeout=6000 rpcuser=user rpcpassword=defaultxzxxxxx zmqpubrawblock=tcp://127.0.0.1:18502 zmqpubrawtx=tcp://127.0.0.1:18503 dbcache=2408
And LND.conf have this: (#) Auto-Generated Configuration File (#) Node Launcher version 6.0.2 debuglevel=info restlisten=127.0.0.1:8080 rpclisten=127.0.0.1:10009 tlsextraip=127.0.0.1 listen=127.0.0.1:9735 alias=aliasme color=#00aa7f bitcoin.active=1 bitcoin.node=bitcoind bitcoind.rpchost=127.0.0.1:8332 bitcoind.rpcuser=user bitcoind.rpcpass=defaultxxxxx bitcoind.zmqpubrawblock=tcp://127.0.0.1:18502 bitcoind.zmqpubrawtx=tcp://127.0.0.1:18503
So what is going on here? I will have to wait indefinitely? Somebody can give some help or explanation? Is this LND node working on Windows Server 2008 or 2012?
submitted by Mr--Robot to Bitcoin [link] [comments]

A Guide to Keeping Keys Offline Using Armory +rPi

Hi Redditors.
I am going to post in this thread my experiences in getting my Desktop (Debian) machine running Armory in watch-only mode, and coupling that with an offline Raspberry Pi (which holds my private keys) for signing the transactions previously made in watch-only mode.
I actually compiled Armory from source directly on my Pi. This guide is probably more for the bitcoin 'power user', as to run Armory online, and broadcast the signed transactions, you need to have a bitcoin full node running (bitcoind).
Basic requirements:
Aimed-for Setup:
I'll post the guide in digestible sections...

Section 1

I should begin by saying I installed source code from git, and got Armory to build the DB on my desktop initially, WITHOUT creating a wallet.. (This allowed me to debug what was going on a little!)
Go to Bitcoin.org, select Armory..
It leads to a Download from Git:
https://github.com/goatpig/BitcoinArmory/releases
Followed the procedure for Linux Debian verify code, compile, install, all straight-forward..
Began by running bitcoind, and telling Armory where to find it. This is the command I used, obviously it was all on one line and didn't include the arrows/explanations!:
python ArmoryQt.py \ --satoshi-datadir=/BlockChain/chain20180414/blocks \ # <-----(where my bitcoind blocks live) --datadir=/ArmoryDataDi \ # <-----(this is instead of ~/.armory) --dbdir=/ArmoryDataDidatabases # <-------(again, non std. place used for Armory's databases.. my choice.) 
So, on the Desktop, after the initial "build databases"
(NB the initial "Build Databases" took about 1.5h and my two CPUs were maxed the whole time, Temps up to 62C. Not ideal; Im not in a rush!)
I then wanted to import a watch-only wallet.
Before I did this, I took a full backup of the Armory data dir:
/ArmoryDataDi
(or ~/.armory in a default installation).
I'd hate to have to make Armory do another full sync with the bitcoind node!

Section 2

Next step: offline wallet (with Private Keys) is on a Raspberry Pi.
I downloaded the source and managed to compile it on the pi itself! :)
Though there were some gymnastics needed to setup the Pi.
My Pi is running Raspbian based on Wheezy.. quite old!
I did the following on the Pi:
apt-get update apt-get upgrade (<---took about an hour!) apt-get install autotools-dev apt-get install autoconf 
Then I followed the instructions exactly as I had done for my Debian Desktop machine, EXCEPT:
I had to increase the Pi's swap space. I upped it from 100Mb to 400Mb.
The compilation took 7 hours, and my poor SD card got a thrashing.
But after compilation, I put the Swap back to 100Mb and Armory runs ok with about 150Mb of memory (no swap needed).
Swap increase on the Pi:
use your favourite editor, and open the file /etc/dphys-swapfile
add/change the following line:
CONF_SWAPSIZE=400 
Then, REBOOT the Pi:
sudo shutdown -h -P now 
Once the compilation was done on the Pi, put the swap back, rebooted and created an Armory wallet.
I added manual entropy and upped the encryption 'time' from 250ms to 2500ms - since the Pi is slow, but I'll be happy to wait for more iterations in the Key Derivation Function.
Once the wallet was created, it obviously prompts you for backup.
I want to add a private key of my own (i.e. import), so don't do the backup until this is over.
I import my Private Key, and Armory checks that this corresponds to a Public Key, which I check is correct.
This is the point now where the Pi storage medium (e.g an SD card) has to be properly destroyed if you ever get rid of it.
I had thought that now would be a good time to decide if your new wallet will generate Segwit receiving addresses, and also addresses used to receive 'change' after a transaction..
But it seems Armory WON'T let you switch to P2SH-P2WPKH unless your Armory is connected to a node offering "WITNESS" service.
Obviously, my Pi is offline and will never connect to a node, so the following will not work on the Pi:
NB: I thought about setting this on the Debian "watch-only" wallet, but that would surely mean doom, as the Pi would not know about those addresses and backups might not keep them.. who knows...
So, end result:- no segwit for me just yet in my offline funds.

--If anyone can offer a solution to this, I'd be very grateful--

Section 3

Ok, now this is a good point to back up your wallet on the Pi. It has your imported keys. I choose a Digital Backup - and put it on a USB key, which will never touch the internet and will be stored off-site. I also chose to encrypt it, because I'm good with passwords..
NB: The Armory paper backup will NOT back up your imported private keys, so keep those somewhere if you're not sweeping them. It would be prudent to have an Armory paper backup anyway, but remember it will likely NOT help you with that imported key.
Now for the watch-only copy of the wallet. I want to get the "watch-only" version onto my Desktop Debian machine.
On the Pi, I created (exported to a USB key) a "watching-only" copy of my wallet.
I would use the RECOMMENDED approach, export the "Entire Wallet File".
As you will see below, I initially exported only the ROOT data, which will NOT capture the watching-only part of the Private Key I entered manually above (i.e. the public Key!).
Now, back on the Debian Desktop machine...
I stopped all my crontab jobs; just give Armory uninterrupted CPU/memory/disk...
I also stopped bitcoind and made a backup prior to any watch-only wallet being imported.
I already made a backup of Armory on my Desktop, before any wallet import.
(this was needed, as I made a mistake.. see below)
So on the Debian Desktop machine, I begin by firing up bitcoind.
my command for this is:
./bitcoind -daemon -datadir=/BlockChain/chain20180414 -dbcache=400 -maxmempool=400 

Section 4

I try running Armory like this:
(I'm actually starting Armory from a script - StartArm.sh)
Inside the script StartArm.sh, it has the line:
python ArmoryQt.py --ram-usage=4 --satoshi-datadir=/BlockChain/chain20180414/blocks --datadir=/ArmoryDataDi --dbdir=/ArmoryDataDidatabases 
I know from bitter experience that doing a scan over the blockchain for a new wallet takes a looong time and a lot of CPU, and I'd like it to play nicely; not gobble all the memory and swap and run my 2xCPUs both at 100% for four hours...
So... I aim to run with --ram-usage=X and --thread-count=X
(For me in the end, X=1 but I began with X=4)
I began with --ram-usage=4 (<--- = 4x128Mb)
The result is below...
TypeError: cannot concatenate 'str' and 'int' objects 
It didn't recognise the ram-usage and carried on, crippling my Debian desktop PC.
This is where it gets dangerous; Armory can gobble so much memory and CPU that the windowing environment can cease up, and it can take over 30 minutes just to exit nicely from bitcoind and ArmoryDB.
So, I ssh to the machine from another computer, and keep an eye on it with the command
"free -h" 
I'd also be able to do a "sudo reboot now" if needed from here.

Section 5

So, trying to get my --ram-usage command recognised, I tried this line (added quotes):
python ArmoryQt.py --ram-usage="4" --satoshi-datadir=/BlockChain/chain20180414/blocks --datadir=/ArmoryDataDi --dbdir=/ArmoryDataDidatabases 
But no, same error...
Loading Armory Engine: Armory Version: 0.96.4 Armory Build: None PyBtcWallet Version: 1.35 Detected Operating system: Linux OS Variant : ('debian', '9.4', '') User home-directory : /home/ Satoshi BTC directory : /BlockChain/chain20180414 Armory home dir : /ArmoryDataDi ArmoryDB directory : /ArmoryDataDidatabases Armory settings file : /ArmoryDataDiArmorySettings.txt Armory log file : /ArmoryDataDiarmorylog.txt Do wallet checking : True (ERROR) ArmoryUtils.py:3723 - Unsupported language specified. Defaulting to English (en) (ERROR) ArmoryQt.py:1833 - Failed to start Armory database: cannot concatenate 'str' and 'int' objects Traceback (most recent call last): File "ArmoryQt.py", line 1808, in startArmoryDBIfNecessary TheSDM.spawnDB(str(ARMORY_HOME_DIR), TheBDM.armoryDBDir) File "/BitcoinArmory/SDM.py", line 387, in spawnDB pargs.append('--ram-usage=' + ARMORY_RAM_USAGE) TypeError: cannot concatenate 'str' and 'int' objects 

Section 6

So, I edit the Armory python file SDM.py:
if ARMORY_RAM_USAGE != -1: pargs.append('--ram-usage=4') #COMMENTED THIS, SO I CAN HARDCODE =4 # ' + ARMORY_RAM_USAGE) 
Running it, I now have acknowledgement of the --ram-usage=4:
(WARNING) SDM.py:400 - Spawning DB with command: /BitcoinArmory/ArmoryDB --db-type="DB_FULL" --cookie --satoshi-datadir="/BlockChain/chain20180414/blocks" --datadir="/ArmoryDataDi" --dbdir="/ArmoryDataDidatabases" --ram-usage=4 
Also, even with ram-usage=4, it used too much memory, so I told it to quit.
It took over 30 minutes to stop semi-nicely. The last thing it reported was:
ERROR - 00:25:21: (StringSockets.cpp:351) FcgiSocket::writeAndRead FcgiError: unexpected fcgi header version 
But that didn't seem to matter or corrupt the Armory Database, so I think it's ok.
So, I get brave and change SDM.py as below, and I make sure my script has a command line for --ram-usage="ABCDE" and --thread-count="FGHIJ"; the logic being that these strings "ABCDE" will pass the IF criteria below, and my hardcoded values will be used...
if ARMORY_RAM_USAGE != -1: pargs.append('--ram-usage=1') #COMMENTED THIS, SO I CAN HARDCODE =1 # ' + ARMORY_RAM_USAGE) if ARMORY_THREAD_COUNT != -1 pargs.append('--thread-count=1') #COMMENTED THIS, SO I CAN HARDCODE =1 #' + ARMORY_THREAD_COUNT) 
So, as usual, I use my script and start this with: ./StartArm.sh
(which uses command line:)
python ArmoryQt.py --ram-usage="ABCDE" --thread-count="FGHIJ" --satoshi-datadir=/BlockChain/chain20180414/blocks --datadir=/ArmoryDataDi --dbdir=/ArmoryDataDidatabases 
(this forces it to use my hard-coded values in SDM.py...)
So, this is the command which it reports that it starts with:
(WARNING) SDM.py:400 - Spawning DB with command: /BitcoinArmory/ArmoryDB --db-type="DB_FULL" --cookie --satoshi-datadir="/BlockChain/chain20180414/blocks" --datadir="/ArmoryDataDi" --dbdir="/ArmoryDataDidatabases" --ram-usage=1 --thread-count=1 
Again, this is where it gets dangerous; Armory can gobble so much memory and CPU that the windowing environment can cease up. So I ssh to the machine and keep an eye on it with:
"free -h" 

Section 7

So, on the Debian Desktop PC, I inserted the USB stick with the watch-only wallet I exported from the Pi.
Start Armory...
Import "Entire Wallet File" watch-only copy.
Wait 4 hours..
YAY!!!
After running Armory for about 30m, the memory usage dropped by 400m... wierd...
It took ~2 hours to get 40% completion.
After 3.5 hours it's almost there...
The memory went up to about 1.7Gb in use and 900Mb of Swap, but the machine remained fairly responsive throughout, apart from a few (10?) periods at the start, where it appeared to freeze for 10-30s at a time.
(That's where my ssh session came in handy - I could check the machine was still ok with a "free -h" command)
Now, I can:
Create an unsigned transaction on my Desktop,
Save the tx to USB stick,
Move to the Pi,
Sign the tx,
Move back to the Desktop,
Broadcast the signed tx.

Section 8

My initial Mistake:
This caused me to have to roll-back my Armory database, using the backup. so you should try to avoid doing this..
On the Pi, I exported only the ROOT data, which will NOT capture the watching-only part of the Private Key
It is RECOMMENDED to use the Digital Export of Entire Wallet File from the Pi when making a watch-only copy. If you just export just the "ROOT data", not the "Entire Wallet File", you'll have problems if you used an imported Private Key in the offline wallet, like I did.
Using the ROOT data text import, after it finished... my balance was zero. So,. I tried a Help->Rescan Balance (Restart Armory, takes 1minute to get back up and running) No Luck. Still zero balance.
So, I try Rescan Databases.. This will take longer. Nah.. no luck.
So, I tried again, thinking it might be to do with the fact that I imported the text "root data" stuff, instead of following the (Recommended) export of watching-wallet file.
So, I used my Armory backup, and wound back the ArmoryDataDi to the point before the install of the (zero balance) wallet. (you should not need to do this, as you will hopefully use the RECOMMENDED approach of exporting the "Entire Wallet File"!)
submitted by fartinator to Bitcoin [link] [comments]

04-07 09:48 - 'Lightning node on Windows - testing, get not connected' (self.Bitcoin) by /u/Mr--Robot removed from /r/Bitcoin within 845-855min

'''
Ok after testing BTCPay, C-Lightning, LND on Ubuntu I said ok let's try also the Windows implementation, is just few clicks and done (as it is promoted).
So I followed this [github guide]1 that actually send you to [this one]2 .
OK, started Bitcoin-core client on Windows 7 x64, with an already synced data folder. Empty bitcoin.conf (none of guides says how to configure the conf file). Wait until the client is full synced. And then launched the windows-node-launcher (from a subfolder inside Bitcoin folder). All good, started slowly and a small popup appeared in systray saying Bitcoin node is syncing. Reviewed the config of Bitcoin and LND through that little app in systray and saw that bitcoin.conf was already filled with some settings. Didn't change anything. After 1 day (with the bitcoin blockchain already synced), the systray popup still says that is syncing and have a red dot. In the tutorial says that we have to leave it to sync until is blue and then green.
I said, ok maybe it has more things to do. So I open that LND Output link, to see what is going on... And I see that LND is not well. Says: 2019-04-06 21:11:29.772 [INF] LTND: Version: 0.6.0-beta commit=v0.6-beta-rc3, build=production, logging=default 2019-04-06 21:11:29.772 [INF] LTND: Active chain: Bitcoin (network=mainnet) 2019-04-06 21:11:29.774 [INF] CHDB: Checking for schema update: latest_version=8, db_version=8 2019-04-06 21:11:29.808 [INF] RPCS: password RPC server listening on 127.0.0.1:10009 2019-04-06 21:11:29.808 [INF] RPCS: password gRPC proxy started at 127.0.0.1:8080 2019-04-06 21:11:29.808 [INF] LTND: Waiting for wallet encryption password. Use lncli create to create a wallet, lncli unlock to unlock an existing wallet, or lncli changepassword to change the password of an existing wallet and unlock it. 2019-04-06 21:11:32.673 [INF] LNWL: Opened wallet 2019-04-06 21:11:33.183 [INF] LTND: Primary chain is set to: bitcoin unable to create chain control: unable to connect to bitcoind: unable to subscribe for zmq block events: dial tcp 127.0.0.1:18502: connectex: No connection could be made because the target machine actively refused it. 2019-04-06 21:11:36.087 [INF] LTND: Shutdown complete unable to connect to bitcoind: unable to subscribe for zmq block events: dial tcp 127.0.0.1:18502: connectex: No connection could be made because the target machine actively refused it. 2019-04-06 21:11:39.229 [INF] LTND: Version: 0.6.0-beta commit=v0.6-beta-rc3, build=production, logging=default
Now the bitcoin.conf have this: printtoconsole=1 rpcallowip=::/0 whitelist=0.0.0.0/0 datadir=C:\Users\Admin\AppData\Roaming\Bitcoin prune=0 txindex=1 server=1 disablewallet=0 timeout=6000 rpcuser=user rpcpassword=defaultxzxxxxx zmqpubrawblock=[link]3 zmqpubrawtx=[link]4 dbcache=2408
And LND.conf have this: (#) Auto-Generated Configuration File (#) Node Launcher version 6.0.2 debuglevel=info restlisten=127.0.0.1:8080 rpclisten=127.0.0.1:10009 tlsextraip=127.0.0.1 listen=127.0.0.1:9735 alias=aliasme color=#00aa7f bitcoin.active=1 bitcoin.node=bitcoind bitcoind.rpchost=127.0.0.1:8332 bitcoind.rpcuser=user bitcoind.rpcpass=defaultxxxxx bitcoind.zmqpubrawblock=[link]3 bitcoind.zmqpubrawtx=[link]4
So what is going on here? I will have to wait indefinitely? Somebody can give some help or explanation? Is this LND node working on Windows Server 2008 or 2012?
'''
Lightning node on Windows - testing, get not connected
Go1dfish undelete link
unreddit undelete link
Author: Mr--Robot
1: g*thub.c*m/light**ng**o*e*-users/no**-launc**r 2: me*ium.*o**lig*tn**g-p*wer-users/w*n**ws-m**os-l**ht*i*g-ne*work-2*4bd5034340 3: 127.0.0**:1*5*2 4: 127*0.0**:185*3 5: 1**.0.0*1:185*2 6: 12*.0**.1:*8503
Unknown links are censored to prevent spreading illicit content.
submitted by removalbot to removalbot [link] [comments]

Correct way to use .cookie auth on server?

I'm trying to adapt my current server node to not use rpcusepassword since that will apparently be deprecated sometime. I have rpcauth set for other nodes on my network to use and that works fine.
I see the .cookie file in my datadir. But my admin user is NOT the bitcoin user so it cannot access the .cookie file. It is a member of the bitcoin group but the .cookie file is mode 600 - so no go. I can manually change the .cookie file to 640 allowing group users access. That is ideally what I want to do.
But this file is created every restart of bitcoind so it is not persisted. I see no bitcoin.conf option for setting .cookie file mask. So my question is: how are we to do this? I do not want to run as bitcoin user as that means opening actual write access and more permissions to any user who needs to do cli commands.
This seems like it wasn't thought thru or only partly implemented so I must be missing an option or some way to do this. Are we supposed to have a post exec in the service file to change permissions maybe?
edit After much trial and error I found a way that works.
In the service unit add a UMask=0027 line under [Service]. Also add sysperms=1 to your conf file. Now when started the default system perms are 640 and the cookie is created as desired. The only thing is other files have same perms (like mempool.dat and peers.dat). I'm not too worried about that as they are read only for the bitcoin group and still blocked to others.
Problem solved.
submitted by jcoinner to Bitcoin [link] [comments]

CRACKING ACCOUNTS with OPENBULLET? (2020 Config Pack ... Tone Vays - Full Node Config - From My Understanding - 03 June 2017 #Chaincoin Masternode Technical Support #NowIsTheTime Перенос тяжёлого крипто бумажника bitcoin с диска C на диск D PSN CONFIG FOR OPENBULLET WORK 100% 2020 - YouTube

If you want to store them in D:\BitcoinData then click on "Properties" of a shortcut to bitcoin-qt.exe and add -datadir=D:\BitcoinData at the end as an example: "C:\Program Files (x86)\Bitcoin\bitcoin-qt.exe" -datadir=d:\BitcoinData Start Bitcoin, now you will see all the files are created in the new data directory. Linux . By default Bitcoin will put its data here: ~/.bitcoin/ You need to do ... ## bitcoin.conf configuration file. Lines beginning with # are comments. ## # Network-related settings: # Note that if you use testnet or regtest, particularly with the options # addnode, connect, port, bind, rpcport, rpcbind or wallet, you will also # want to read "[Sections]" further down. # Run on the test network instead of the real bitcoin ... Relative paths will be prefixed by the net-specific datadir location. Peer Ban Threshold Threshold for disconnecting misbehaving peers. Please provide a valid number (min: 1, max: ) Peer Ban Time Number of seconds to keep misbehaving peers from reconnecting. Please provide a valid number (min: 1, max: ) Bind to IP Address Bind to given address and always listen on it. Use [host]:port notation ... Windows users can create a shortcut that uses the command line option datadir. Doing so directs Bitcoin Core to use, not the default data directory, but the one given as a parameter. Begin by right-clicking on the desktop and selecting New -> Shortcut. Browse to the location of the Bitcoin Core executable (C:\Program Files\Bitcoin\bitcoin-qt.exe) and click the OK button. Next, add the command ... An overview of these is in files.md in the Bitcoin Core documentation. .lock Bitcoin data directory lock file; bitcoin.conf [optional] Contains configuration options. blkxxxx.dat [Versions prior to v0.8.0] Contains concatenated raw blocks. Stored are actual Bitcoin blocks, in network format, dumped to disk raw. blkindex.dat [Versions prior to ...

[index] [18360] [43617] [22905] [31457] [31231] [31509] [41981] [13343] [21742] [33793]

CRACKING ACCOUNTS with OPENBULLET? (2020 Config Pack ...

#Chaincoin revolution. I will do some live Chaincoin Masternode setup support. Thanks for watchin! CHC Stream Donations Here, Thanks! Cd7dPp1vC9L5fWtC1WtGpmX... Tone Vays - Full Node Config - From My Understanding - 03 June 2017 BTC at $4,000...I mean BTC at $2,440...BTC at $4k would be good though... I could be Sato... Перенос тяжёлого крипто бумажника bitcoin с диска C на диск D: 1.на диске С в папке "Program Files" найти папку "bitcoin ... Connect to my Lightning node! 022[email protected]70.36.59.17:9735 Opinion produced in this video is just my own ... ️ Your config orders are accepted! Contact me for build your config by spending cost as Bitcoin (BTC) https://t.me/admiin_alex

#