TShopping

標題: Storj 挖礦教學 – Ubuntu 20.04 安裝實例 [打印本頁]

作者: woff    時間: 2022-7-28 11:59
標題: Storj 挖礦教學 – Ubuntu 20.04 安裝實例
Storj 是雲端存儲服務商,採用分散式存儲架構,將用戶資料分散在全球眾多節點上面,任何人可共享硬碟空間給 Storj,並賺取加密貨幣 STORJ 做為回報。
我們許多人都在努力創造收入,尤其是被動收入,如果你有一台 24 小時運作的電腦,你就可以安裝 Storj 工具成為節點,將額外的硬碟空間出租,賺取被動收入。

成為 Storj 節點預期收益
如果你有意願想要成為 Storj 節點賺取回報,你可以先評估一下投資回報是否滑算,這裡有一份官方提供的預期收益表讓你參考,Excel 連結

官方原文說明頁面
成為節點需求
以下列出成為 Storj 挖礦節點的需求。
硬體需求
要提供 Storj 節點挖礦,最主要準備的是大容量硬碟空間,而 Storj 限制一個 CPU 核心可以運行一個節點,而一個節點最多使用 8 TB 的空間,如果要提供 16 TB 硬碟挖礦,就需要二個 CPU 核心。
而維持電腦運作至少要一個 CPU 核心,所以扣除一個 CPU 核心之後,剩下的就可以提供給 Storj 使用。
例如一個四核心的 CPU,扣除一個給系統運作,其他三個核心提供給 Storj 使用,那最多可以提供 24 TB 的硬碟空間來挖礦。
記憶體要求不高,我實測每個節點使用記憶體在 1 G 以下。
每月最低正常運行時間要求是 99.3%,每月最長停機時間是 5 小時,如果時間達不到要求,可能當月就沒有收益。


作業系統要求
Storj 節點支援 Windows, Linux, macOS 三個平台都行。


網路要求
Storj 需要可由外面直接連線的網路,使用固定 IP 是很好的選擇,但如果是浮動 IP 的話,例如中華電信撥號,那可以申請 No-IP 服務來指向浮動 IP。
如果是區域網路,例如是 192.168 類型的網路就不行了。


ETH 以太坊錢包
Storj 的加密貨幣是以太坊上的 ERC-20 代幣,在挖礦之前需要先擁有 ETH 錢包地址。
如果還沒有以太坊錢包的話,可以使用 MetaMask 來建立錢包。
Storj contract 位址
  1. 0xB64ef51C888972c908CFacf59B47C1AfBC0Ab8aC
複製代碼
Storj 另外提供 Layer 2 網路 zkSync 來收款回報,這樣做可以節省以太坊的高手續費成本。

按照適用於您的操作系統的安裝指南安裝 Docker。
  1. sudo su
  2. apt-get update
  3. apt-get -y install curl wget net-tools
複製代碼


防火牆與 DNS 設定
當節點運作時,需要開通指定 Port 連線與固定 IP 或 DNS 連線到此主機。
我以下使用的環境是 Ubuntu 20.04 環境做為教學。


開通防火牆 28967 Port
Storj 節點使用 TCP 與 UDP 的 Port 都是 28967,要開通此 Port 才可以運行節點。
Ubuntu 預設沒有啟用防火牆,但我認為這樣是比較危險的,建議要開啟防火牆,然後針對有需要的 Port 開通,其它的就關閉。
檢查防火牆狀態指令:
  1. sudo ufw status
複製代碼

如果防火牆沒有啟用的話,可以開啟防火牆指令:
  1. sudo ufw enable
複製代碼

允許 Port 28967 可連線指令:
  1. sudo ufw allow 28967
複製代碼

安裝 Storj 節點工具與設定
這裡會取得節點憑證、下載安裝 Storj 節點工具。
取得授權令牌
開啟官網取得授權令牌網頁,輸入 Email 取得授權碼。

輸入後會收到類似這樣的令牌。

將自己的授權令牌存儲下來,等等會用到。
下載身份憑證工具
在 Ubuntu 用使用者身份 (不是 Root) 執行以下的指令,每行逐一執行。
下載檔案
  1. curl -L https://github.com/storj/storj/releases/latest/download/identity_linux_amd64.zip -o identity_linux_amd64.zip
複製代碼

解壓縮檔案
  1. unzip -o identity_linux_amd64.zip
複製代碼

賦予執行權限
  1. chmod +x identity
複製代碼

移動檔案
  1. sudo mv identity /usr/local/bin/identity
複製代碼


執行後就會安裝身份工具在 /usr/local/bin/ 目錄。

生成身份憑證
執行以下指令可能要等待數小時,取決於你機器的速度。
輸入指令:
  1. identity create storagenode
複製代碼

完成之後會在電腦上產生 CA 憑證。

授權身份憑證
執行指令:
  1. identity authorize storagenode <email:characterstring>
複製代碼

請將 <email:characterstring> 取代為剛剛獲得的授權令牌。

執行以下指令確認是否已正確授權身份。
  1. grep -c BEGIN ~/.local/share/storj/identity/storagenode/ca.cert
  2. grep -c BEGIN ~/.local/share/storj/identity/storagenode/identity.cert
複製代碼


當正確授權時,第一個指令會回傳 “2”,第二個指令會回傳 “3”。
你可以備份此憑證,當你想要更換電腦執行時,可以複製此憑證至新電腦上使用。

安裝 Docker
Storj 將許多複雜的設定都封裝在 Docker 內,以方便執行節點服務,如果你的 Ubuntu 尚未安裝 Docker,使用以下步驟安裝 Docker,若你已安裝 Docker 則建議將 Docker 更新至最新版本。
執行此指令可以安裝 Docker:(請直接用ROOT身分,不然會出現權限問題)
  1. apt-get -y install docker.io
複製代碼

安裝之後可用此指令確認是否已啟動:
  1. service docker status
複製代碼

將使用者帳號加入 Docker 群組,執行指令:
  1. sudo usermod -aG docker $USER
  2. newgrp docker
複製代碼

下載 Storj Docker 容器
下載 Storj Docker 容器至 Docker 內,執行指令:
  1. docker pull storjlabs/storagenode:latest
複製代碼

執行 Storj Docker 容器
在第一次執行節點前,我們先設置 Docker 參數,其中一些設定要更換為你的設定。
指令是:(注意,此為一行指令)
  1. docker run --rm -e SETUP="true" \
  2. --user $(id -u):$(id -g) \
  3. --mount type=bind,source="<identity-dir>",destination=/app/identity \
  4. --mount type=bind,source="<storage-dir>",destination=/app/config \
  5. --name storagenode storjlabs/storagenode:latest
複製代碼

你需要將 <identity-dir> 取代為剛剛授權身份憑證目錄,以我上面的範例路徑為
  1. /home/woff/.local/share/storj/identity/storagenode/
複製代碼

將 <storage-dir> 取代為要共享的硬碟空間路徑,也就是容量較大的硬碟空間,此目錄如果是外接硬碟,建議要先執行靜態掛載,否則可能會有資料審核失敗的風險。

接著以下是執行節點的指令,其中一些設定要更換為你的設定。(注意,此為一行指令)
  1. docker run -d --restart unless-stopped --stop-timeout 300 \
  2. -p 28967:28967/tcp \
  3. -p 28967:28967/udp \
  4. -p 127.0.0.1:14002:14002 \
  5. -e WALLET="0xXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
  6. -e EMAIL="user@example.com" \
  7. -e ADDRESS="domain.ddns.net:28967" \
  8. -e STORAGE="2TB" \
  9. --user $(id -u):$(id -g) \
  10. --mount type=bind,source="<identity-dir>",destination=/app/identity \
  11. --mount type=bind,source="<storage-dir>",destination=/app/config \
  12. --name storagenode storjlabs/storagenode:latest
複製代碼

將 WALLET 錢包地址的值更換為你的 ETH 地址。
將 EMAIL 的值更換為你的 EMAIL
將 ADDRESS 的值更換為你的固定 IP 或是 NoIP 的網址,後面帶有 Port 號。
將 STORAGE 的值更換為你要共享的硬碟容量,如果共享容量等於硬碟空間總容量,建議共享容量要少 50 GB 比較好。
將 <identity-dir> 取代為剛剛授權身份憑證目錄。
將 <storage-dir> 取代為要共享的硬碟空間路徑。

成功執行後,會回傳一段代碼。




如何檢查執行狀態
開啟網頁就可以檢查執行狀態了,在瀏覽器上輸入 http://127.0.0.1:14002/ 會出現節點運作狀態,以及獲利資訊。
狀態 「STATUS」 值為 “Online” 表示正在運作中。
關於狀態數據的說明,可至官網查詢
如何停止與啟動節點運作
當要關機前或是重開機之後,可以執行以下指令來停止或啟動。
停止指令:
  1. docker stop -t 300 storagenode
複製代碼

啟動指令:
  1. docker start storagenode
複製代碼

移除指令:
  1. docker rm storagenode
複製代碼


權限問題(無法正常讀到設定檔)
請先停止節點->移除節點->重新部屬

更換設定不知道為什麼在Ubuntu 20.04 DOCKER PORT都會失敗
  1. cat /usr/lib/systemd/system/docker.service | grep ExecStart
複製代碼
ExecStart=/usr/bin/dockerd --iptables=false -H fd:// --containerd=/run/containerd/containerd.sock

重新啟動DOCKER就可以了
  1. systemctl daemon-reload
  2. systemctl restart docker
複製代碼




運行以下命令以使用 CLI 儀表板監控節點的活動:

  1. docker exec -it storagenode /app/dashboard.sh
複製代碼

運行以下命令以查看硬碟使用狀況
  1. docker ps
複製代碼

參考文章




歡迎光臨 TShopping (http://www.tshopping.com.tw/) Powered by Discuz! X3.2