Custom Search

Bitcoin Mining with p2pool and cgminer on ubuntu

Doing bitcoin mining with p2pool lets you get incomes as stable as other pools, while avoiding some problems of centralized pools like deepbit and bitminter.

p2pool advantages : You do not have to trust the owner of a pool for you to pay your Bitcoins honestly. You are protected from DDoS attacks against the pool. You participate to prevent any pool to get 50% of the computing power of the network. And your payments are immediate to each block detected.

p2pool disadvantages : To operate, p2pool needs to be started on a computer with Bitcoin server software permanently open. This requires more memory. p2pool is also a bit more complicated to implement for a novice.

Password for the Bitcoin software : For the next steps, replace user by any user name of your choice, and password with any password of your choice. This password must be very difficult to guess, particularly if the computer on which the Bitcoin server is installed is accessible via the Internet without a firewall to protect its port 8332.

Ubuntu 64 bit with graphic drivers: These steps demonstrate how to install p2pool and cgminer on a computer with ubuntu. To work correctly, cgminer needs the 64bit version of ubuntu. And if you use an ATI graphics card, it is also necessary that the fglrx proprietary drivers are installed to take advantage of its calculation strenght.

Install Bitcoin

  1. Install Bitcoin software.
  2. Edit ~/.bitcoin/bitcoin.conf file on which you will add the following text :
    rpcuser=user
    rpcpassword=password
    server=1
    rpcport=8332

Install cgminer

  1. Download the last version of cgminer on the official website. (Choose the version with name ending with x86_64-built).
  2. Create the folder ~/cgminer and unpack the content of the downloaded file in this folder.

Install p2pool

  1. Open a terminal.
  2. Install required packages by using the following command
    sudo apt-get install git python-zope.interface python-twisted python-twisted-web
  3. Download p2pool by using the following command
    git clone git://github.com/forrestv/p2pool.git ~/p2pool

Start bitcoin mining

  1. Open your Bitcoin software and wait until it is open and synced.
  2. Open a terminal, use the following command to start p2pool and wait until it is started.
    python ~/p2pool/run_p2pool.py
  3. Open a terminal, use the following command to start cgminer
    ~/cgminer/cgminer -o http://127.0.0.1:9332 -u user -p password


Now you can let Bitcoin, p2pool and cgminer work.  Bitcoin window and two terminal windows must remain open. First terminal displays p2pool statistics continuously and the other continuously displays cgminer statistics. At its first start, p2pool created a new Bitcoin address in your Bitcoin wallet. Once a block is found by p2pool, your part of the reward is immediately paid to you on this address. So you receive payments regularly and promptly.