Filecoin Lotus環境搭建

2021-10-19 07:35:26 字數 4680 閱讀 7680

lotus是什麼

lotus是filecoin分布式儲存網路的一種技術實現

所有的filecoin的技術實現都遵從於filecoin規範

通過lotus實現了錢包,礦工,儲存證明,時空證明,儲存市場,檔案檢索等一系列的功能.

filecoin的4種技術實現

go-filecoin(written in go)

-協議實驗室開發

lotus(written in go)

-協議實驗室 #重點

fuhon(written in c++

)-soramitsu

forest(written in rust)

-chainsafe

filecoin的扇區封裝及挖礦流程

首先,安裝挖礦軟體並執行;其次建立節點並加入網路,加入之後同步鏈資料、建立錢包位址;

之後,挖礦需要質押fil,需要購買或者借貸fil給錢包位址打入fil v丨hugoschan.

挖礦正式開始:礦工獲取儲存訂單,資料密封(扇區封裝,耗時最長),生成複製證明,驗證資料,形成有效算力,獲得打包權,提交時空證明,獲得出塊獎勵。

而在上面的流程中,扇區封裝是乙個不可忽略的因素。通過複製證明封裝扇區是整個流程中計算量相對龐大的過程,從而生成該扇區獨一無二的標識碼。

一旦資料被封裝,儲存礦工將生成證明,執行snark來壓縮證明;最後,將壓縮後的結果提交到區塊鏈,作為儲存承諾的證明。

通俗易懂的理解

我們用割麥子來比喻挖礦,可能會更加通俗易懂一些。

首先,大家所謂的礦機其實就是儲存集群,就像我們用來裝麥子的袋子。沒有儲存資料的礦機是沒有什麼價值,就像沒有裝滿麥子的袋子也是沒有什麼價值的。

扇區封裝獲得算力的過程就像割麥子一樣。

我們用收割機來割麥子,就像我們通過搭建計算集群來對資料進行計算封裝獲取算力。

收割好了麥子裝進袋子,就像將資料封裝進礦機的硬碟裡,然後將收割好的麥子拿去賣掉換錢的過程,就是參與區塊打包獲得區塊獎勵一樣。收割的麥子越多賣的錢越多,封裝的資料越多、算力越大,獲得的區塊獎勵也越多。

但是,如果你收割好的麥子沒有進行妥善儲存,麥子在倉庫裡被老鼠吃掉了、淋雨受潮變質甚至被偷掉了,你收割的麥子也會損失掉。

而你封裝好資料的扇區如果不能完成挑戰提交時空證明,算力也會被扣罰。

與傳統的位元幣挖礦原理不同的是,位元幣挖礦的算力是恆定的,礦機接入網路之後,每天的產幣量就是乙個恆定值。

但filecoin挖礦則不同,filecoin挖礦的算力值根據封裝資料來定,這意味著它的算力是在不斷累積的。

總結

通過以上分析我們可以看到,filecoin挖礦的最基本在於有效算力,礦工的算力越高,贏票率越大,相應獲得區塊獎勵的概率也就越大,挖礦收益越高。而扇區封裝效率越快、有效算力增長速度自然越快,有效算力佔比越高,其出塊率也就越高,產幣量越大。
根據官方文件,檢視需要的配置要求

安裝了macos或linux系統

8核cpu和32 gib ram

支援intel sha擴充套件的模型

有足夠的空間來儲存當前的lotus鏈,最好在ssd儲存介質上,該鏈每週增長約12 gib.

安裝ubuntu系統

安裝ubuntu系統的教程

配置系統環境

#軟體依賴

sudo apt install mesa-opencl-icd ocl-icd-opencl-dev gcc git bzr jq pkg-config curl clang build-essential hwloc libhwloc-dev wget -y && sudo apt upgrade -y

#lotus 需要 rustup

#軟體依賴

#使用本地安裝包安裝

rz go1.15.5.linux-amd64.tar.gz

tar xf go1.15.5.linux-amd64.tar.gz -c /usr/local

lotus加速(中國)

##加入變數中

#go語言

#生效source /etc/profile

安裝filecoin-lotus

#第乙個是github

#進入lotus目錄

cd lotus/

#編譯安裝

make clean all 或者 make clean && make all

make install

開始執行filecoin-lotus

#安裝成服務

make install-daemon-service

make install-miner-service

##啟動執行同步區塊命令verbose模式

lotus daemon

systemctl start lotus-daemon # 服務模式

#注:剛執行的終端不要關閉,接下來,開啟乙個新的終端介面,用來檢視節點狀態

lotus net peers | wc -l #檢查區塊鏈節點連線數量

lotus sync wait #檢查區塊鏈同步高度

lotus命令整理

lotus啟動停止

# 首次啟動,從快照匯入鏈資料

lotus daemon --import-snapshot # 普通啟動

lotus daemon

# 停止

lotus daemon stop

# 匯入快照不啟動

lotus daemon --import-snapshot --halt-after-import

修改礦工位址(owner/worker/control)

# 檢視礦工關聯的位址資訊

lotus-miner actor control list

# 修改owner位址

lotus-miner actor set

-owner --really-

do-it # 修改control位址

lotus-miner actor control set

--really-

do-it .

..>

# 修改worker位址

lotus-miner actor propose-change-worker lotus-miner actor confirm-change-worker

從礦工賬戶轉fil到owner位址

lotus-miner actor withdraw
管理錢包

# 建立錢包

lotus wallet new bls

lotus wallet new

lotus msig create singeraddress1 signersaddress2.

.# 備份錢包

lotus wallet export > .key

# 匯入錢包

lotus wallet import .key

# 檢視錢包位址

lotus wallet list

# 預設錢包位址

lotus wallet deault # 檢視預設錢包位址

lotus wallet set

-default # 更改預設錢包位址

# 檢視錢包餘額(default)

lotus wallet balance

# 傳送fil

lotus send 3 #從預設錢包傳送

lotus send --

from

3 #從指定錢包傳送

FILECOIN lotus 安裝部署

系統 ubuntu 安裝基礎環境 sudo apt install mesa opencl icd ocl icd opencl dev gcc git bzr jq pkg config curl clang build essential hwloc libhwloc dev wget y su...

filecoin lotus 鏈路追蹤jaeger

lotus已在其許多內部元件中內建了跟蹤功能,lotus使用opencensus跟蹤應用程式。它預設已設定使用jaeger,當然也可以替換成其他符合規範的產品。docker run d name jaeger p 6831 6831 udp p 16686 16686 jaegertracing a...

開發環境 測試環境 預生產環境 生產環境區別

環境分以下幾種 1.開發和配置環境 所有的開發和配置在這個環境裡進行。一般情況下,只有這個環境可以改配置和進行開發,並且一般不在這個環境下建立資料。開發環境就是每個開發人員電腦上的開發環境,只有開發人員可以配置和開發,寫資料測試放在測試環境 2.測試環境 3.預生產環境 不是必須的 從生產環境不定期...