1. 程式人生 > >Grin v0.5在Ubuntu下的安裝和啟動

Grin v0.5在Ubuntu下的安裝和啟動

Grin和bitcoin一樣也是一種點對點的現金交易系統,但它通過零和驗證演算法,使得雙方的交易金額不會被第三方知曉,讓它在隱私保護方面更強。其官方的介紹是:

所有人的電子交易,沒有審查或限制。並提出它的三個特性包括:隱私( private )、可擴充套件( scalable )、開放的( open )

因此可以將Grin看作是一種改進了比特幣現有問題的新型加密貨幣。目前還在開發中,可以參與公測,計劃在2019年1月15日正式上線。

 

下面介紹如何在Ubuntu 18.04中安裝Grin v0.5,步驟大致有:安裝grin-node,啟動grin-node,建立錢包,安裝grin-miner,啟動grin-miner。其中grin-miner是用來挖礦的,可以通過安裝不同的外掛來選擇用cpu或gpu來挖礦。

 

1.安裝grin-node


有兩種方法,一種是直接使用編譯好的二進位制檔案,另一種是下載原始碼編譯安裝。   方法一: (1)下載編譯好的二進位制檔案 https://github.com/mimblewimble/grin/releases/download/v0.5.0/grin-v0.5.0-473188413-linux-amd64.tgz (2)解壓下載的tgz檔案
tar xvzf grin-v0.5.0-473188413-linux-amd64.tgz
mkdir grin-v0.5.0
mv grin grin-v0.5.0
/

方法二:

(1)安裝rust(當前最新的版本是1.31.1)

curl https://sh.rustup.rs -sSf | sh; source $HOME/.cargo/env

檢查是否安裝成功

rustc --version

(2)安裝編譯依賴包

apt install build-essential cmake git libgit2-dev clang libncurses5-dev libncursesw5-dev zlib1g-dev pkg-config libssl-dev llvm

(3)下載原始碼和編譯grin

git clone https://github.com/mimblewimble/grin.git
cd grin
cargo build --release

如果編譯失敗,檢視原因是許可權相關的錯誤,那麼檢查下當前使用者是否有對grin目錄的訪問許可權。如果沒有,就用下面的命令先添加當前使用者對目錄的訪問權,再重新編譯。

sudo chown -R $USER grin

 

2.啟動grin-node


 (1)生成配置檔案

切換到grin程式所在目錄,如果是通過原始碼編譯生成的,切換目錄為:(注:如果是直接下載的二進位制檔案,切換目錄為:cd grin-v0.5.0

cd target/release/
./grin --floonet server config

執行命令後,會在當前目錄下生成grin-server.toml配置檔案。

(2)修改配置檔案

vim grin-server.toml

enable_stratum_server = true

(3)啟動

./grin --floonet

 

 3.建立錢包

(1)初始化錢包 開啟一個新的終端,切換到grin程式所在目錄,之前執行的不要關閉。
./grin --floonet  wallet init

 執行後,會提示設定密碼,該密碼作為以後開啟錢包用,之後會生成一個wallet.seed檔案以及一串用於恢復錢包的隨機短語(recovery phrase),記好這個隨機短語,推薦用筆記錄到紙上,離線儲存。

(2)啟動

./grin --floonet  wallet listen

(3)檢視錢包

開啟一個新的終端,切換到grin程式所在目錄,同樣之前執行的不要關閉。

./grin --floonet wallet info

 

4.安裝grin-miner

(1)推薦配置

grin目前採用需要佔用大量記憶體資源的PoW演算法,用來規避現有的ASIC挖礦演算法,以達到短時間內去中心化的挖礦,之所以是短時間內是因為ASIC通過改造後就可以適配上這樣的演算法了,最終還是會以ASIC挖礦為主。

grin通過外掛形式支援CPU或GPU挖礦,如果用CPU挖礦,推薦使用5GB以上的記憶體。用GPU會比CPU快10~20倍,視訊記憶體推薦8GB以上。

 

(2)下載原始碼和編譯grin-miner

git clone https://github.com/mimblewimble/grin-miner.git
cd grin-miner
git submodule update --init
cargo build

 

 (3)啟動

cp grin-miner.toml target/debug/
cd target/debug
./grin-miner