Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
Already on GitHub? Sign in to your account
Add Basic "How To Run A Full Node" Page #711
Conversation
|
Awesome, thanks for writing this down! |
saivann
and 1 other
commented on an outdated diff
Jan 16, 2015
| + | ||
| +### Minimum Requirements | ||
| + | ||
| +Bitcoin Core full nodes have certain requirements. If you try running a | ||
| +node on weak hardware, it may work---but you'll likely spend more time | ||
| +dealing with issues. If you can meet the following requirements, you'll | ||
| +have an easy-to-use node. | ||
| + | ||
| +* Desktop or laptop hardware running recent versions of Windows, Mac OS | ||
| + X, or Linux. | ||
| + | ||
| +* 50 gigabytes of free disk space | ||
| + | ||
| +* 2 gigabytes of memory (RAM) | ||
| + | ||
| +* Broadband Internet connection |
saivann
Contributor
|
saivann
and 1 other
commented on an outdated diff
Jan 16, 2015
| +* Desktop or laptop hardware running recent versions of Windows, Mac OS | ||
| + X, or Linux. | ||
| + | ||
| +* 50 gigabytes of free disk space | ||
| + | ||
| +* 2 gigabytes of memory (RAM) | ||
| + | ||
| +* Broadband Internet connection | ||
| + | ||
| +* 6 hours a day that your full node can be left running. (You can do | ||
| + other things with your computer while running a full node) | ||
| + | ||
| +### Possible Problems | ||
| + | ||
| +* **Legal:** Bitcoin use is [prohibited or restricted in some | ||
| + areas](http://bitlegal.io/) |
harding
Contributor
|
saivann
commented on an outdated diff
Jan 16, 2015
| + | ||
| +* Broadband Internet connection | ||
| + | ||
| +* 6 hours a day that your full node can be left running. (You can do | ||
| + other things with your computer while running a full node) | ||
| + | ||
| +### Possible Problems | ||
| + | ||
| +* **Legal:** Bitcoin use is [prohibited or restricted in some | ||
| + areas](http://bitlegal.io/) | ||
| + | ||
| +* **Anti-virus:** Several people have placed parts of known computer | ||
| + viruses in the Bitcoin block chain. This block chain data can't infect | ||
| + your computer, but some anti-virus programs quarantine the data any | ||
| + way, making it more difficult to run a full node. This problem mostly | ||
| + affects computers running Windows |
|
|
saivann
commented on an outdated diff
Jan 16, 2015
| +### Possible Problems | ||
| + | ||
| +* **Legal:** Bitcoin use is [prohibited or restricted in some | ||
| + areas](http://bitlegal.io/) | ||
| + | ||
| +* **Anti-virus:** Several people have placed parts of known computer | ||
| + viruses in the Bitcoin block chain. This block chain data can't infect | ||
| + your computer, but some anti-virus programs quarantine the data any | ||
| + way, making it more difficult to run a full node. This problem mostly | ||
| + affects computers running Windows | ||
| + | ||
| +* **Attack target:** People who want to disrupt the Bitcoin network may | ||
| + attack full nodes in ways that will affect other things you do with | ||
| + your computer, such as an attack that limits your available download | ||
| + bandwidth or an attack that prevents you from using your full node's | ||
| + wallet for sending transactions |
|
|
saivann
commented on an outdated diff
Jan 16, 2015
| + | ||
| +* **Legal:** Bitcoin use is [prohibited or restricted in some | ||
| + areas](http://bitlegal.io/) | ||
| + | ||
| +* **Anti-virus:** Several people have placed parts of known computer | ||
| + viruses in the Bitcoin block chain. This block chain data can't infect | ||
| + your computer, but some anti-virus programs quarantine the data any | ||
| + way, making it more difficult to run a full node. This problem mostly | ||
| + affects computers running Windows | ||
| + | ||
| +* **Attack target:** People who want to disrupt the Bitcoin network may | ||
| + attack full nodes in ways that will affect other things you do with | ||
| + your computer, such as an attack that limits your available download | ||
| + bandwidth or an attack that prevents you from using your full node's | ||
| + wallet for sending transactions | ||
| + |
saivann
Contributor
|
saivann
and 1 other
commented on an outdated diff
Jan 16, 2015
| + | ||
| + | ||
| + | ||
| +After download is complete, you may use Bitcoin Core as your wallet or | ||
| +you can just let it run to help support the Bitcoin network. | ||
| + | ||
| +<div class="box" markdown="1"> | ||
| +*Optional: Start Your Node At Login* | ||
| + | ||
| +Starting your node automatically each time you login to your computer | ||
| +makes it easy for you to contribute to the network. The easiest way | ||
| +to do this is to add Bitcoin Core GUI to the list of startup | ||
| +applications. | ||
| + | ||
| +Click the Ubuntu swirl icon to start the Dash, type `startup app`, | ||
| +and click the Startup Applications icon. |
saivann
Contributor
|
saivann
commented on an outdated diff
Jan 16, 2015
| +icon in the tray. | ||
| + | ||
| + | ||
| +</div> | ||
| + | ||
| +{{moreHelp}} | ||
| + | ||
| +#### Bicoin Core Daemon {#ubuntu-daemon} | ||
| + | ||
| +Before using the Bitcoin Core daemon, `bitcoind`, you need to create its | ||
| +configuration file with a user name and password. First create the | ||
| +`.bitcoin` directory, create (touch) the file, and set the file's | ||
| +permissions so that only your user account can read it. From the | ||
| +terminal, type: | ||
| + | ||
| + mkdir .bitcoin |
|
|
saivann
commented on an outdated diff
Jan 16, 2015
| +to this: | ||
| + | ||
| + bitcoind | ||
| + Error: To use the "-server" option, you must set a rpcpassword in the configuration file: | ||
| + /home/bitcoinorg/.bitcoin/bitcoin.conf | ||
| + It is recommended you use the following random password: | ||
| + rpcuser=bitcoinrpc | ||
| + rpcpassword=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX | ||
| + (you do not need to remember this password) | ||
| + The username and password MUST NOT be the same. | ||
| + If the file does not exist, create it with owner-readable-only file permissions. | ||
| + It is also recommended to set alertnotify so you are notified of problems; | ||
| + for example: alertnotify=echo %s | mail -s "Bitcoin Alert" admin@foo.com | ||
| + | ||
| +The "rpcpassword" displayed will be unique for your system. You can | ||
| +copy the the rpcuser and rpcpassword lines into your configuration file |
|
|
saivann
commented on an outdated diff
Jan 16, 2015
| +* 2 gigabytes of memory (RAM) | ||
| + | ||
| +* Broadband Internet connection | ||
| + | ||
| +* 6 hours a day that your full node can be left running. (You can do | ||
| + other things with your computer while running a full node) | ||
| + | ||
| +### Possible Problems | ||
| + | ||
| +* **Legal:** Bitcoin use is [prohibited or restricted in some | ||
| + areas](http://bitlegal.io/) | ||
| + | ||
| +* **Anti-virus:** Several people have placed parts of known computer | ||
| + viruses in the Bitcoin block chain. This block chain data can't infect | ||
| + your computer, but some anti-virus programs quarantine the data any | ||
| + way, making it more difficult to run a full node. This problem mostly |
|
|
saivann
commented on an outdated diff
Jan 16, 2015
| @@ -0,0 +1,362 @@ | ||
| +--- | ||
| +# This file is licensed under the MIT License (MIT) available on | ||
| +# http://opensource.org/licenses/MIT. | ||
| + | ||
| +layout: base | ||
| +lang: en | ||
| +id: full-node | ||
| +title: "Running A Full Node - Bitcoin" | ||
| +--- | ||
| + | ||
| +{% assign moreHelp="If you need more help, please ask in one of Bitcoin's many [communities](/en/community), such as [Bitcoin StackExchange](https://bitcoin.stackexchange.com/), [BitcoinTalk technical support](https://bitcointalk.org/index.php?board=4.0), or the [#bitcoin](https://webchat.freenode.net/?channels=bitcoin&uio=d4) IRC chatroom on Freenode." %} | ||
| + | ||
| +# Running A Full Node | ||
| + | ||
| +<p class="summary">Learn how run a full node</p> |
saivann
Contributor
|
|
@harding Thanks! Very useful page to have, I just reported what I found, maybe I'll have time to review it more carefully a bit later. I've noticed there is no mention of opening port 8333? I wonder if the page should be translated, 25 languages is time-consuming and there is a lot of words there, but it's an important page. |
|
@saivann thanks for your comments! I replied to a few; the rest I plan on implementing as you propose. Yeah, about half a second after I clicked "Submit pull request", I realized I forgot about port 8333. :-) I'll write something about it tomorrow. AFAICT, translation has a lot of things going against it:
It seems to me like it's probably better to put off translations for the short term until we see the page in action. That way, if nobody ever visits the page or it ends up changing too often, we don't bother to even try to get it translated. @schildbach My pleasure! |
The preview has been updated. I hope to get a Windows 7 VM setup tonight so I can write Windows instructions tomorrow. |
harding
referenced this pull request
Jan 20, 2015
Closed
Update Developer Reference to include bitcoind REST API #715
|
Wow; great work. How did you determine that 6 hours per day is the minimum requirement? The problem with nodes that don't run 24/7 is that they don't become well-connected since their IP address is constantly being purged from the address lists held be other nodes on the network. Gavin has also noted that we want nodes that are always on: https://www.reddit.com/r/Bitcoin/comments/1scd4z/im_running_a_full_node_and_so_should_you/cdw3lrh?context=3 |
|
@jlopp I used the highly scientific method called guessing. :-) Based on monitoring my own full node stats---including the intermittent-on devel node on my laptop---I know that it typically takes 30 to 60 minutes of node uptime before the seeders start sending me BitcoinJ-based SPV clients. Five hours of serving SPV clients seems like a reasonable contribution to the network to me. In addition, based on my I actually think a lower value than 6 hours a day would still be a positive contribution to the network. I specified higher requirements than strictly necessary in all categories, including uptime, because there was some concern about contributors with marginal resources becoming disappointed and making comments that would hurt volunteer morale. I agree with Gavin's comment that we need more always-on full nodes. However, those nodes haven't appeared in the year since he made that comment---so what are we to do? |
|
Commit 83c419e adds instructions for Windows 7, Ubuntu Server, and Other Linux Distributions---see the complete list of changes below. This is my final planned commit for the full-node page, although I will re-review when 0.10.0 final is released. The preview has been updated.
|
|
@harding Maybe you could still mention something like "Ideally, you should keep your PC running. However, 6 hours a day remains a good minimum"? |
|
ACK. This will be a great resource and I'll do what I can to get it added to as many FAQs as possible. From the discussions I've had with devs, it seems that the best hope we have of getting more people to run nodes is to make it easier. Getting rid of the need for bootstrapping is a good start; hopefully pruning will be another step in the right direction. But the ideal scenario would be for it to be straightforward enough that a guide such as this isn't even necessary :) |
|
@jlopp Thanks! And I would love to see this guide become unnecessary. |
|
Bump will this be getting merged and pushed soon? |
|
@jlopp Since these instructions are specific to Bitcoin Core 0.10.0, which hasn't been released yet, I'm not planning on merging this until 0.10.0 is released on Bitcoin.org and the Ubuntu PPA repository has been updated. (However, unless there are any changes to 0.10.0's install procedures or someone finds a problem on the page, I am finished writing.) |
|
@harding I have just read through the whole document once again and it's awesome! Thanks for your extensive research and clear step-by-step instructions! The only remaining suggestion I have is about dropping some duplicate content. What would you think about having only one Ubuntu version (Ubuntu 14.04 or Ubuntu 14.10), with graphical and command line instructions? At a first glance, the only difference I have found between the duplicate command line instructions is how to access the terminal when installing Bitcoin Core (one over SSH, one with the swirl icon). Maybe this can be merged together? |
|
@saivann good idea re: Ubuntu instructions---I'll do that. Thanks for the complement! |
|
LGTM, Thanks! |
harding
referenced this pull request
Feb 16, 2015
Closed
Update blockchain size on download page for Bitcoin Core #749
|
Note: 0.10.0 packages have been uploaded for Ubuntu 14.10, so I'll be retesting these instructions tomorrow. I'll also work on revising the block chain size text as discussed in #749 I'm aiming for merging this Monday morning EDT (noonish UTC). |
harding
added some commits
Jan 15, 2015
|
Rebased and added commit f61f66d which adds a link to this guide from the Download page. Also updated the preview. In the absence of critical feedback, this will be merged around 12:00 UTC Monday. |
harding
merged commit f61f66d
into
master
Feb 23, 2015
harding
added a commit
that referenced
this pull request
Feb 23, 2015
harding
deleted the
runfull branch
Feb 26, 2015
|
Hi, Harding and All! Unfortunately, websites are still not published. Why is that? Can you help me? We're needed to add bitcoin news website: http://www.coinfox.info (ENG), http://www.coinfox.ru (RU) and http://www.coinfox.es (ES) for https://bitcoin.org/ru/resources ("News" maybe) Sincerely, Igor Chepkasov |

harding commentedJan 15, 2015
Preview: http://dg4.dtrt.org/en/full-node
Note: this page is less grandiose than I had hoped. I realized I was procrastinating on it, so I decided to just see what I could do in an afternoon. Suggestions for improvements welcome.
Related: issue #410