0. 简介
Grin不多重复介绍了,近期很火的一个匿名币(https://grin-tech.org/),而且还能用CPU、GPU挖矿(N卡。目前似乎还不支持A卡),并且支持多个平台Linux、macOS等等。官网上说不支持Windows,但实际是可以跑的。下面是Windows 10上的部署过程小结。
1. 环境准备
1.1. WSL
Windows上用WSL来部署Linux的环境最为方便。在Microsoft Store中搜索Ubuntu即可安装。
注意!装完之后要修改一下注册表。不然因为这个内嵌的Ubuntu会带很多奇怪的Path,导致后面build会出问题,产生不了运行所需的plugin文件夹。
具体步骤是:运行regedit。在注册表项中,找到Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss
将Flag的值改为5
。
1.2. 安装所需要的安装包依赖
运行Ubuntu,新建用户名、并输入自己想要设置的密码
Grin是用rust编写的,安装好相关环境
sudo apt install -y curl git cmake zlib1g-dev pkgconf ncurses-dev libncursesw5-dev linux-headers-generic g++ libssl-dev
curl https://sh.rustup.rs -sSf | sh; source $HOME/.cargo/env
再安装好其他依赖
sudo apt install build-essential cmake git libgit2-dev clang pkg-config llvm
2. 部署grin或注册矿池
Grin节点也和其他区块链类似,可以自己部署也可以利用矿池。两种方式选一即可。
2.1. 部署运行Grin
如果要自己运行一个Grin节点,按照以下步骤:
sudo apt install build-essential cmake git libgit2-dev clang libncurses5-dev libncursesw5-dev zlib1g-dev pkg-config libssl-dev llvm
git clone https://github.com/mimblewimble/grin.git
cd grin
cargo build --release
target/release/grin
即为可运行文件
2.2. 矿池
目前也有一些Grin的矿池可以链接,不想自己运行Grin的话,可以注册一个。比较有名的是GRIN-Pool(https://mwgrinpool.com/)
点右上角Login后按提示注册即可。自己需要记住用户名和密码。
3. 部署grin-miner
另开一个Ubuntu的终端,输入:
git clone https://github.com/mimblewimble/grin-miner.git
cd grin-miner
git submodule update --init
3.1. 如果用CPU挖矿
检查你CPU是否支持avx2
cat /proc/cpuinfo | grep avx2 | wc -l
如果大于0,那么输入以下:
sed -i 's/^plugin_name =.*/plugin_name = "cuckaroo_cpu_avx2_29"/' grin-miner.toml
如果是多核,可以指定挖矿的核数(build后每次运行前也可以修改)
查看有多少个可用的CPU,并输入想使用的CPU数量
grep -c ^processor /proc/cpuinfo
printf "\nNumber of Processors: " && read nthreads && sed -i 's/^nthreads.*/nthreads = '$nthreads'/' grin-miner.toml
3.2. 如果用GPU挖矿
如果是N卡,可以用GPU挖矿
sed -i 's/^plugin_name =.*/plugin_name = "cuckaroo_cuda_29"/' grin-miner.toml
nvidia-smi
printf "\nGPU ID: " && read gpuid && sed -i 's/^nthreads =.*/device = '$gpuid'/' grin-miner.toml
然后输入nvidia-smi
运行后得到的Device ID
3.3. 使用的矿池的额外步骤
如果用的是矿池,还要额外配置一下矿池信息:
sed -i 's/stratum_server_addr.*/stratum_server_addr = "stratum.mwgrinpool.com:3333"/' grin-miner.toml
输入在矿池里注册的用户名和密码
printf "\nUsername: " && read username && sed -i 's/.*stratum_server_login.*/stratum_server_login = "'$username'"/' grin-miner.toml
printf "\nPassword: " && read password && sed -i 's/.*stratum_server_password.*/stratum_server_password = "'$password'"/' grin-miner.toml
3.4. build并运行
先build
cargo build --release
然后运行
./target/release/grin-miner
如果一切顺利,现在已经可以挖矿了;如果不顺利,那么我也不知道了。
参考资料:
https://github.com/mimblewimble/grin
https://github.com/mimblewimble/grin-miner
https://medium.com/@blade.doyle/cpu-mining-on-mwgrinpool-com-how-to-efb9ed102bc9
https://medium.com/@blade.doyle/gpu-mining-on-mwgrinpool-com-how-to-72970e550a27