Build your own Ethereum Mining Rig, part 2: Linux Setup

In this second installment of our DIY Ethereum mining guide, we’ll look at how to install and configure Linux to setup your rig as an automated, remotely-manageable appliance. Don’t be dissuaded if you’ve never used Linux before—our step-by-step guide makes it simple!

Why Linux over Windows? First, it’s free—and saving ~$100 on the operating system is a big plus when you’re trying to maximize profitability. Other reasons include lesser hardware requirements (Linux is perfectly happy running from a USB stick plugged into ancient hardware!), simpler remote administration capabilities, and oftentimes better stability. The downside of running Linux is that video driver support isn’t on the same level as Windows, and things like GPU undervolting are trickier (but still possible via BIOS mods).

If you missed the hardware portion of our guide, make sure to check it out first. Otherwise, read on.

Build an Ethereum Mining Rig, part 2:  Linux Setup

The following is heavily adapted from my original 2013 Litecoin mining guide, updated for the latest Xubuntu LTS version, the new AMDGPU-PRO drivers, and necessary ethereum mining software (all up-to-date as of 11/29/2017). If you’re a bit nervous because you’ve a complete Linux newbie, don’t be. Simply follow the step-by-step instructions exactly as they’re written, and you’ll be fine. Even if you’ve never done anything like this before, you should be up and running in roughly an hour.

Step 1: Configure BIOS settings

Before we even get to Linux, let’s take a minute to make sure that your mining computer’s BIOS settings are in order. Power on your computer, and press the “delete” key a few times immediately after power on. You should end up in the BIOS configuration area. Do the following, then save & exit:

  • Change power options so that the computer automatically turns itself on whenever power is restored. The reason for this is two-fold: first, it’ll make sure that your miner automatically starts up after a power outage. Second, it makes powering the computer on much easier if you don’t happen to have a power switch connected to the motherboard.
  • Make sure that your USB stick is first in the boot-up order (you may need to have a USB stick attached).
  • Disable all components that you don’t plan to use. This may save a little bit of power, and since your miner will likely be running 24/7, it’ll add up. For me, that meant disabling onboard audio, one of the SATA controllers, the USB 3.0 ports (I only had a 2.0 USB stick), the Firewire port, and the serial port.
  • If you’re running a lot of GPUs (4+), additional tweaks might be necessary to ensure that they’re all recognized by the OS. Exact tweaks vary by motherboard, but setting the PCIe speed to Gen1 is usually a good place to start. No need to change anything now, but make a mental note that you may need to come back and play around a bit if all of your GPUs don’t show up in the OS later.

Step 2: Install Xubuntu Desktop on your miner

Xubuntu is a lightweight version of Ubuntu, a popular Linux distribution. Most other distros should work just fine, but be aware that the GPU drivers require the presence of Xorg, which means server distros that don’t have a GUI will not work properly.

  • Xubuntu 16.04.3 is the latest LTS release at the time of this guide, so that is what I recommend you use. You can download it here.
  • You’ll need to either write the installation ISO image to a USB stick (highly recommended), or burn it to a DVD. If you use a DVD, you’ll need to temporarily hook up a DVD drive to your mining rig for the installation (make sure you temporarily enable your SATA controller if you disabled it in step 1!).
  • Once you have the installation media prepared, you’re ready to install Xubuntu to your miner’s boot device (whether it’s an SSD, mechanical harddrive, or another blank USB stick). Boot using your new installation media (make sure it’s first in your miner’s BIOS boot order list). The Xubuntu installer should appear.
  • Follow the prompts, and make sure to click the “auto-login” box on the last step of the installer (otherwise, all of the default options are fine).
  • When the installation is complete, you should automatically boot into the Xubuntu desktop. Make sure to remove your installation media.

Step 3: Install SSH and package updates

At the Xubuntu desktop, press CTRL+ALT+T to open a terminal window.

  • Install SSH by typing:
    sudo apt-get install openssh-server

With SSH installed, you can unplug the keyboard/mouse/monitor from your miner, and complete the rest of the installation from your desktop computer. Simply download Putty onto your desktop, run it, and enter the IP address of your mining rig (type ifconfig at the Xubuntu terminal to find your miner’s address if you don’t know it—it will probably look like 192.168.0.x). That should bring up a remote terminal session to your miner, which is more or less just like sitting at the keyboard in front of it.

If you plan to manage your mining rig remotely over the internet, you’ll need to forward port 22 on your router to your miner. Make sure that you use a strong Xubuntu password!

Setup should be pretty quick from this point, as now you can simply copy text from this webpage (highlight it and press CTRL+C) and then paste it into your Putty session by simply right-clicking anywhere inside the Putty window. I highly recommend that you complete the remainder of the guide in this manner, as it eliminates the risk of typos!

  • Install package updates by typing (or copying & pasting via right-click into Putty) the following command:
    sudo apt-get dist-upgrade

Step 4: Install AMDGPU-PRO drivers

Next up, we’ll install AMD’s video drivers. AMD has special blockchain compute drivers available for mining that give far superior performance compared to their standard drivers, so that’s what we’ll be using (version 17.40, which is the latest as of 11/29/2017).

  • Type the following commands (press “enter” and wait for the operation to complete at the end of each line):
    cd ~/Downloads
    wget --referer=http://support.amd.com https://www2.ati.com/drivers/linux/beta/ubuntu/amdgpu-pro-17.40-483984.tar.xz
    tar -Jxvf amdgpu-pro-17.40-483984.tar.xz
    cd amdgpu-pro-17.40-483984
    ./amdgpu-pro-install -y
  • Some of these steps may take a minute or two to complete. When the installation is complete, type the following:
    sudo usermod -a -G video $LOGNAME
  • Next we need to install and configure the ROCm component:
    sudo apt install -y rocm-amdgpu-pro
    echo 'export LLVM_BIN=/opt/amdgpu-pro/bin' | sudo tee /etc/profile.d/amdgpu-pro.sh
  • Finally we need to enable large page support, which will dramatically improve mining performance. Type the following to open your grub file in nano for editing:
    sudo nano /etc/default/grub
  • Find the line that reads GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”. Modify it to:
    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash amdgpu.vm_fragment_size=9"
  • Save the file and quit nano by pressing CTRL+X and then answering (Y)es to save the changes. When you’re finished, update grub and reboot:
    sudo update-grub
    sudo reboot

The final command will reboot your rig, which will cause you to immediately lose your SSH (Putty) connection. Wait a few seconds to give the computer a chance to boot, and then re-establish a new connection via Putty, and re-login.

Step 5: Install Ethereum software

(Note: you may skip step 5 entirely if you already have an ethereum wallet address that you intend to use!)

Next up, we’ll install the Ethereum software that will let us create a new wallet address. We’ll need this to store the coins we receive from mining.

  • Type the following to install the necessary ethereum packages:
    sudo add-apt-repository ppa:ethereum/ethereum
    sudo apt-get update
    sudo apt-get install ethereum geth
    
  • Now it’s time to create your Ethereum wallet address:
    geth account new

You’ll be prompted to enter a password, and then to confirm it (use a strong password!). The output will be a long string between two curly braces { }. That’s your new wallet address—make a note of it (highlight it within Putty to copy it to your clipboard).

Important: The combination of the password you just used to create this address *and* the associated encrypted key file is what gives you control over your new wallet address. If you lose either of these, you’ve also lost control of your wallet and all of the coins associated with it—and there is literally nothing that anyone will be able to do to help you. Remember your password, and keep multiple backups of your key file(s)!

Your key file(s) are stored in the ~/.ethereum/keystore directory. Copy the entire /keystore folder someplace safe to backup your wallet (backups are covered in more detail heredon’t forget to make multiple backups and keep them in a secure offline location!).

If you forget your wallet address, you can type geth account list to see your addresses and the location of their key files.

Step 6: Install Claymore’s Ethereum miner

There are several options as far as mining software, and I’ve experimented with all of the popular ones. I think Claymore’s miner is the best option, even if it does have two fairly significant downsides: it’s closed-source, and it’s not free (~1% of your mining time benefits the creator of the miner).

Two alternatives are the stock ethereum miner (ethminer) and Genoil’s fork of the stock miner. They’re both open-source and free, but they have pretty crippling downsides.

The stock ethminer is much slower than Claymore’s miner (by a margin of over 5% on my test rig). In addition, ethminer creates the Ethereum DAG file on disk instead of in GPU memory, which is slow and uses a lot of space (and if you’re running off a USB stick, all those writes may eventually wear it out).

Genoil’s fork seems to be nearly as fast as Claymore’s, and it doesn’t use physical disk space for the DAG, but it’s not stable (at least not for me). It often crashes, especially on startup (whereas I have yet to see a single crash on Claymore’s miner after nearly a week of full-time mining). The author abandoned development months ago, so improvements are unlikely.

So, explanation aside, here is how to setup Claymore’s miner:

  • First return to your downloads directory and grab the latest version (10.2 as of 11/29/2017). I’m pulling the file directly from the author’s Google Drive repository, if the link is broken check here for a newer release or updated link):
    cd ~/Downloads
    sudo apt install curl
    curl -L -o claymore_10.2_miner.tar.gz https://drive.google.com/uc?id=1t25SK0lk2osr32GH623rR8aG2_qvZds9
    
  • Then create a new directory for it, and unpack it there:
    sudo mkdir /usr/local/claymore10.2
    sudo tar -xvf claymore_10.2_miner.tar.gz -C /usr/local/claymore10.2
    
  • Then let’s head over to the installation directory and create a startup script. Note that commands 2-5 below just clean up the installation directory a bit by removing an intermediary directory that was included in the original tar archive:
    cd /usr/local/claymore10.2
    cd Clay*
    sudo mv * /usr/local/claymore10.2
    cd ..
    sudo rm -r Clay*
    sudo chown root:root ethdcrminer64
    sudo chmod 755 ethdcrminer64
    sudo chmod u+s ethdcrminer64
    sudo nano mine.sh
    
  • Nano will open a new blank text file; enter the following into it:
    #!/bin/sh
    export GPU_MAX_ALLOC_PERCENT=100
    ./ethdcrminer64 -epool eth-us-east1.nanopool.org:9999 -ewal YOUR_WALLET_ADDRESS/Miner01 -epsw x -mode 1 -allpools 1 -tt 68
    

    Where it says YOUR_WALLET_ADDRESS, use the address you created in step 5 (you’ll need to put “0x” in front of it). The “Miner01” following your address can be changed to any friendly label that you want to give your miner (only important if you plan to run multiple rigs). It’s easiest to copy the last line from my guide into something like notepad, then replace YOUR_WALLET_ADDRESS with your actual address there, and then copy the finished line into putty via right-click to get everything into nano without typos.

  • Save the file and quit nano by pressing CTRL+X and then answering (Y)es to save the changes, then enter the following to give your new script execute permission:
    sudo chmod +x mine.sh

Note that I’m using nanopool.org as the mining pool here. I’ve tried a few, and it seems to be a top pick, but feel free to pick your own pool. Most don’t require registration, and simply payout to whatever wallet address you supply whenever a certain threshold is met (usually whenever you accumulate 1+ ETH). Assuming you stick with Nanopool, you’ll be able to check on your miner’s status by going to this URL after you start mining: https://eth.nanopool.org/account/[YOUR WALLET ADDRESS]

  • Now is a good time to test things. You can fire up your miner by typing:
    ./mine.sh

You should see the Claymore miner start up. It’ll take a minute or two before it actually starts mining, but it should get there eventually. When you see a scrolling log of outputs that includes non-zero hashrates (expect hashrates in the low to mid 20s for unoptimized GPUs), you’re good to go. If the script fails to start, or you see errors, make sure that you’ve created the script exactly as outlined in the guide.

Press CTRL+C to exit the miner when you’re satisfied that it’s working.

Step 7: Create auto-start scripts

We’re almost done! We want to set up our rigs automatically start mining whenever the rig is powered on. That way, we keep mining losses to a minimum whenever a power outage occurs, and we don’t have to worry about manually starting it back up in other situations.

  • First, install screen:
    sudo apt install screen
  • Then type the following to create a new script in your home directory and open it in nano:
    cd ~
    sudo nano miner_launcher.sh
  • Enter the following text into the editor (substitute your actual Xubuntu username for YOUR_XUBUNTU_USERNAME where necessary!):
    #!/bin/bash
    DEFAULT_DELAY=0
    if [ "x$1" = "x" -o "x$1" = "xnone" ]; then
       DELAY=$DEFAULT_DELAY
    else
       DELAY=$1
    fi
    sleep $DELAY
    cd /usr/local/claymore10.2
    su YOUR_XUBUNTU_USERNAME -c "screen -dmS ethm ./mine.sh"
  • Save and quit nano (CTRL+X), and then type:
    sudo chmod +x miner_launcher.sh
  • Now we need to call our new script during startup; we do that by adding it to /etc/rc.local. Type the following to open /etc/rc.local in nano:
    sudo nano /etc/rc.local
  • Add the following text, right above the line that reads “exit 0” (substitute your own username!):
    /home/YOUR_XUBUNTU_USERNAME/miner_launcher.sh 15 &

Then save and quit out of nano (CTRL+X).

Step 8: Create an alias to easily check on the Claymore miner process

We’re essentially done at this point, but you’ll probably want to manually SSH into your miner from time to time to manually check on your hashrates & GPU temperatures, etc. Creating an alias will make that easy.

  • Type:

    sudo nano .bashrc
  • Scroll to the end of the file, and then add this text above the line that reads “# enable programmable completion…”
    alias miner='screen -x ethm'
  • Save and quit out of nano.

That’s it—you’re done! You’ll probably want to run a full test now. The easiest way to do that is to close your Putty session and power down your miner. Turn it back on and the following should happen:

  1. Your miner should boot into Xubuntu. This may take up to a minute, depending on the speed of your boot device (it’ll be much faster on an SSD).
  2. 15 seconds after Xubuntu has loaded, the Claymore miner will automatically start and begin mining. You might notice the fans on your GPUs spin up a bit when this happens.
  3. You should be able to SSH into your miner at any time and type miner to monitor the miner’s process. To close the screen (but keep the miner running), press CTRL+A, then CTRL+D.
  4. If you ever need to start the Claymore miner manually (because you quit out of it, or kill it, etc), simply type ~/miner_launcher.sh

(update 1/15/2018: **IMPORTANT** please read this if your hashrate is lower than expected!) 

Output from a single budget RX 470 at stock settings running Claymore’s ETH miner. You should see something like this when connecting to your rig via SSH and running your “miner” alias.

Congratulations—you have your own headless linux ethereum miner!

The next section of this guide covers setup under Windows, and then we’ll take a look at optimizing miner settings for better performance.

You can leave a response, or trackback from your own site.

793 Responses to “Build your own Ethereum Mining Rig, part 2: Linux Setup”

  1. countwalkerj says:

    THANK YOU VERY MUCH!!!! This is so awesome. I’ve been hunting around for days now trying to find the mysterious blockchain/mining AMD driver for linux and finally found it on your updated page. I see you just updated it yesterday so you might not be aware there is just one little thing missing. After you change the grub file (but before you reboot), you have to do… sudo update-grub. I found that out when it didn’t work for me at first and then I read the notes on the AMD support site. I don’t think your page had the update-grub step.

    After I updated grub, rebooted, and started up Claymore 10.2 I’m not getting 25Mh/s per card! Before this the DAG epoch increases were pushing me down to 20Mh/s.

    20% performance increase!!

    That’s so awesome. Thanks for your clear instructions. It’s a huge help. Will gladly donate to your site if you put a PayPal link on there.

    • CryptoBadger says:

      Oops, thanks for pointing out that I was missing the update-grub call! Just fixed it.

      Glad to hear that the update boosted your performance – I saw similar gains on my own rig. As for donations, I accept and appreciate cryptocurrency tips at these addresses, but they’re certainly not necessary. Happy mining!

  2. TheShaman says:

    Can not install with “sudo apt install -y rocm-amdgpu-pro”
    Is it already moved to other package ?

    Getting “E: Unable to locate package rocm-amdgpu-pro” error.

    May because of this , getting max 20mh/s 🙁

  3. Justsomeguy says:

    I’m not able to get my startup script to work for some reason. Will these steps work for Ubuntu 16.04 LTS as well? I also noticed that sending the command “miner” when I PuTTy into my machine does not return anything.

    Here is my startup script:

    #!/bin/bash
    DEFAULT_DELAY=0
    if [ “x$1” = “x” -o “x$1” = “xnone” ]; then
    DELAY=$DEFAULT_DELAY
    else
    DELAY=$1
    fi
    sleep $DELAY
    cd /usr/local/claymore10.2
    su miningrig -c “screen -dmS ethm ./mine.sh”

    Here is what’s in my alias file:

    if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
    fi

    alias miner=’screen -x ethm’

    # enable programmable completion features (you don’t need to enable

    • Zelda says:

      Before the su miningrig -c “screen -dmS ethm ./mine.sh” line, try inserting a line like:
      echo “Test” > /some/path/to/file

      That way you can see if rc.local script runs during startup. If so, something might be wrong with the su/screen command. If not, focus on fixing rc.local execution.

  4. northam says:

    Awesome, man. Thanks! It’s up and running, though took me almost a day. I spend 2+ hours on making a bootable Xubuntu only, experimenting with different flash drives and switching between Windows and MacOS. And then 16Gb flash drive on installed Xubuntu on mining rig ran out of space! Please recommend 32Gb to people.
    Nice job, overall!

  5. awdmesh says:

    I updated my drivers awhile back, they make a big difference. One thing I’d like to mention is there’s a fork of ethminer for AMD cards called goober-miner. Last night I compiled it for Linux using the Master branch and on my AMD 570 cards I get just as much if not faster MHs than Claymore (27.8 bios mod + memory OC).

    On top of that, I use the normal Ethminer with CUDA support in a separate .sh file to run my 1 1060 3GB card which also gets more speed than Claymore (22.3MHs).

    So I modified the miner_launcher.sh file to include this,

    su miner2 -c “screen -dmS ethm2 ./mine2.sh”

    updated my alias file and made a mine2.sh file like this,

    #!/bin/sh

    export GPU_FORCE_64BIT_PTR=1
    export GPU_MAX_HEAP_SIZE=100
    export GPU_USE_SYNC_OBJECTS=1
    export GPU_SINGLE_ALLOC_PERCENT=100
    export GPU_MAX_ALLOC_PERCENT=100
    ./ethminer-old –farm-recheck 200 -SC 2 -RH -S us2.ethermine.org:4444 -FS us1.ethermine.org:4444 -O XXXXXXXX.miner2old -U

    You’ll notice it’s used to activate just the Nvidia card using the latest ethminer from the official site, while mine.sh runs the same content except that it activates the forked ethminer (which is ehtminer+claymore kernels) for the AMD cards. I should also point out this incurs no dev fees or mining on someone elses pools as long as you compile the forked ethminer yourself or use the –i-suck or whatever it is command to deactive the fees.

    So far so good.

  6. Derick Lin says:

    Would you share how to do it for “NVIDIA” special of Step 4 as below as:

    Finally we need to enable large page support, which will dramatically improve mining performance. Type the following to open your grub file in nano for editing:
    sudo nano /etc/default/grub
    Find the line that reads GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”. Modify it to:

    ***GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash amdgpu.vm_fragment_size=9″

    Save the file and quit nano by pressing CTRL+X and then answering (Y)es to save the changes. When you’re finished, update grub and reboot:
    sudo update-grub
    sudo reboot

  7. SpicyOToole says:

    Thank you so much, this new update brought my GPU’s mh/s up 15/20% across the board. Two notes:

    1. GPU temps are running much hotter, sometimes 79c under this new guide as opposed to 69c under the old guide. Is this because of the new driver? Is it normal? And recommendations?
    2. I get a string of “Failed to set new fan speed, check in miner has root access!” lines in the mining screen. The miner seems to run without a hang, but that line doesn’t give me the warm and fuzzy’s. I have done this install on 2 miners with the same results.

    • countwalkerj says:

      The failed to set fan speed might be an issue with the latest Claymore install. I had the same thing and realized it was because I had the -tt (or something like that) flag as part of my ethdcrminer command. I removed that -tt flag and the error went away.

      HTH

      • SpicyOToole says:

        Did fixing the line improve fan speed and gpu temp or did it just remove the error. I am not used to my equipment running so hot.

        • countwalkerj says:

          Interesting… Looks like Claymore 10.2 has an issue with fan control. When I was I running 10.0 the fan speeds changed along with the temperature. For some reason 10.0 is not doing that. I have read others saying that you have to run it as root. Not just sudo run-miner.sh but actually sign-in as root and run your miner script. I haven’t tried that yet because my temperatures are okay due to using an external fan to keep things cool. I’m just noticing that my fan speed percentage never goes over 16% whereas it would go from 22% to 42% previously (give or take a couple percentages).

          Try running as root?

          HTH

          • SpicyOToole says:

            Running as root didn’t help anything. Still throwing the same errors and running hot. RX 470s used to run 70C and now run 80-83c. RX 570’s run 72-75c.

            Does anyone have the old guide archived in case I need to revert systems?
            Hope this gets patched soon. Great hashrate but not at the cost of the hardware.

          • SailorMoobs says:

            give this a try, this resolved the temp/fan speed errors for me:

            sudo chmod 755 /usr/local/claymore10.2

          • SpicyOToole says:

            It didn’t do the trick. GPU fan speeds still showing an error message. I even redid step 6 to make sure I didn’t miss anything. Really hope CryptoBadger can get to the bottom of this error message.

          • countwalkerj says:

            I actually just resolved this for myself yesterday…

            You haven’t provided the error message you’re getting, but I’m assuming it’s the same problem I had. The heart of the issue being that the ethdcrminer64 executable is not owned by root. You may need to issue a command like the following:

            sudo chown root:root ethdcrminer64

            I also had to make sure the permissions were set to 755 instead of 775. To do that I did:

            sudo chmod 755 ethdcrminer64

            You will probably have to redo the command given in the guide that adds the +s to it.

            Once you are done it should look like this when you see the file listed…

            -rwsr-xr-x 1 root root 67248 Dec 22 2016 ethdcrminer64

            Once I did the above the fan control started working for me again.

            HTH

          • CryptoBadger says:

            Thanks for the info! I had a rig here with the fan speed issue that I haven’t had much time to research, but I just tried this and everything is working properly again. Updated my guide with the extra commands!

  8. Patas007 says:

    How to check from local machine the wallet balance?

    After pool paid I can check on URL https://etherscan.io/address/0x that there is 0.05ETH

    On other machine where I have original copy of the keystore I run command “geth console” and in geth’s console “web3.fromWei(eth.getBalance(eth.coinbase), “ether”)” I got 0 (zero)

    What I’m doing wrong?

  9. Leonis Smith says:

    The LINUX part of this guide is nearly worthless, since it does not include any information about Fan Speed Control (CRITICAL) or core clock / memory clock setting or how to undervolt.

    • JustSomeGuy says:

      ^^ This. I would LOVE to know how to do all of this. Right now my fans are running anywhere between 40% and 90% based on the temperature. I was finally able to get my miner root access so I could at least control the temperature limit, but I would love some guidance on how to optimize these through the miner instead of through Windows as shown in step 4 of the guide. I don’t have access to a windows drive and don’t want to pay money just for that optimization yet.

    • Mitchell says:

      For fan control, this works for me:

      https://github.com/DominiLux/amdgpu-pro-fans

      • Leo Smith says:

        The information in part 4 is WINDOWS specific, as the tools specified DO NOT EXIST FOR LINUX.

        DO try reading what I post before you give a totally worthless reply in the future.

    • Anonymous says:

      lol, the most comprehensive and in-depth mining guide on the web is “nearly worthless” because you can’t find what you’re looking for. all of the stuff about clock speeds and undervolting is in part 4 of the guide, genius!

  10. Mitchell says:

    My rig refuses to shut down correctly, and will hang without fully shutting down. Any thoughts?

  11. Kevin says:

    Hi guys,

    I’m getting this error:

    ����������������������������������������������������������������ͻ
    � Claymore’s Dual ETH + DCR/SC/LBC/PASC GPU Miner v10.2 �
    ����������������������������������������������������������������ͼ

    ETH: 1 pool is specified
    Main Ethereum pool is eth-us-east1.nanopool.org:9999
    AMD OpenCL platform not found
    No NVIDIA CUDA GPUs detected.
    No AMD OPENCL or NVIDIA CUDA GPUs found, exit

    Can’t figure out what the problem is.

    Any suggestions?

    • Zelda says:

      The Claymore software isn’t finding the cards. If you’re on Windows, use Device Manager to make sure the cards are visible and ready to go. If you’re on Linux, use lspci command to make sure they’re visible. Most likely issue is bad device driver installs for your GPUs. Happy mining!

  12. Jacob Neubaum says:

    Hey, I have my rig all setup and mining and found this guide very useful. I see the folder with my private key and my address. This may be a novice question, but when it comes time to withdraw my funds, how will I use these to access my actual wallet’s funds. Where/how can my physical wallet be viewed? Thank you.

    • countwalkerj says:

      This is a very important question. Make sure you do you research and self-education on this so you don’t just take my word for it. However, having said that, I’ve tried a few things and so far the MEW (MyEtherWallet) is by far working the best. Very simple to setup and use.

      Again, do you own research to make sure you know the concepts behind it. Keep your private key private. Back it up multiple times, etc.

      Lots of good information at the myetherwallet site to help you on your way.

      HTH

  13. gadiminas says:

    I am trying to use AMD and nVidia cards in my rig. Claymore miner finds only AMD cards (if I boot my rig only with nvidia card then averything works ok).

  14. mike says:

    Question, I followed all the steps and everything worked fine. I was just testing with one GPU at the time. When installing the graphics driver my OS became headless as expected. When adding a second card gui seems to have came back. Why? and how important is it performance wise to run in headless mode? and how do I change it back to headless? I tested mining with the second card and claymore recognizes both GPU’s. Please help me understand what is going on

  15. Glad Poenaru says:

    Finally we need to enable large page support, which will dramatically improve mining performance. Type the following to open your grub file in nano for editing:
    sudo nano /etc/default/grub
    Find the line that reads GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”. Modify it to:
    GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash amdgpu.vm_fragment_size=9″
    Save the file and quit nano by pressing CTRL+X and then answering (Y)es to save the changes. When you’re finished, update grub and reboot:
    sudo update-grub
    sudo reboot

    after doing the grub update my computer reboots and gets stuck with a black screen.

  16. cjclm7 says:

    Congratulations, it is a very good and useful guide.

    Just is missing the fan control that is not working at all. The fan on my RX580 keep very low speed and obviously the temperature rises.

    • Patas007 says:

      You can use your wallet you created via geth also on MyEtherWallet. Just tested to send a few ETH to my Coinbase wallet. I took a couple of minutes. No need any other registration.
      1. go to https://www.myetherwallet.com/#view-wallet-info
      2. select Keystore / JSON File
      3. provide your keystore file (you created via geth)
      4. provide your password
      5. choose target wallet + ammount you want to send
      6. send & confirm
      Thant’s it so simple and I was searching for the transfer details for several days too 🙂
      Big thanks to one who mentioned MyEtherWallet here!

  17. SteveinBC says:

    Last summer, I followed the instructions for the Linux setup. Works great. However I’m having trouble moving Ether out of the wallet set up using Geth. Can someone let me know how to move it out of the Geth generated wallet on to an exchange? And a little extra for CryptoBadger who deserves a tip?

    • countwalkerj says:

      Another poster asked a very similar question yesterday or the day before. I recommend MEW (My Ether Wallet). Both for information and it’s functionality. Do your own due diligence no matter what you decide to do.

      HTH

    • Patas007 says:

      I replied your question above 🙂 sorry

  18. Patas007 says:

    Be patient when using Claymore’s Dual miner. Somebody reports possibility of exploit in the code here https://github.com/nanopool/Claymore-Dual-Miner/issues/156 only a couple of hours ago. Of course it can be false alarm but …

  19. Patrick says:

    Thanks, @Cryptobadger, for the guide!

    I’ve run into an issue the installing Openssh-Server. I (believe) I’ve followed instructions in your guide to the letter, but after typing in “sudo apt-get install openssh-server”, it comes up with “some packages could not be installed. this may mean that you have requested an impossible situation or if you are using the unstable disctucbution that some required packages have not yet been created or been moved out of Incoming.

    The following packages have unmet dependencies:
    openssh-server : depends: openssh-client (= 1:7.2p2-4ubuntu2.1) but 1:7.2p2-4ubuntu2.2 is to be installed
    Depends: openssh-stft-server but it is not going to be installed
    Recommends: ncurses-term but it is not installable
    Recommends: ssh-import-id but it is not installable
    E: Unable to correct problems, you have held broken packages”

    Any ideas what’s going on with this? Much appreciated!

  20. ctuprde says:

    The only issue i’ve had with this is i get

    Failed to set new fan speed, check if miner has root access

    Any ideas how to resolve?

    • PdeW says:

      same problem here. Would very much like to know what to do. My fans are spinning at near 100% while the temp is only about 50 degrees.

    • PdeW says:

      When I used the param -tt -80 as suggested in the readme, it also gave me the red message to check if I have the privileges to do that. However, I now changed it to -tt 60 to set the temp and the second param -fanmax 80 to set the max speed. This worked!

  21. northam says:

    X-windows won’t boot (and won’t start the miner) if there are problems with drivers on multiple GPUs. I have this issue if I connect more than 7 GPUs. GPU driver issue can be ignored by OS if X-windows are disabled during boot time. I would add this info into your guide.

  22. nix says:

    First thanks for taking the time to put this together. works perfect to get a rig online in no time.

    I am however running into an issue with claymore only using a single GPU, though when running shows GPU0 and GPU1 see below.

    ETH: GPU0 11.142 Mh/s
    GPU0 t=74C fan=53%, GPU1 t=37C fan=18%

    any thoughts on how to mine using both? I have searched all over and tried many command line options with no luck.

    lspci shows all the cards with AMD pro driver but claymore just starts only seeing one

    AMD Cards available: 1
    GPU #0: Ellesmere, 4776 MB available, 36 compute units
    GPU #0 recognized as Radeon RX 480/580
    POOL/SOLO version
    GPU #0: algorithm ASM
    No NVIDIA CUDA GPUs detected.
    Total cards: 1
    AMD ADL library not found.

    any thoughts / suggestions greatly appreciated.

  23. tw0 says:

    Im stuck on this… I get:

    ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ͻ
    ▒ Claymore’s Dual ETH + DCR/SC/LBC/PASC GPU Miner v10.2 ▒
    ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ͼ

    ETH: 1 pool is specified
    Main Ethereum pool is eth-us-east1.nanopool.org:9999
    AMD OpenCL platform not found
    No NVIDIA CUDA GPUs detected.
    No AMD OPENCL or NVIDIA CUDA GPUs found, exit

    However lspci shows:

    01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480/570/580] (rev ef)

    Am I missing a package or something?

  24. John Green says:

    Having this similar issue:

    No AMD OPENCL or NVIDIA CUDA GPUs found, exit

    I have two gigabyte Tadeon r9 270.

    Any help would be greatly appreciated!

    • QuintLeo says:

      You need to use the Catalyst 15.12 drivers with those cards, as the AMDGPU-PRO drivers do not support them AFAIK (yet, if at all).

  25. shawhin says:

    I was wondering, once i create the wallet address with geth, and mine ethereum, how do i get to a point of checking my balance on my local wallet on my server i created? do i have to to dowload the entire blockchain to sync the transaction? any instructions on how to check the balance and send it to an exchange?

    • northam says:

      You will have a confirmation link on your wallet’s Nanopool.org page under Payment tab.

    • Patas007 says:

      To check your wallet balance you can check online https://etherscan.io/address/0xHERE_PUT_YOUR_WALLET You will see zero there until your pool send you something.

      To send it to another wallet you do not need to run your own synchronized node. You can use any free service. I’ve good experience with MyEtherWallet. It does not require any registration.
      1. go to https://www.myetherwallet.com/#view-wallet-info
      2. select Keystore / JSON File
      3. provide your keystore file (you created via geth)
      4. provide your password
      5. choose target wallet + amount you want to send
      6. send & confirm
      If you do not trust in such services I’m afraid you will have to run your own and fully synchronized node.

Leave a Reply