使用服务器空闲的 CPU 资源挖矿

Mining Apr 22, 2018

这里介绍一下门罗币的挖矿方法。

门罗币钱包

首先你需要一个钱包用来保存你挖矿所得的币值,这里推荐使用门罗币官方钱包:https://mymonero.com

注册方式非常简单,点击首页的 Create an Account 进入到注册页面,然后将 Private Login Key 妥善保存,并且复制粘贴到下方的输入框中确认。

这个 Private Login Key 非常的重要,相当于你的账号密码,建议电子档纸质档各保存一份。以后登录钱包就是通过这个 Private Login Key 来的。

登录进自己账号,就可以看到自己的钱包地址了,这个地址在接下来配置挖矿程序的时候有用。

选择矿池

我个人试用过的矿池 xmr.nanopool.orgcoinfoundry.org/pool/xmr 都还行。nanopool 最低需要 0.3 XMR 才能支付,而 coinfoundry 只需要 0.1 XMR,如果你只是要用闲置的服务器运算资源挖矿,建议选择最低支付额较小的矿池,这样能够更频繁的收获。但是我试过一段时间的 coinfoundry,XMR 一直显示为零,所以又换回了 nanopool。还有一点就是因为几乎所有的矿池最低的支付额度至少是 0.1 XMR,也就是说,如果你的算力只有 100~300 H/s,那么很难真正的得到收益,毕竟这样的算力需要维持服务器运行大半年才能达到最低支付额度。

当然其他也有很多的矿池,自己选择咯。

最开始网上找教程的时候,看到有一篇文章推荐 MinerGate 这个站,然后扒了扒 SEO,据说这家会偷部分用户的运算成果,所以进入我的黑名单了。

矿池使用需要,一般矿池的网页上都有 About 、Support 或者 FAQ 之类的页面,点进去看看找到相应的 pool_address,比如 nanopool 的地址:

-----2018-04-22-13.01.02

挖矿程序

我选用的是 xmr-stak 这个开源程序。

手动编译

这里简单讲一下 Ubuntu 16.04 的编译方法,其他系统在这个页面 https://github.com/fireice-uk/xmr-stak/blob/master/doc/compile.md 有详细的说明。

# 安装依赖
sudo apt install libmicrohttpd-dev libssl-dev cmake build-essential libhwloc-dev
git clone https://github.com/fireice-uk/xmr-stak.git
mkdir xmr-stak/build
cd xmr-stak/build

cmake .. 
# 如果没有Nvidia或者AMD或者Intel显卡的机器,用下面的命令关掉 CUDA 和 OpenCL 加速支持
# cmake .. -DCUDA_ENABLE=OFF -DOpenCL_ENABLE=OFF
make -j8
# make install

编译完成之后,直接运行 xmr-stak 程序,会有引导环节来帮助你创建配置文件。

  1. Do you want to use the HTTP interface? // 如果你需要web界面查看挖矿的数据,这里输入一个端口号
  2. Please enter the currency that you want to mine // monero7
  3. Pool address: e.g. pool.usxmrpool.com:3333 // 矿池地址,比如 stratum+tcp://xmr.coinfoundry.org:3132
  4. Username (wallet address or pool login) // 不同矿池的配置有点不一样,比如 coinfoundry 可以 WALLET_ADDRESS.WorkerName 这样的方式来定义,WorkerName 用来定义每一个挖矿程序的名字,如果你有多个服务器多个挖矿程序同时在运行,这样有助于区分
  5. Password (mostly empty or x) // 为空不用输入
  6. Rig identifier for pool-side statistics (needs pool support). Can be empty
  7. Does this pool port support TLS/SSL? Use no if unknown. (y/N) // 有些矿池支持 tls/ssl 有些不支持,具体情况具体来配置
  8. Do you want to use nicehash on this pool? (y/n) // 是否使用 nicehash
  9. Do you want to use multiple pools? (y/n) // 是否使用多个矿池

如果出现 MEMORY ALLOC FAILED: mlock failed 这样的错误,可以运行这一条命令解决 sudo sysctl -w vm.nr_hugepages=128。另外,请使用 root 权限运行程序。

捐助支持 animeloop.org

最近开始尝试跑挖矿程序是因为,近半年来运行 Animeloop 这个网站,租用了一个独立服务器,但是大部分时间 CPU 使用都是处于空闲状态,所以干脆挖点币回点血。

如果你有空闲的 cpu 资源,不妨帮助我一起挖门罗币,用来支持 animeloop.org 网站的运行。

你可以使用 cpulimit 来限制挖矿程序的 cpu 使用率,或者是修改 cpu.txt 配置文件,只用部分 CPU 核心挖矿。比如限制程序只占用大约 50% CPU, cpulimit -l 50 ./bin/xmr-stak

修改 pools.txt 文件帮助我们加快挖矿速度:


/*
 * pool_address    - Pool address should be in the form "pool.supportxmr.com:3333". Only stratum pools are supported.
 * wallet_address  - Your wallet, or pool login.
 * rig_id          - Rig identifier for pool-side statistics (needs pool support).
 * pool_password   - Can be empty in most cases or "x".
 * use_nicehash    - Limit the nonce to 3 bytes as required by nicehash.
 * use_tls         - This option will make us connect using Transport Layer Security.
 * tls_fingerprint - Server's SHA256 fingerprint. If this string is non-empty then we will check the server's cert against it.
 * pool_weight     - Pool weight is a number telling the miner how important the pool is. Miner will mine mostly at the pool 
 *                   with the highest weight, unless the pool fails. Weight must be an integer larger than 0.
 *
 * We feature pools up to 1MH/s. For a more complete list see M5M400's pool list at www.moneropools.com
 */
 
"pool_list" :
[
        {"pool_address" : "xmr-us-west1.nanopool.org:14433", "wallet_address" : "49HF9McSSsY3w93VuTgY3TPX8EUCeB8HgAdpvgfqnfiS15VV9jFaBhhBpfDciaFbcdCRBw5S3GjNv8LFP1JCXLF15fUg1zf.<DonationWorker>/shincurryyang@gmail.com", "rig_id" : "", "pool_password" : "", "use_nicehash" : false, "use_tls" : true, "tls_fingerprint" : "", "pool_weight" : 1 },
],

/*
 * Currency to mine. Supported values:
 *
 *    aeon7 (use this for Aeon's new PoW)
 *    bbscoin (automatic switch with block version 3 to cryptonight_v7)
 *    croat
 *    edollar
 *    electroneum
 *    graft
 *    haven
 *    intense
 *    karbo
 *    monero7 (use this for Monero's new PoW)
 *    sumokoin (automatic switch with block version 3 to cryptonight_heavy)
 *
 * Native algorithms which not depends on any block versions:
 *
 *    # 1MiB scratchpad memory
 *    cryptonight_lite
 *    cryptonight_lite_v7
 *    # 2MiB scratchpad memory
 *    cryptonight
 *    cryptonight_v7
 *    # 4MiB scratchpad memory
 *    cryptonight_heavy
 */

"currency" : "monero7",

注意修改一下配置文件里的 <DonationWorker> 变量,改为能辨识你身份的名字。

-----2018-04-21-19.04.49

Tags

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.