# 小白福利:五分钟一键脚本完成服务器部署BTC全节点 保姆级教程 **Published by:** [0xoooooyoung](https://paragraph.com/@0xoooooyoung/) **Published on:** 2023-11-20 **URL:** https://paragraph.com/@0xoooooyoung/btc ## Content 前言:目前BTC生态非常火,包括闪电网络的L2 Taproot Assets协议、BRC20、以及即将发展起来的RGB协议等等,开发速度也由于各种新的生态造富效应而快了起来,不过推特上很多的Bitcoin全节点搭建教程大多是基于windows操作系统,一般是自己的家用电脑主机24小时不停的跑,是有一些不方便的,而使用云服务器 (小白服务器知识看这里) 就能一直跑着节点维持运行。 对于没有技术基础的用户来说,windows系统来搭建节点很方便,优点也是图形界面操作更加易懂,而服务器上的Linux系统的话对于小白来说很陌生,此教程应运而生,只需要参照本指南跑一个写好的脚本即可运行BTC全节点。 说一下为什么要运行一个自己的BTC全节点?(大多数人不明白为何要维护一个BTC节点) 先从概念简单说一下,比特币是一种点对点的电子现金系统,更直接地说是节点对节点,每笔交易由发起方向周围的节点进行广播,节点收到之后再广播给自己周围的节点,最终扩散至全网。每一个比特币钱包都是一个节点,其中拥有完整区块链账本的节点叫做全节点。btc全节点好处那么对于撸毛和普通用户来说,最重要的是最后一点,提高查询和交易速度,同时还能降低铸造成本减少Gas费。比如现在很火的brc20铭文赛道,很多人配合btc全节点来打铭文(比如很多代打平台有自己的全节点服务器组),因此为了应对以后BTC生态上突然出现的爆火项目,如果部署了BTC节点就能够立即抓住机会Mint或者铸造,同时抢先一步。教程说明:任务工具:一台服务器 Bitcoin Core 全节点有一定的要求。如果您尝试在较弱的硬件上运行节点,它可能会起作用,但您可能会花费更多时间来处理问题。如果您能够满足以下要求,您将拥有一个易于使用的节点。 以下是运行 BTC 全节点的最低配置要求:(配置要求不算高,主要是磁盘)CPU : 2 GHz | 2+ 核心RAM:2 GB 内存SSD: 50G磁盘:1TB以上系统:Ubuntu 22.04流量带宽:50M带宽及以上,全节点每月使用 200 GB以上任务时间:5分钟; 任务成本:服务器成本 难易程度:中等偏简单 注意:当今许多操作系统(Windows、Mac 和 Linux)在屏幕保护程序激活后进入低功耗模式,从而减慢或停止网络流量。这通常是笔记本电脑以及所有 Mac OS X 笔记本电脑和台式机的默认设置。检查您的屏幕保护程序设置并禁用自动“睡眠”或“挂起”选项,以确保您的计算机在运行时支持网络。教程开始:先放一个Bitcoin core官方的全节点教程: https://bitcoin.org/en/full-node#setup-a-full-nodeSTEP1 准备工作1.准备好对应配置的云服务器,教程点此进入(往下拉到服务器推荐那里查看搭建服务器步骤,小白可补充一些服务器知识) 2.选择使用xshell连接服务器控制台终端,Xshell教程点此进入(教程中xshell支持sz工具下载私钥文件到windows本地,用其他支持sz功能的ssh工具也可以) 3.按照1步骤生成好云服务器后,需要添加挂载磁盘(因为数据很大,需要的磁盘空间至少500G以上),步骤如下:点击添加磁盘点击设置添加磁盘选择磁盘大小,添加磁盘添加磁盘磁盘添加成功磁盘STEP2 使用一键脚本开始搭建BTC全节点此处使用一键脚本来简化大家的搭建,代码由推特用户@ouyoung11编写,欢迎关注。 代码完全开源,可在github处检查源代码,无任何后台漏洞及危险代码。 1.服务器登陆之后,依次执行以下命令:cd ~ && wget -O /root/btcfullnode-oooooyoung.sh https://github.com/nopapername/shell-oooooyoung/releases/download/btcfullnode-oooooyoung-install_1.0.0/btcfullnode-oooooyoung.sh && chmod +x btcfullnode-oooooyoung.sh 安装脚本2.输入下面的代码,进入一键搭建脚本的提示界面(依次输入数字执行步骤, 每一步结束后再跑下面这个命令会再次进入脚本界面)。bash /root/btcfullnode-oooooyoung.sh (1)执行之后出现下图所示的脚本界面,输入1并回车执行脚本步骤1,等待环境包安装完毕(中间如有打断直接回车跳过)安装btc全节点PS: 上面安装完成后这里日志里需要验证一下是不是你上面准备工作3中创建的挂载磁盘名字!安装完成(2) 再次输入bash /root/btcfullnode-oooooyoung.sh进入脚本界面,然后输入数字2执行btc全节点 (如果报错bitcoind问题,请输入 source ~/.bashrc 并重新运行此步)运行全节点(3)输入 bash /root/btcfullnode-oooooyoung.sh 进入脚本界面,输入数字3可查看当前同步区块信息查看同步区块高度正常区块信息然后和headers字段或者 mempool 浏览器(https://mempool.space/zh/ )中的最新区块进行对比,如果一致,则代表同步成功。mempool信息(4)可输入 bash /root/btcfullnode-oooooyoung.sh 进入脚本界面输入数字4可查看BTC节点运行日志节点日志(5)输入 top 还可以验证一下全节点进程是否运行:bitcoin core进程(6)10.等待同步完成,可以在生态项目钱包中用全节点做mint铸造操作(比如ord钱包),具体btc生态的mint请查看各项目的教程指南,后续可以关注 @ouyoung11 也会写btc生态上项目的mint教程。STEP3 搭建BTC全节点 (参考用)(搭建流程存档,小白可跳过此步骤直接看 STEP2 使用一键脚本搭建,后面附录bitcoin core命令列表) 1.输入df -h查看挂载的磁盘路径(比如我刚刚添加的磁盘名字是btc-storage,路径为 /mnt/btc_storage ):磁盘路径2.输入cd /mnt/btc_storage进入此磁盘:已进入/mnt/btc_storage目录3.去此处查看当前bitcoin core程序版本,并复制下载链接:复制bitcoin core下载地址4.在/mnt/btc_storage目录输入下面的命令下载并解压bitcoin core程序(里面的下载地址https://开头的改成4中复制的最新版本的地址,此教程时当前版本为25.1)wget -O bitcoin-core.tar.gz https://bitcoincore.org/bin/bitcoin-core-25.1/bitcoin-25.1-x86_64-linux-gnu.tar.gz && \ tar -xvf bitcoin-core.tar.gz && \ bitcoin_directory=$(tar -tf bitcoin-core.tar.gz | head -n 1 | cut -f1 -d'/') && \ mv "$bitcoin_directory" bitcoin-core && \ chmod +x bitcoin-core 下载bitcoin core程序5.编辑linux的环境变量文件,在文件末尾添加bitcoin-core目录路径cd bitcoin-core/bin 进入目录后输入pwd可查看当前路径查看路径输入 nano ~/.bashrc 进入编辑环境变量文件,将下面的内容复制到文件中,并按 ctrl + x 后输入y回车 保存文件#bitcoin env export BTCPATH=/mnt/btc_storage/bitcoin-core/bin #根据自己文件目录修改 export PATH=$BTCPATH:$PATH 修改.bashrc配置文件6.输入 source ~/.bashrc 使修改的环境配置生效source7.输入mkdir /mnt/btc_storage/btc-data创建需要保存btc数据的文件夹(创建后可输入ls查看磁盘下是否存在此目录)创建BTC节点数据文件夹8.输入 nano /mnt/btc_storage/btc-data/bitcoin.conf 在btc-data目录下添加bitcoind的配置文件bitcoin.conf, 并输入如下内容后按ctrl + x 后输入y回车保存:server=1 daemon=1 txindex=1 rpcuser=mybtc rpcpassword=mybtc123 addnode=101.43.124.195:8333 addnode=27.152.157.149:8333 addnode=101.43.95.152:8333 addnode=222.186.20.60:8333 addnode=175.27.247.104:8333 addnode=110.40.210.253:8333 addnode=202.108.211.135:8333 addnode=180.108.105.174:8333 其中addnode可以用来添加一个节点,加快下载速度,节点ip从 此网站 获得:https://bitnodes.io/,推荐优先使用国内节点。创建bitcoin.conf配置文件8. 输入 sudo ufw allow 8333 打开8333端口防火墙打开8333端口9.输入以下指令开始同步(-datadir后跟第7步中创建的存放data的文件夹路径,我这里是btc-data):bitcoind -datadir=/mnt/btc_storage/btc-data -txindex Bitcoin数据同步过程一般来说不会出现问题,不过也有可能由于网络原因碰到同步问题,解决方式就是多次尝试,直到同步成功为止。 10.等待同步完成,可以在生态项目钱包中用全节点做mint铸造操作(比如ord钱包),具体btc生态的mint请查看各项目的教程指南,后续可以关注 @ouyoung11 也会写btc生态上项目的mint教程。 查看是否同步完成: 当同步完成之后,输入 bitcoin-cli -rpcuser=mybtc -rpcpassword=mybtc123 getblockchaininfo 得到同步的区块信息。同步区块信息然后和headers字段或者 mempool 浏览器(https://mempool.space/zh/ )中的最新区块进行对比,如果一致,则代表同步成功。 一些常见的 Bitcoin Core 命令:启动 Bitcoin Core:这会启动比特币全节点。获取节点信息:bitcoin-cli getinfo 这个命令提供关于比特币节点的信息,例如区块链高度、难度等。获取钱包信息:bitcoin-cli getwalletinfo 这个命令提供有关比特币钱包的信息,例如余额、未确认余额等。获取最新区块的哈希:bitcoin-cli getbestblockhash 这个命令返回当前链上最新区块的哈希。获取指定区块的详细信息:bitcoin-cli getblock <blockhash> 替换 为区块的哈希值。获取交易详细信息:bitcoin-cli gettransaction <txid> 替换 为交易的哈希值。生成新地址:bitcoin-cli getnewaddress 这个命令用于生成新的比特币地址。发送比特币:bitcoin-cli sendtoaddress <address> <amount> 替换
为接收地址, 为发送的比特币数量。备份钱包:bitcoin-cli backupwallet <filename> 这个命令用于备份比特币钱包。导入私钥:bitcoin-cli importprivkey <privatekey> 替换 为要导入的私钥。查询未花费的输出 (UTXOs):bitcoin-cli listunspent 这个命令返回未花费的输出列表。查看挖矿信息:bitcoin-cli getmininginfo 这个命令提供有关挖矿的信息,例如区块的难度、挖矿设备信息等。这只是 Bitcoin Core 命令的一小部分,有很多其他命令和选项可用,可以通过查阅 Bitcoin Core 官方文档 来获取更详细的信息。 ## Publication Information - [0xoooooyoung](https://paragraph.com/@0xoooooyoung/): Publication homepage - [All Posts](https://paragraph.com/@0xoooooyoung/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@0xoooooyoung): Subscribe to updates - [Twitter](https://twitter.com/ouyoung11): Follow on Twitter