# Bitcoin 全节点服务器搭建教程 **Published by:** [0xFinian](https://paragraph.com/@finian/) **Published on:** 2023-02-10 **URL:** https://paragraph.com/@finian/bitcoin ## Content 最近 BTC 的 NFT 很火(Ordinals 协议),参与需要有自己的 BTC 全节点,虽然也可以花钱找机器人代打,但是人多了会不稳定。下面介绍一下在服务器中如何搭建 BTC 的全节点。注 1:以下所有命令以 Debian 11.6 以及 root 账户为例。 注 2:bitcoin-core 版本请相应换为最新的。写文章时,最新版本为 24.0.1。 注 3:全节点大小大概 450 G,注意硬盘空间大小。安装与运行下载:wget https://bitcoincore.org/bin/bitcoin-core-24.0.1/bitcoin-24.0.1-x86_64-linux-gnu.tar.gz 解压:tar xvzf bitcoin-24.0.1-x86_64-linux-gnu.tar.gz 安装:install -m 0755 -o root -g root -t /usr/local/bin bitcoin-24.0.1/bin/* 创建配置文件:vim ~/.bitcoin/bitcoin.conf 内容如下:txindex=1 dbcache=16384 运行:bitcoind -daemon 查看区块同步进度如何查看区块同步进度呢?有以下几种方法。查看调试输出日志tail ~/.bitcoin/debug.log 日志内容示例:... ... 2023-02-10T17:08:49Z UpdateTip: new best=00000000000000002f8f9102e45bc9d067bde6f3363b1601216d3eac2a75cb9e height=298458 version=0x00000002 log2_work=78.308530 tx=37841638 date='2014-04-30T13:46:19Z' progress=0.047178 cache=1515.8MiB(11587473txo) 从 date 和 progress 等字段能看出同步进度。对比区块数wget -q -O- https://blockchain.info/q/getblockcount; echo 775906 bitcoin-cli getblockcount 310627 通过以下脚本输出#!/bin/bash count=$(bitcoin-cli getblockcount); echo "block count: $count"; hash=$(bitcoin-cli getblockhash $count); echo "block hash: $hash"; t=$(bitcoin-cli getblock "$hash" | grep '"time"' | awk '{print $2}' | sed -e 's/,$//g'); echo "block timestamp is: $t"; cur_t=$(date +%s); diff_t=$[$cur_t - $t]; echo -n "Difference is: "; echo $diff_t | awk '{printf "%d days, %d:%d:%d\n",$1/(60*60*24),$1/(60*60)%24,$1%(60*60)/60,$1%60}'; 输出示例:block count: 324393 block hash: 00000000000000001aced2606293f68082f20d54b68c281778a608f3a522ada9 block timestamp is: 1412760302 Difference is: 3047 days, 7:52:20 全节点同步完估计要一天多,have fun :-P参考https://twitter.com/dotta/status/1622994717897285632 https://vhernando.github.io/run-bitcoin-node-debian-how-to https://github.com/bitcoin/bitcoin ## Publication Information - [0xFinian](https://paragraph.com/@finian/): Publication homepage - [All Posts](https://paragraph.com/@finian/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@finian): Subscribe to updates