# 小白福利：五分钟一键脚本完成服务器部署BTC全节点 保姆级教程

By [0xoooooyoung](https://paragraph.com/@0xoooooyoung) · 2023-11-20

---

### **前言：**

目前BTC生态非常火，包括闪电网络的L2 Taproot Assets协议、BRC20、以及即将发展起来的RGB协议等等，开发速度也由于各种新的生态造富效应而快了起来，不过推特上很多的Bitcoin全节点搭建教程大多是基于windows操作系统，一般是自己的家用电脑主机24小时不停的跑，是有一些不方便的，而使用云服务器 (小白服务器知识[看这里](https://mirror.xyz/0xC4335F5CF9975b953387cF0C741F260F881c7556/yECXIBrd3uNOOLziRlmeJF8UiAZ1OrnPJ0wCzIzVpPc)) 就能一直跑着节点维持运行。

对于没有技术基础的用户来说，windows系统来搭建节点很方便，优点也是图形界面操作更加易懂，而服务器上的Linux系统的话对于小白来说很陌生，此教程应运而生，只需要参照本指南跑一个写好的脚本即可运行BTC全节点。

**说一下为什么要运行一个自己的BTC全节点？（大多数人不明白为何要维护一个BTC节点）**

先从概念简单说一下，比特币是一种点对点的电子现金系统，更直接地说是节点对节点，每笔交易由发起方向周围的节点进行广播，节点收到之后再广播给自己周围的节点，最终扩散至全网。每一个比特币钱包都是一个节点，其中拥有完整区块链账本的节点叫做全节点。

![btc全节点好处](https://storage.googleapis.com/papyrus_images/a571a528973c93460fbdf2b7ca0bb9d2a8ff55bb1e08f90b846e536348840ccb.png)

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-node](https://bitcoin.org/en/full-node#setup-a-full-node)

### **STEP1 准备工作**

1.准备好对应配置的云服务器，[教程点此进入](https://mirror.xyz/0xC4335F5CF9975b953387cF0C741F260F881c7556/yECXIBrd3uNOOLziRlmeJF8UiAZ1OrnPJ0wCzIzVpPc)（往下拉到服务器推荐那里查看搭建服务器步骤，小白可补充一些服务器知识）

2.选择使用xshell连接服务器控制台终端，[Xshell教程点此进入](https://mirror.xyz/0xC4335F5CF9975b953387cF0C741F260F881c7556/5N5k1zPDNkjU5VcYK7T4tyAYYbc2ufvhRaX9mB6LcUE)（教程中xshell支持sz工具下载私钥文件到windows本地，用其他支持sz功能的ssh工具也可以）

3.按照1步骤生成好云服务器后，需要添加挂载磁盘（因为数据很大，需要的磁盘空间至少500G以上），步骤如下：

*   点击添加磁盘
    

![点击设置添加磁盘](https://storage.googleapis.com/papyrus_images/2f0c057cb9cd93c1bd5a0dd24442ac2acf5b0098c15a56581a3f18f2a3f69b20.png)

点击设置添加磁盘

*   选择磁盘大小，添加磁盘
    

![添加磁盘](https://storage.googleapis.com/papyrus_images/95ba4718ddbc02b25b2655d4002944e781bb8dcd8d001ab141ac0b750f8e4ca3.png)

添加磁盘

*   磁盘添加成功
    

![磁盘](https://storage.googleapis.com/papyrus_images/b0a0a0fdcadfe31e731b92534e7fea053cf46a85bf6a16c95f49ddfe495c6b46.png)

磁盘

### **STEP2 使用一键脚本开始搭建BTC全节点**

此处使用一键脚本来简化大家的搭建，代码由推特用户[@ouyoung11](https://twitter.com/ouyoung11)编写，欢迎关注。

代码完全开源，[可在github](https://github.com/nopapername/shell-oooooyoung)处检查源代码，无任何后台漏洞及危险代码。

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
    

![安装脚本](https://storage.googleapis.com/papyrus_images/89cbd92368fd0f14fc624b33c8fc63ef98c85e5ad544d3cb10159321f8fca79a.png)

安装脚本

2.输入下面的代码，进入一键搭建脚本的提示界面（依次输入数字执行步骤, 每一步结束后再跑下面这个命令会再次进入脚本界面）。

    bash /root/btcfullnode-oooooyoung.sh
    

（1）执行之后出现下图所示的**脚本界面，输入1**并回车执行脚本步骤1，等待环境包安装完毕（中间如有打断直接回车跳过）

![安装btc全节点](https://storage.googleapis.com/papyrus_images/d01707d25f1ea629a9991dccb6a471a7724371cbb6d780c97714e7cb848adc0f.png)

安装btc全节点

PS: 上面安装完成后这里日志里需要**验证**一下是不是你上面准备工作3中**创建的挂载磁盘名字**！

![安装完成](https://storage.googleapis.com/papyrus_images/c1cf21a532f1c4cc86adb68674c67d41e8887b9f71dae76af8742cdbc487fe7c.png)

安装完成

（2） 再次输入`bash /root/btcfullnode-oooooyoung.sh`进入脚本界面，然后**输入数字2**执行btc全节点 (如果报错bitcoind问题，请输入 `source ~/.bashrc` 并重新运行此步)

![运行全节点](https://storage.googleapis.com/papyrus_images/ea557e732ab614bf0a6527ef27122f75a65505293f5680c5a16e5cdd77dfcb85.png)

运行全节点

（3）输入 `bash /root/btcfullnode-oooooyoung.sh` 进入脚本界面，**输入数字3**可查看当前同步区块信息

![查看同步区块高度](https://storage.googleapis.com/papyrus_images/bb1910c0a0a77ba6f7c4468f457541a020763ca3e8d6905ec788074a5638195b.png)

查看同步区块高度

![正常区块信息](https://storage.googleapis.com/papyrus_images/0f8d4204887e9cb250b145a4460e3cb630a9defe433b16e5124aafb3ff71bbca.png)

正常区块信息

然后和headers字段或者 [mempool 浏览器](https://mempool.space/zh/)（[https://mempool.space/zh/](https://mempool.space/zh/) ）中的最新区块进行对比，如果一致，则代表同步成功。

![mempool信息](https://storage.googleapis.com/papyrus_images/2263a6a50fb91f23d14f1e5a455ddc20fcaa501efb440a80c5fab185a302f787.png)

mempool信息

（4）可输入 `bash /root/btcfullnode-oooooyoung.sh` 进入脚本界面**输入数字4**可查看BTC节点运行日志

![节点日志](https://storage.googleapis.com/papyrus_images/a5d1e0c923d09684023a851c219a461ea4699f1edcd277140f256bc05ebb801c.png)

节点日志

（5）输入 `top` 还可以验证一下全节点进程是否运行：

![bitcoin core进程](https://storage.googleapis.com/papyrus_images/a28dc6828d35f23699bc9120f54263e0030d7640148fd485f2f0d0f9a33d29c8.png)

bitcoin core进程

（6）10.等待同步完成，可以在生态项目钱包中用全节点做mint铸造操作（比如**ord钱包**），具体btc生态的mint请查看各项目的教程指南，后续可以关注 [@ouyoung11](https://twitter.com/ouyoung11) 也会写btc生态上项目的mint教程。

### **STEP3 搭建BTC全节点 （参考用）**

**（搭建流程存档，小白可跳过此步骤直接看 STEP2 使用一键脚本搭建，后面附录bitcoin core命令列表）**

1.输入`df -h`查看挂载的磁盘路径（比如我刚刚添加的磁盘名字是btc-storage，路径为 `/mnt/btc_storage` ）：

![磁盘路径](https://storage.googleapis.com/papyrus_images/c5ec4ac6c8576ea4dfb105624fe4018db6a13d4e137725a427e837507fa7598e.png)

磁盘路径

2.输入`cd /mnt/btc_storage`进入此磁盘:

![已进入/mnt/btc_storage目录](https://storage.googleapis.com/papyrus_images/342e6b645e2b878e7691bc5e9349e7ef33b0ff97dc7cc7649fe9922ad2b828fc.png)

已进入/mnt/btc\_storage目录

3.去[此处](https://bitcoincore.org/en/download/)查看当前bitcoin core程序版本，并复制下载链接：

![复制bitcoin core下载地址](https://storage.googleapis.com/papyrus_images/3298da9a69f75e91deff6dc101ffed289a2b502f1de5f8c46b588d7d487c01ed.png)

复制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程序](https://storage.googleapis.com/papyrus_images/8ec4cbe06e75cc9d966f432112c152f76d1bbc4cb4bcbb934d4ac8e5deec97f1.png)

下载bitcoin core程序

5.编辑linux的环境变量文件，在文件末尾添加bitcoin-core目录路径

*   `cd bitcoin-core/bin` 进入目录后输入pwd可查看当前路径
    

![查看路径](https://storage.googleapis.com/papyrus_images/e59883181dcda37559f61275bd06b3b5db90079abacf7e30dc3aed4f46a955b7.png)

查看路径

*   输入 `nano ~/.bashrc`  进入编辑环境变量文件，将下面的内容复制到文件中，并按 `ctrl + x 后输入y回车` 保存文件
    
        #bitcoin env
        export BTCPATH=/mnt/btc_storage/bitcoin-core/bin    #根据自己文件目录修改 
        export PATH=$BTCPATH:$PATH
        
    

![修改.bashrc配置文件](https://storage.googleapis.com/papyrus_images/6736590eb4cb243958ff56c44717959a3f20c506071fc7e5952def3698a62119.png)

修改.bashrc配置文件

6.输入 `source ~/.bashrc` 使修改的环境配置生效

![source ](https://storage.googleapis.com/papyrus_images/9cd9cbfce84a968002ef6de0872afa38c603961bf5491e77f41695cb1c5df922.png)

source

7.输入`mkdir /mnt/btc_storage/btc-data`创建需要保存btc数据的文件夹（创建后可输入`ls`查看磁盘下是否存在此目录）

![创建BTC节点数据文件夹](https://storage.googleapis.com/papyrus_images/79c57062536e94482c44c8a1c20f06123d7ab9fed07b0fd94d1c675bac26e344.png)

创建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/) 获得：[https://bitnodes.io/，推荐优先使用国内节点。](https://bitnodes.io/%EF%BC%8C%E6%8E%A8%E8%8D%90%E4%BC%98%E5%85%88%E4%BD%BF%E7%94%A8%E5%9B%BD%E5%86%85%E8%8A%82%E7%82%B9%E3%80%82)

![创建bitcoin.conf配置文件](https://storage.googleapis.com/papyrus_images/c47280bd1bb7edeb2123abbf751265aac363c0b2fe559aa2c4d0e8266f585a7c.png)

创建bitcoin.conf配置文件

8\. 输入 `sudo ufw allow 8333` 打开8333端口防火墙

![打开8333端口](https://storage.googleapis.com/papyrus_images/550b106947fcf0377eb891e6565598fff30aeea88330f96d627c3cdc78b8a65d.png)

打开8333端口

9.输入以下指令开始同步（-datadir后跟第7步中创建的存放data的文件夹路径，我这里是btc-data）：

    bitcoind -datadir=/mnt/btc_storage/btc-data -txindex
    

Bitcoin数据同步过程一般来说不会出现问题，不过也有可能由于网络原因碰到同步问题，解决方式就是多次尝试，直到同步成功为止。

10.等待同步完成，可以在生态项目钱包中用全节点做mint铸造操作（比如**ord钱包**），具体btc生态的mint请查看各项目的教程指南，后续可以关注 [@ouyoung11](https://twitter.com/ouyoung11) 也会写btc生态上项目的mint教程。

**查看是否同步完成：**

当同步完成之后，输入 `bitcoin-cli -rpcuser=mybtc -rpcpassword=mybtc123 getblockchaininfo` 得到同步的区块信息。

![同步区块信息](https://storage.googleapis.com/papyrus_images/0f8d4204887e9cb250b145a4460e3cb630a9defe433b16e5124aafb3ff71bbca.png)

同步区块信息

然后和headers字段或者 [mempool 浏览器](https://mempool.space/zh/)（[https://mempool.space/zh/](https://mempool.space/zh/) ）中的最新区块进行对比，如果一致，则代表同步成功。

**一些常见的 Bitcoin Core 命令：**

1.  **启动 Bitcoin Core**：
    
    这会启动比特币全节点。
    
2.  **获取节点信息**：
    
        bitcoin-cli getinfo
        
    
    这个命令提供关于比特币节点的信息，例如区块链高度、难度等。
    
3.  **获取钱包信息**：
    
        bitcoin-cli getwalletinfo
        
    
    这个命令提供有关比特币钱包的信息，例如余额、未确认余额等。
    
4.  **获取最新区块的哈希**：
    
        bitcoin-cli getbestblockhash
        
    
    这个命令返回当前链上最新区块的哈希。
    
5.  **获取指定区块的详细信息**：
    
        bitcoin-cli getblock <blockhash>
        
    
    替换 `<blockhash>` 为区块的哈希值。
    
6.  **获取交易详细信息**：
    
        bitcoin-cli gettransaction <txid>
        
    
    替换 `<txid>` 为交易的哈希值。
    
7.  **生成新地址**：
    
        bitcoin-cli getnewaddress
        
    
    这个命令用于生成新的比特币地址。
    
8.  **发送比特币**：
    
        bitcoin-cli sendtoaddress <address> <amount>
        
    
    替换 `<address>` 为接收地址，`<amount>` 为发送的比特币数量。
    
9.  **备份钱包**：
    
        bitcoin-cli backupwallet <filename>
        
    
    这个命令用于备份比特币钱包。
    
10.  **导入私钥**：
    
        bitcoin-cli importprivkey <privatekey>
        
    
    替换 `<privatekey>` 为要导入的私钥。
    
11.  **查询未花费的输出 (UTXOs)**：
    
        bitcoin-cli listunspent
        
    
    这个命令返回未花费的输出列表。
    
12.  **查看挖矿信息**：
    
        bitcoin-cli getmininginfo
        
    
    这个命令提供有关挖矿的信息，例如区块的难度、挖矿设备信息等。
    

这只是 Bitcoin Core 命令的一小部分，有很多其他命令和选项可用，可以通过查阅 [Bitcoin Core 官方文档](https://bitcoincore.org/en/doc/) 来获取更详细的信息。

---

*Originally published on [0xoooooyoung](https://paragraph.com/@0xoooooyoung/btc)*
