前言

系统选择的ubuntu 20
因为ubuntu 20 自带Python3.8 省去了很多事情.

本文主要涉及:

  1. 服务器系统配置的选择
  2. 云绘图(接入矿池)
  3. oss/cos 对Plot文件传输
  4. 本地Farming
  5. Chia 疑问/问答/探索(隐性知识)
  6. 吐槽
  7. 腾讯和阿里 的非客观对比

服务器选择参数(参考):

最低配置(个人测试,不代表官方):

  • 服务器类型: 阿里云 / 腾讯云 计算型服务器

  • CPU_参数: 尽量选高Ghz的, 2核, 4G

  • P图磁盘 : 300G

  • Plot磁盘: 120G
    说明:

  • CPU Ghz 越高越好, P图SSD, 越大越好,因为P一个图,需要的存储不是固定不变的.

  • P图时候还要设置线程数,线程 -r 1

  • -b Num 时占用SSD内存最小, Num 就是一个线程所占用的 Num Mb 内存大小

个人选择 -r 1 -b 3000 即 一个线程,占用3000Mb 内存来P 图,留1G操作空间,用时 10 小时

Ubuntu Chia 设置

开始连接服务器

sudo -i
apt-get update
apt-get upgrade -y

# 创建我们需要的目录
mkdir -p /home/luuuxury/Plotting_SSD
mkdir -p /home/luuuxury/Farming_SSD

找到磁盘

列出磁盘状态

lsblk

找到我们要挂载的磁盘 vdbvdc

root@VM-0-5-ubuntu:~# lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sr0     11:0    1 128.9M  0 rom  
vda    252:0    0    50G  0 disk 
├─vda1 252:1    0     1M  0 part 
└─vda2 252:2    0    50G  0 part /
vdb    252:16   0   370G  0 disk 
vdc    252:32   0   130G  0 disk 

磁盘格式化

这里腾讯云和阿里云略有不同,分开来写了

腾讯云 数据盘格式化

mkfs -t xfs /dev/vdb 
mkfs -t xfs /dev/vdc

阿里云 数据盘格式化

来源: Linxu 阿里云数据盘格式化

我的操作:

  1. 查看实例上的数据盘信息
fdisk -l

在这里插入图片描述

  1. 依次运行以下命令,创建一个分区

运行以下命令分区数据盘

fdisk -u /dev/vdb

p 查看数据盘的分区情况
n 创建一个新分区
p 选择分区类型为主分区
输入分区编号,按回车键, 默认为 1
输入第一个可用的扇区编号,按回车键 默认2048开始
输入最后一个扇区编号,按回车键,默认 最后的编号
再次输入p查看该数据盘的规划分区情况
输入w开始分区,并在完成分区后退出
在这里插入图片描述

等这还没完

  1. 为分区创建文件系统
    创建一个ext4文件系统,运行以下命令
mkfs -t ext4 /dev/vdb1
mkfs -t ext4 /dev/vdc1
  1. 配置/etc/fstab文件并挂载分区
# 备份fstab 文件
cp /etc/fstab /etc/fstab.bak

# root用户可以运行以下命令直接修改/etc/fstab文件
echo `blkid /dev/vdb1 | awk '{print $2}' | sed 's/\"//g'` /mnt ext4 defaults 0 0 >> /etc/fstab
echo `blkid /dev/vdc1 | awk '{print $2}' | sed 's/\"//g'` /mnt ext4 defaults 0 0 >> /etc/fstab

磁盘挂载(通用)

创建我们的挂载磁盘的目录,然后对接上(挂载上)

mount /dev/vdb1 /home/luuuxury/Plotting_SSD
mount /dev/vdc1 /home/luuuxury/Farming_SSD


Chia 开始(配置)

下载项目

下载项目 来源:github-Chia-Network

apt-get install git -y

git clone https://github.com/Chia-Network/chia-blockchain.git -b latest --recurse-submodules          
cd chia-blockchain
sh install.sh

特别地如果gitt 很慢, 就本地下载 再 scp 上去.

进入一个虚拟环境

. ./activat

看到前面有(env)这时候说明进入了虚拟环境,

初始化

chia init 


到这里,没有报错的话,你的chia 就已经安装好了,我们继续

钱包选择

这时候你有两个选择:

  1. 导入已经有钱包
  2. 直接本地创建一个

我选择导入钱包:
首先新建一个txt文件,把20个谜语放进去,然后执行:

chia keys add -f My_Words.txt 
# 然后你会看到你的20谜语 和 钱包地址 
20 ge ying wen dan ci .........
Setting the xch destination address for coinbase fees reward to xch10vda3qjtfqjs2w6u42hsljfwr925dq2xpas8f5nfvstrhyv489cquptv5z
Setting the xch destination address for coinbase reward to xch10vda3qjtfqjs2w6u42hsljfwr925dq2xpas8f5nfvstrhyv489cquptv5z

然后执行

chia keys show 

就可查看你的

指纹
主私钥
矿工Pub钥
矿池Pub钥
钱包地址
Farmer public key (m/12381/8444/0/0): 80977f10dae545fd34b1d32742d35fa54f5312fc30ba454e5f8430154856c738d330b2f31f225a27890860ce6ec02baa
Pool public key (m/12381/8444/1/0): a1964a212ea2468ef8f849586f99f5953ef2469371d03851072cf45c039f75a13003356483dcbbae461499909826a710
First wallet address: xch10vda3qjtfqjs2w6u42hsljfwr925dq2xpas8f5nfvstrhyv489cquptv5z

其实我们只需要矿工Pub钥匙矿池Pub钥匙就可以P图了!

启动所有服务

chia start farmer 启动所有服务

(venv) root@VM-0-5-ubuntu:~/chia-blockchain# chia start farmer
Daemon not started yet
Starting daemon
chia_harvester: started
chia_farmer: started
chia_full_node: started
chia_wallet: started

最后 如何P 图呢?

P 图

官方命令P图

命令:

nohup chia plots create -k 32 -b 3000 -r 1 -n 1 -t /home/luuuxury/Plotting_SSD -d /home/luuuxury/Farming_SSD   > P_log.log 2>&1 &                      

更多参数举例:

nohup chia plots create \
-k 32 \
-b 3000 \
-r 1 \
-n 1 \
-u 128 \
-a 填入公共指纹 \
-f 填入fpk值 \
-p 填入ppk值 \
-t /home/luuuxury/Plotting_SSD \
-d /home/luuuxury/Farming_SSD  \
> P_log.log 2>&1 &                    

后台运行: nohup yourcommand &
| 或 |
后台运行并且输出日志 : nohup yourcommand > myout.log 2>&1 &
参数解释:
-b 1000 使用 1000Mb 内存
-r 2 使用两个线程
-n 连续P图 P 一个
-t 临时缓存目录(P图目录)
-d 最终目录,保存plot的目录)
-f 当你想在其他机器上创建P盘文件时,且不想给chia账户完整的访问权限,就可以使用这个公钥
-p 同 -f
-a 公共指纹

OSS 使用:

这三个链接下面会用到: OSS下载RAM控制台OSS-使用教程

1、OSS 工具包下载

下载 命令行工具包,并且给权限

wget http://gosspublic.alicdn.com/ossutil/1.7.3/ossutil64       

chmod 755 ossutil64
                    

2 服务端 配置OSS

首先,配置文件

./ossutil64 config

  1. 这里会有连续几次询问, 第一个默认配置文件路径询问 按回车

  2. 第二个 请输入语言(CH/EN,默认为:CH,该配置项将在此次config命令成功结束后生效):CH

  3. endpoint 填写Bucket所在地域的Endpoint。各地域Endpoint详情,请参见endpoint,选你ESC对应物理地域的内网就好,比如: 我的在张家口3

  4. accessKeyID、accessKeySecret:填写账号的AccessKey。这个在哪呢,在这RAM控制台
    我们要先创建AccessKey

1 - 使用云账号登录RAM控制台。
2 - 在左侧导航栏的人员管理菜单下,单击用户
3 - 在用户登录名称/显示名称列表下,单击目标RAM用户名称
4 - 在用户AccessKey区域下,单击创建AccessKey

创建好了,把你的ID 、Secret,依次放进去就好

最后,也是最重要的,给你的用户授权OSS操作权限,要不然都是403, 回到RAM控制台

  1. 权限管理 -> 授权 -> 新增授权
  2. 选择你的授权账户
  3. 然后下面 系统策略 选中前 5 个
  4. 确定

在这里插入图片描述

3 命令实现

1、 创建存储桶
我创建了一个名字为: luuuxury 的存储通

root@iZ8vb3pnfbxsgw14yo4tw7Z:/home/Luuuxury# ./ossutil64 mb oss://luuuxurychia

0.399034(s) elapsed

2、上传文件

后台传输并输出日志到文件

nohup ./ossutil64 cp plotfile oss://luuuxury > Up.log 2>&1 &

root@Luuuxury:/home/luuuxury/Farming_SSD# nohup ./ossutil64 cp plot-k32-2021-05-19-09-06-2af6918ea31181f999a0d8450734b72729a6894a9368bbcbc4bbba318bffbe29.plot oss://luuuxury > Up.log 2>&1 &
[2] 26743
root@Luuuxury:/home/luuuxury/Farming_SSD# cat Up.log
nohup: ignoring input
Total num: 1, size: 108,871,357,550. Dealed num: 0, OK size: 3,810,497,516, Progress: 3.500%, Speed: 91208.21KB/sroot@Luuuxury:/home/luuuxury/Farming_SSD# cat Up.log
nohup: ignoring input
Total num: 1, size: 108,871,357,550. Dealed num: 0, OK size: 4,354,854,304, Progress: 4.000%, Speed: 80391.75KB/sroot@Luuuxury:/home/luuuxury/Farming_SSD#

3、 大文件测试
由于我们plot文件101G,如果本地没有文件可以测试,可以参考这边文章,使用dd命令快速生成大文件或者小文件的方法

至于命令行下载的话请参考OSSutil快速入门

Farming(Check)

OSS到本地就可以收割啦
参考https://github.com/Chia-Network/

启动所有服务

我电脑连接的机械硬盘来进行Farming(Check),在Check 之前我们要先启动我们所的服务
chia start farmer

# 启动所有服务器
(venv) Luuuxury:chia-blockchain liuyang$ chia start farmer
chia_harvester: started
chia_farmer: started
chia_full_node: Already running, use `-r` to restart
chia_wallet: started

添加Farm(Check)文件/路径

注意! :
这个启动后,我们找到我们要Farm的目录文件夹.比如我的plot 文件具体在 /Volumes/Luuuxury_TT/Farming/plot-k32-**********......
这时候我们要到Luuuxury目录下

(venv) Luuuxury:Luuuxury_TT liuyang$ pwd
/Volumes/Luuuxury_TT

然后 chia plots add -d 'Farming/'

(venv) Luuuxury:Luuuxury_TT liuyang$ chia plots show
Directories where plots are being searched for:
Note that subdirectories must be added manually
Add with 'chia plots add -d [dir]' and remove with 'chia plots remove -d [dir]' Scan and check plots with 'chia plots check'

/Volumes/Luuuxury_TT/Farming

这里我要说的的是, add -d 你输入路径, chia 是不会寻址的!!! 他会在你当前的目录下继续添加目录, 也就出现了 /User/…/User/…的情况, 懂的都懂…
添加好check 目录就可以 check 了

Check !

(我有两个plot 文件哈) 最后输入: chia plots check 或者: chia plots check -g 'Farming/'

(venv) Luuuxury:Luuuxury_TT liuyang$ chia plots check -g 'Farming/'
2021-05-21T21:16:31.570  chia.plotting.check_plots        : INFO     Loading plots in config.yaml using plot_tools loading code

2021-05-21T21:16:31.718  chia.plotting.plot_tools         : INFO     Searching directories ['/Volumes/Luuuxury_TT/Farming']
2021-05-21T21:16:31.719  chia.plotting.plot_tools         : INFO     Only loading plots that contain "Farming/" in the file or directory name
2021-05-21T21:16:32.220  chia.plotting.plot_tools         : INFO     Found plot /Volumes/Luuuxury_TT/Farming/plot-k32-2021-05-18-19-20-ab1ed7656c2c5a5d383a0ca06ba8f72fd59d23805b9ba403cded2b4.plot of size 32
2021-05-21T21:16:32.232  chia.plotting.plot_tools         : INFO     Found plot /Volumes/Luuuxury_TT/Farming/plot-k32-2021-05-19-09-06-2af6918ea31181f999a0d8894a9368bbcbc4b9.plot of size 32
2021-05-21T21:16:32.233  chia.plotting.plot_tools         : INFO     Loaded a total of 2 plots of size 0.19801721738531342 TiB, in 0.5790760517120361 seconds
2021-05-21T21:16:32.233  chia.plotting.check_plots        : INFO     
2021-05-21T21:16:32.233  chia.plotting.check_plots        : INFO     
2021-05-21T21:16:32.233  chia.plotting.check_plots        : INFO     Starting to test each plot with 30 challenges each

2021-05-21T21:16:32.233  chia.plotting.check_plots        : INFO     Testing plot /Volumes/Luuuxury_TT/Farming/plot-k32-2021-05-18-19-20-ab1ed7656c2c5a5d380966ba8f7***b9ba403cded2b4.plot k=32
2021-05-21T21:16:32.234  chia.plotting.check_plots        : INFO     	Pool public key: a1964a212ea2468ef8f849586f99f5953ef2469371d03851072cf45c039f75a13003356483dcbbae461499909826a710
2021-05-21T21:16:32.247  chia.plotting.check_plots        : INFO     	Farmer public key: 80977f10dae545fd34b1d32742d35fa54f5312fc30ba454e5f8430154856c738d330b2f31f225a27890860ce6ec02baa
2021-05-21T21:16:32.248  chia.plotting.check_plots        : INFO     	Local sk: <PrivateKey 525f17e2c7*******>
2021-05-21T21:16:50.060  chia.plotting.check_plots        : INFO     	Proofs 23 / 30, 0.7667
2021-05-21T21:16:50.060  chia.plotting.check_plots        : INFO     Testing plot /Volumes/Luuuxury_TT/Farming/plot-k32-2021-05-19-09-06-2af6918ea31181f999a0d8450734b727*****ba318bffbe29.plot k=32
2021-05-21T21:16:50.060  chia.plotting.check_plots        : INFO     	Pool public key: a1964a212ea2468ef8f849586f99f5953ef2469371d03851072cf45c039f75a13003356483dcbbae461499909826a710
2021-05-21T21:16:50.078  chia.plotting.check_plots        : INFO     	Farmer public key: 80977f10dae545fd34b1d32742d35fa54f5312fc30ba454e5f8430154856c738d330b2f31f225a27890860ce6ec02baa
2021-05-21T21:16:50.078  chia.plotting.check_plots        : INFO     	Local sk: <PrivateKey 18ff15********0>
2021-05-21T21:17:11.620  chia.plotting.check_plots        : INFO     	Proofs 26 / 30, 0.8667
2021-05-21T21:17:11.621  chia.plotting.check_plots        : INFO     
2021-05-21T21:17:11.621  chia.plotting.check_plots        : INFO     
2021-05-21T21:17:11.621  chia.plotting.check_plots        : INFO     Summary
2021-05-21T21:17:11.621  chia.plotting.check_plots        : INFO     Found 2 valid plots, total size 0.19802 TiB
2021-05-21T21:17:11.621  chia.plotting.check_plots        : INFO     2 plots of size 32

查看 Farm(未同步完全):

chia farm summary

(venv) Luuuxury:Luuuxury_TT liuyang$ chia farm summary
Farming status: Syncing
Total chia farmed: 0.0
User transaction fees: 0.0
Block rewards: 0.0
Last height farmed: 0
Plot count: 0
Total size of plots: 0.000 GiB
Estimated network space: 672.122 PiB
Expected time to win: Unknown
Note: log into your key using 'chia wallet show' to see rewards for each key

由于我的节点还没有同步完全, 不知道同步好了 Plot count : 0 会不会成为 2

看看是否真的启动了呢 ps -ef | grep chia

(venv) Luuuxury:Luuuxury_TT liuyang$ ps -ef | grep chia
  501 26451     1   0 四09上午 ??         0:49.12 chia_daemon  
  501 47225 26451   0  7:46上午 ??        54:33.69 chia_full_node 
  501 49655 47225   0 10:55上午 ??       194:29.72 chia_full_node 
  501 49656 47225   0 10:55上午 ??       194:22.81 chia_full_node 
  501 57131 26451   0  8:27下午 ??         0:02.04 chia_harvester 
  501 57132 26451   0  8:27下午 ??         0:02.16 chia_farmer 
  501 57133 26451   0  8:27下午 ??         1:36.41 chia_wallet 
  501 57181 36806   0  8:29下午 ttys000    0:00.00 grep chia

先挂着吧, 等同步完了 在 summary 一次.

查看 Farm(同步完全):

同步完了!

(venv) Luuuxury:chia-blockchain liuyang$ chia show -s
Current Blockchain Status: Full Node Synced

Peak: Hash: e4abe1aaa18cbb4edfc42eef7d650eb7143a8ffd7463e38ac840fe2264360bf9
      Time: Sun May 23 2021 10:30:26 CST                  Height:     322353

Estimated network space: 8.874 EiB
Current difficulty: 580
Current VDF sub_slot_iters: 111673344
Total iterations since the start of the blockchain: 1043348285305

  Height: |   Hash:
   322353 | e4abe1aaa18cbb4edfc42eef7d650eb7143a8ffd7463e38ac840fe2264360bf9
   322352 | 14628e2f825ce92e1f75dc1240eb75cadbf8647c5360788f7807dbf91945e611
   322351 | d51c61cf1e9cb00698e4988c3ed72280ca5cdc017fac872146e4f12799f8b9bc
   322350 | 249ac34cc13e401c910e5ebb30f33fa9fbada14a8a2a63b82cd6b9a16f0cd264
   322349 | b0e692b7b06365121e51969093ae697f50f0233f891e6e08192ee641fcfa74fc
   322348 | 650374a122e038a02971738946564f2850edfe325fe1822b79efcef774445ae5
   322347 | 9054ad19fea35a539ccb3f0a94ea0ae821a6ceb2be746a2c7b59575dff616efa
   322346 | 71714525638e9f182682b4a977f7a4eda92e5607d860c8e2256d01036910b344
   322345 | 64da8b38264280f6110706fd7ab4cf48f3b5dc7f092e182012664ea1a1d03c73
   322344 | f4bc686d158f94be17f51702959040d62193542067d7e71f9a8630263c0b1f06

(venv) Luuuxury:chia-blockchain liuyang$ chia farm summary
Farming status: Farming
Total chia farmed: 0.0
User transaction fees: 0.0
Block rewards: 0.0
Last height farmed: 0
Plot count: 2
Total size of plots: 202.770 GiB
Estimated network space: 9088.365 PiB
Expected time to win: 24 years and 11 months
Note: log into your key using 'chia wallet show' to see rewards for each key
(venv) Luuuxury:chia-blockchain liuyang$ 

(venv) Luuuxury:chia-blockchain liuyang$ ps -ef | grep chia
  501 26451     1   0 四09上午 ??         3:39.73 chia_daemon  
  501 57131 26451   0 五08下午 ??         0:20.77 chia_harvester 
  501 57132 26451   0 五08下午 ??         0:51.46 chia_farmer 
  501 57133 26451   0 五08下午 ??       871:09.69 chia_wallet 
  501 79665 26451   0 12:01上午 ??       113:44.49 chia_full_node 
  501 80823 79665   0  1:29上午 ??        19:42.35 chia_full_node 
  501 80824 79665   0  1:29上午 ??        19:32.17 chia_full_node 
  501 87520 79665   0  9:26上午 ??         0:02.26 chia_full_node 
  501 88508 58611   0 10:33上午 ttys000    0:00.00 grep chia

配置文件、日志

配置文件、节点数据库、日志等都在

~/.chia/mainnet/ 

筛选查看日志信息

tail -F ~/.chia/mainnet/log/debug.log | grep "proofs"

Ok ~

就到这里,我的需求就完成了
全文完




Chia 探索/问答

1、p盘不需要维持全节点,不需要管是否同步, farm 需要.

2、 接入矿池挖矿不会影响转回SOLO,SOLO挖矿也可以直接转到矿池挖矿,不需要重新p盘

3、 一般来说,每p好一个100G的k32的plot文件,就会对SSD造成1.4~2TB的写入量

4、temp占用是最终文件3倍, 即 102GiB x 3 = 306GiB

5、问答QA
Q: 现在是把一个HDD的盘p满以后,然后换到另外的一台电脑上来收割吗?另外一台电脑可以登录同一个chia的账号吗?意思是把原来电脑上的硬盘装到新的电脑上收割
A: p盘机器用cmd命令p盘 -a xxx导入指纹 chia keys show 可以显示你的指纹key
chia configure --enable-upnp false关闭upnp,另一台电脑先导入25个单词 就是倒入你之前的账号之后可以cmd命令chia start farmer 也可以开gui

6、chia plots create [add flags and parameters] 命令就是只p图
chia start farmer 这个就是挖矿 他会同时启动节点 农场 挖矿 钱包
如果只P图,只用到plots create就足够了

7、 多看项目wiki

吐槽:

现在在用腾讯云做测试,感觉腾讯云这边网络和服务器性价比都不如阿里云, 准备回到阿里云了.
两天P了三个图,你读写一共是10T, 八达鸟啊~ 我这SSD 能撑过半年去就了… 真的是在谋杀SSD啊…太可怕了…

可怕

服务器对比

腾讯云:

1

阿里云

阿里云
价格差的优异性怎么体现出来我也没去自己检索.

OSS/COS 对象存储对比

4
5

参考:

P图过程的4个部分

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐