Пошаговая настройка Ubuntu для майнинга в автоматическом режиме с удаленным контролем

Тема в разделе "Инфа по майнингу", создана пользователем Транклюкатор, 12 дек 2017.

Метки:
  1. Транклюкатор

    Транклюкатор Господин ПЖ

    Пошаговая настройка Ubuntu для майнинга в автоматическом режиме с удаленным контролем
    В этой статье я постараюсь подробно изобразить последовательность действий, которую нужно совершить для настройки фермы генерации Биткоинов на базе Ubuntu 11.04. Безусловно, такой информации в сети более чем достаточно, но я постараюсь описать полностью завершенный и отлаженный процесс, неоднократно испробованный лично и затрону некоторые нюансы, касающиеся тонкой настройки системы.

    О самих биткоинах, их целессообразности и будущем пусть каждый делает выводы по своему усмотрению, я же в данной статье буду иметь дело только с технической стороной вопроса.
    отсюда

    Устанавливаем AMD APP SDK 2.4

    cd ~
    wget http://download2-developer.amd.com/amd/APPSDK/AMD-APP-SDK-v2.4-lnx64.tgz
    tar xvzf AMD-APP-SDK-v2.4-lnx64.tgz
    echo export AMDAPPSDKROOT=${HOME}/AMD-APP-SDK-v2.4-lnx64/ >> ~/.bashrc
    echo export AMDAPPSDKSAMPLESROOT=${HOME}/AMD-APP-SDK-v2.4-lnx64/ >> ~/.bashrc
    echo 'export LD_LIBRARY_PATH=${AMDAPPSDKROOT}lib/x86_64:${LD_LIBRARY_PATH}' >> ~/.bashrc
    source ~/.bashrc
    cd /
    sudo tar xfz $AMDAPPSDKROOT/icd-registration.tgz


    На данный момент доступна версия AMD APP SDK 2.5, но лично я ее проверить в работе еще не успел, поэтому и советовать не рискну.

    Устанавливаем pyopencl-0.92

    cd ~
    wget http://pypi.python.org/packages/source/p/pyopencl/pyopencl-0.92.tar.gz
    tar xzvf pyopencl-0.92.tar.gz
    cd pyopencl-0.92
    ./configure.py --cl-inc-dir=${AMDAPPSDKROOT}include --cl-lib-dir=${AMDAPPSDKROOT}lib/x86_64
    make
    sudo make install


    Установка майнера, подключение к пулу и настройка стартового скрипта

    В этом месте каждый решает сам для себя, какой программой-майнером пользоваться и к какому совместному пулу подключаться. И тех и других достаточное количество, я остановился на Phoenix Miner в качестве первого и deepbit.net в качестве второго.

    Устанавливаем и допиливаем Phoenix Miner 1.50

    cd ~
    wget http://svn3.xp-dev.com/svn/phoenix-miner/files/phoenix-1.50.tar.bz2
    tar xvf phoenix*.bz2


    Это базовая установка, для начала можно оставить как есть, но желающим получить дополнительный прирост производительности порядка 3-4% советую посетить следующую ветку форума bitcointalk.org

    Регистрация в пуле совместного майнинга

    Выбор пула — дело сугубо индивидуальное, как вариант дальше я рассматриваю deepbit. Регистрируемся здесь deepbit.net и создаем воркеров по количеству имеющихся видеокарт. Отличаться они будут хвостом логина (он же передается как параметр в скрипте, поэтому советую делать 0, 1 и т.д.) Пароль к воркерам проще делать одинаковый.

    Создаем стартовый скрипт

    cd ~
    sudo touch /usr/local/bin/startminer.sh
    sudo chmod 755 /usr/local/bin/startminer.sh
    sudo gedit /usr/local/bin/startminer.sh


    Собственно, сам скрипт с комментариями
    # ${1} используется как переменная для логина и видеокарты, если их несколько
    # далее вместо user подставляем имя пользователя в ubuntu, ниже адрес пула, тело логина и пароль
    HOMEDIR=/home/user
    MINERSERV=pit.deepbit.net:8332
    MINERUSER=login_${1}
    MINERPASS=password

    export AMDAPPSDKROOT=${HOMEDIR}/AMD-APP-SDK-v2.4-lnx64/
    export AMDAPPSDKSAMPLESROOT=${HOMEDIR}/AMD-APP-SDK-v2.4-lnx64/
    export LD_LIBRARY_PATH=${AMDAPPSDKROOT}lib/x86_64:${LD_LIBRARY_PATH}

    #разгоняем GPU до 875Mhz или больше руководствуясь здравым смыслом и рабочими частотами, частоту памяти наоборот, понижаем до 300
    DISPLAY=:0 aticonfig --od-enable --adapter=all
    DISPLAY=:0 aticonfig --od-setclocks=875,300 --adapter=${1}
    #устанавливаем обороты кулера на 50 процентов
    #можно больше или меньше, температура желательна не больше 80 по Цельсию
    DISPLAY=:0.${1} aticonfig --pplib-cmd "set fanspeed 0 50"
    cd ${HOMEDIR}/phoenix-1.50
    echo "Startming Miner: ${1}"
    ${HOMEDIR}/phoenix-1.50/phoenix.py -u http://${MINERUSER}:${MINERPASS}@${MINERSERV} -k phatk VECTORS BFI_INT AGGRESSION=13 WORKSIZE=128 DEVICE=${1}


    Настраиваем скрипты загрузки и удаленный мониторинг

    При выполнении следующих действий необходимо учитывать, что при следующей загрузке графической оболочки больше не будет и все дальнейшие корректировки можно будет производить только в консоли или удаленно по ssh.
    sudo apt-get install ssh screen
    sudo mv /etc/init/gdm.conf /etc/init/gdm.org
    sudo gedit /etc/init/startx.conf


    Скрипт startx.conf
    description "Start X Server for btc mining"
    start on runlevel [2345]
    stop on runlevel [!2345]
    kill timeout 30
    script
    exec /usr/bin/X 2>&1
    end script


    Создаем еще один или несколько файлов конфигурации (по количеству видеокарт — btcminer_0.conf, btcminer_1.conf и т.д. Содержание их идентично.
    description "Start BTC Mining"
    start on runlevel [2345]
    stop on runlevel [!2345]
    kill timeout 30
    script
    #вместо user подставляем имя пользователя
    LOGINUSER=user
    sleep 30
    exec /usr/bin/screen -dmS gpu0 su -c '/usr/local/bin/startminer.sh 0' ${LOGINUSER}
    end script


    Если системный блок подлючен к роутеру и получает DHCP адрес — одной проблемой меньше, если же он подключается по pppoe или Wi-Fi — могу порекомендовать следующую статью по настройке сетевых интерфейсов из консоли:
    настройка сети вручную

    Вот, собственно, и все. В качестве финальных штрихов устанавливаем в BIOS автоматический старт при отключении электричества и отключение ошибок при отсутствии клавиатуры. Можно отключить периферию и монитор — они нам больше не нужны.

    Список некоторых полезных команд для удаленного мониторинга:


    #мониторим работу майнера
    sudo screen -r gpu0
    #если несколько видеокарт
    sudo screen -r gpu1 и т.д.

    Для отключения нажимаем Control-A + Control-D.

    #мониторим температуру видеокарт
    DISPLAY=:0 sudo aticonfig --odgt --adapter=all

    #обороты кулера видеокарты смотрим так
    DISPLAY=:0.0 sudo aticonfig --pplib-cmd "get fanspeed 0"

    DISPLAY=:0.1 для второй видеокарты и т.д.

    #устанавливаем скорость вращения кулера видеокарты, где 50 — обороты в %
    DISPLAY=:0.0 sudo aticonfig --pplib-cmd "set fanspeed 0 50"
     
    Izilda нравится это.