# 阿里云搭建BTC全节点铸造铭文：避坑指南

By [熊猫撸白.nft](https://paragraph.com/@fomoplz) · 2023-03-08

---

目前在各种媒体上看到的全节点搭建教程大多是基于windows操作系统，对于没有技术基础的用户来说，我也推荐使用windows系统来搭建，优点是图形界面操作更加便捷，一次搭建永久使用，无需续费。

本篇指南是为了弥补市面上对于云服务器搭建全节点的内容空缺，同时记录一下在搭建过程中碰到的种种问题以及我解决问题的思路。本文适用于有一定技术积累、追求效率和后续想在此基础上开发工具的用户群体。

以下为铸造铭文的步骤：

*   **购买云服务器**
    
*   **同步全节点数据**
    
*   **安装ord钱包**
    
*   **创建钱包**
    
*   **索引区块**
    
*   **铸造铭文**
    

**购买云服务器**

这一步是比较关键的，选择合适配置的云服务器可以避免后面我碰到的大部分问题，特别是**硬盘大小，比特币全节点数据记录着从2009年1月3日开始至今的所有数据，总大小大约在500G左右,并且每个月增长的速率为5-10G，所以这里我推荐使用最少1TB的固态硬盘,以下是我的服务器配置：**

![](https://storage.googleapis.com/papyrus_images/6074b4ee5e0b59e25d143466fa5dd4f02837727e2b3df82d6806113216c1544d.png)

![](https://storage.googleapis.com/papyrus_images/805897605d46b664a553bfb3ab985755abbbf75f1ed553419b81bab5d28be8fb.png)

其中云盘一共有两块，一块是系统盘，另一块是我挂载的1TB数据盘,这块盘就是用于存放Bitcoin全节点数据的地方。

接下来就是我要说的第一点：**当你购买的云盘大小已经存放不下最新的数据的时候该如何去做？**

有两种解决方案：\*\*1.直接扩容，无需迁移数据  2.挂载一块更大的云盘，将数据迁移。\*\*根据测算扩容的租赁成本稍比挂载多一点点。关于如何操作，可以参考阿里云的官方教程，我认为已经写的非常清楚，按照步骤操作即可：

    
    扩容: https://help.aliyun.com/document_detail/35095.html?spm=a2c4g.11186623.0.0.7b745e32003W3M
    挂载: https://help.aliyun.com/document_detail/25446.html
    

**同步全节点数据**

首先如果你和我一样按照官方文档挂载了另外一块云盘，那么它的挂载目录默认是/mnt目录，这个可以类比成windows系统上的E:\\ 。

接着输入以下指令：

    cd /mnt   //进入mnt目录
    mkdir btc //创建btc目录
    cd btc    //进入btc目录
    mkdir btc-data //创建保存btc数据的目录，以上目录均可自定义
    

下载bitcoin-24.0.1版本：

    wget https://bitcoincore.org/bin/bitcoin-24.0.1-x86_64-linux-gnu.tar.gz
    

下载完成后，可以解压压缩包，并将其安装到\`/usr/local/bin\`目录下，可以让系统直接访问到：

    tar -xzf bitcoin-24.0.1-x86_64-linux-gnu.tar.gz   //解压文件
    sudo mv bitcoin-24.0.1/bin/* /usr/local/bin/      //拷贝文件
    

如果不放到系统目录下，也可以按照如下方法添加环境变量：

    vim  ~/.bashrc  //编辑环境变量文件
    

在文件末尾添加bitcoincore文件目录

    export BTCPATH=/mnt/btc/bitcoin-24.0.1/bin   //根据自己文件目录修改
    export PATH=$BTCPATH:$PATH
    

使环境变量生效

    source ~/.bashrc
    

在btc-data下添加bitcoind的配置文件bitcoin.conf,并输入如下内容，addnode可以用来添加一个节点，可以加快下载速度，这些节点的ip可以从以下的网站获得：[https://bitnodes.io/,优先使用国内的节点。](https://bitnodes.io/,%E4%BC%98%E5%85%88%E4%BD%BF%E7%94%A8%E5%9B%BD%E5%86%85%E7%9A%84%E8%8A%82%E7%82%B9%E3%80%82)

    server=1
    daemon=1
    txindex=1   //txindex必须要加，因为ord钱包需要bitcoin的索引数据         
    addnode=81.68.102.34:8333
    addnode=60.205.205.119:8333
    addnode=223.167.74.199:8333
    addnode=47.104.221.103:8333
    addnode=112.19.172.217:8333
    addnode=47.109.21.215:8333
    addnode=120.244.105.164:8333
    addnode=47.108.165.145:8333
    

输入以下指令开始同步：

    bitcoind -datadir=/mnt/btc/btc-data -txindex    //datadir后替换为你自己的目录
    

Bitcoin数据同步过程已经经过很多年的验证，一般来说不会出现问题，不过你也有可能由于网络原因碰到我下面这个问题，解决方式就是多次尝试，直到同步成功为止。

![](https://storage.googleapis.com/papyrus_images/afe0330710dc11a495f95d78f7b840ccc6af2aaec09640aa903e91e9fc8cf29c.png)

当同步完成之后，输入如下指令得到最新的区块数，然后和mempool 浏览器

<[https://mempool.space/zh/](https://mempool.space/zh/) >

中的最新区块进行对比，如果一致，则代表同步成功。

**安装ord钱包**

你可以使用下面的脚本去安装ord钱包

    curl --proto '=https' --tlsv1.2 -fsLS https://ordinals.com/install.sh | bash -s
    

或者去官方的github直接下载安装包，最新的版本是0.5.1

[

Releases · casey/ord
--------------------

👁‍🗨 Rare and exotic sats. Contribute to casey/ord development by creating an account on GitHub.

https://github.com

![](https://storage.googleapis.com/papyrus_images/00f840b7bf545fd9d58077148d98719b86de4dbce98bec1ebb88b8297f28198d.png)

](https://github.com/casey/ord/releases)

然后解压到自定义目录，最后记得把ord执行文件的目录按照前面提到的方法加入环境变量文件中。

![](https://storage.googleapis.com/papyrus_images/561230ee039a1e57bb8c7d3c5fb617ac98481491f9ccc4fe839da06a386f8a3a.png)

**创建钱包**

首先使用以下指令创建一个钱包，使用 --wallet 可以指定钱包的名称，如果不使用则默认名称为“ord”。如果你修改了bitcoin core数据安装目录，则必须使用参数 --bitcoin-data-dir 指定目录，才可以创建钱包，创建钱包成功后，会生成12个助记词，保存好。

    ord --wallet example  --bitcoin-data-dir /mnt/btc/btc-data  wallet create
    

![](https://storage.googleapis.com/papyrus_images/7b77491e362237d17f7a45912de50dbadba3e9539ac56399567ffaa286d0ae72.png)

**索引区块**

输入如下查看钱包账户的指令，说一下第一个参数 --cookie-file 指定了RPC调用验证的cookie文件路径，第三个参数--data-dir,这个参数是用于保存ord钱包索引区块的数据，当索引开始时，在该目录下会生成一个index.redb文件，这是用rust编写的轻量级的数据库。

    ord --wallet example  --cookie-file /mnt/btc/btc-data/.cookie --bitcoin-data-dir /mnt/btc/btc-data --data-dir /mnt/btc/ord_data  wallet balance
    

开始索引后，就会出现如下的进度条，有的时候也许会**报错，卡顿很久**，耐心等待或者多次尝试即可，整个过程耗时也比较长，差不多需要1至2天，不过现在随着解决方案越来越成熟，很多人已经打包好了区块数据和index.redb文件，下载下来直接用即可，我会在文末放上**github链接**

![](https://storage.googleapis.com/papyrus_images/8d6618fdb4ebedd07db7c2ef9e232d92ba7634883c0a07e17b0e810dd631c7fd.png)

**铸造铭文**

当索引完成后，最后就是享受胜利果实的时候，铸造铭文的指令如下,inscrible后添加你要铸造的文件即可，记得加上 --fee-rate,这个参数可以用于设置费率，你给的越多铸造的越快，当然成本也会更高，15的费率只能算是中上等，前两天在疯狂内卷的时候，费率经常飙到30,费率可以通过mempool查看，进行动态调整。

    ord --wallet example --cookie-file /mnt/btc/btc-data/.cookie  --bitcoin-data-dir /mnt/btc/btc-data --data-dir /mnt/btc/ord_data  wallet inscribe panda.txt --fee-rate 15
    

**其他指令**

还有一些其他常用的指令，我已经整理在下图，如果是没有安装在默认位置，记得添加上面所讲的参数.

![](https://storage.googleapis.com/papyrus_images/845e19463b1d3549b2df779190f86a1e0746c127b68b963cffd7a1cabd14afc7.png)

**总结：**

以上是用linux服务器搭建全节点铸造nft的过程，希望能帮到你，不过我相信在你自己操作的过程，一定会碰到各种各样的问题，欢迎添加下方微信，备注“BTC全节点”，进入免费交流群。最后，附上全节点和index.redb数据的github链接：

<[https://github.com/CryptoCellLabs/Ordinals-Index-Data](https://github.com/CryptoCellLabs/Ordinals-Index-Data) >

  

[

GitHub - CryptoCellLabs/Bitcoin\_FullNode\_Data: Provide complete bitcoin node data to facilitate everyone to quickly synchronize complete bitcoin nodes
--------------------------------------------------------------------------------------------------------------------------------------------------------

Provide complete bitcoin node data to facilitate everyone to quickly synchronize complete bitcoin nodes - CryptoCellLabs/Bitcoin\_FullNode\_Data

https://github.com

![](https://storage.googleapis.com/papyrus_images/b332848a2f939edefd438f012eb9516310bdb4069ba7f7b25efcbbe754d45248.png)

](https://github.com/CryptoCellLabs/Bitcoin_FullNode_Data)

![](https://storage.googleapis.com/papyrus_images/1fdcad0276cec05abee3585439ad4bbdfe3f37a26991bd585ba321ec61cded82.png)

[Subscribe](null)

---

*Originally published on [熊猫撸白.nft](https://paragraph.com/@fomoplz/btc)*
