Устанавливаем линукс для майнинга

Майнинг на Linux: разбираем особенности работы

Майнинг на Линуксе имеет свои плюсы и минусы, но положительные моменты, такие как стабильность и производительность, перевешивают все недостатки (ключевой минус: более сложный интерфейс, по сравнению с “Виндой” и необходимость ввода команд вручную).

Говоря о программном обеспечении, среднестатистические пользователи имеют в виду софт, созданный под Windows, будь то семерка, восьмерка или десятка. В майнинге ситуация отличается, по крайней мере, когда речь идет об управлении фермами, где заметную долю занимает Linux. Причина в заточенности некоторых дистрибутивов ‒ разновидностей ‒ под серверы, а также меньшая требовательность представителей семейства Linux к железу.

Рисунок 1: приятный бонус многообразия дистрибутивов и софта под Линукс ‒ маскоты, с которыми даже можно сыграть в перерывах между работой

Линуксы настолько прижились среди добытчиков криптовалюты, что вскоре мир увидела операционная система для майнинга HiveOS. А за ней и другие.

Впрочем, это не единственное интересное решение из мира “пингвинов”. Нестандартные подходы, мифы, преимущества и недостатки, тонкости работы с Linux ‒ все это далее.

Linux и Windows для майнинга: сравнение

Линуксы с трудом, но все еще удерживают сильные позиции, когда дело доходит до управления серверами. А что с ОС для домашнего использования?

Псевдоплюсы

Да, не все плюсы Linux перед Windows таковыми являются. С этой странной категории и начнем.

Свобода. Не все ПО для Linux является свободным или опенсорсным. Доля проприетарного софта здесь не меньшая, чем для “окон”. Более того, целые дистрибутивы ‒ популярные дистрибутивы ‒ зависимы от частных структур. Например, разработкой Ubuntu руководит миллиардер Марк Шаттлворт, прозванный “добрым пожизненным диктатором” операционки. А RedHat и Fedora вовсе являются собственностью фонда семьи Гуггенхаймов.

Марк Шаттлворт.

Безопасность. Самые запоминающиеся скандалы в области кибербезопасности связаны с Linux. В 2014 году был выявлен баг в командной оболочке bash, прозванный Bashdoor или Shellshock. Как и выявленная в том же году уязвимость Hearthbleed, он дает (да, по настоящее время) возможность злоумышленникам удаленно управлять устройствами юзеров и серверами. Примечательно, что датой появления Shellshock считается 1992 год ‒ более 20 лет величайшие умы среди разработчиков не замечали очевидных ошибок.

Рисунок 2: баг Hearthbleed стал настолько узнаваемым, что даже получил отдельный логотип.

Стабильность. Малое количество разработчиков, большое количество разрозненных команд и стремление штамповать новые версии каждые полгода явно не способствуют стабильности в семействе линуксовых. Простой, но забавный пример ‒ создатели Fedora не могут избавиться от багов локализации последние 20 лет, просто игнорируя необходимость ее тестирования. Вот только пункт выше показывает, что не все баги одинаково безобидны.

Нетребовательность. Для работы с Windows 10 потребуется 4 ГБ ОЗУ. Для работы с Ubuntu 20.04 потребуется 4 ГБ ОЗУ.

Псевдоминусы: консоль

Есть у Linux и минусы, которые скорее являются плюсами. Главный источник волнения у новичка ‒ необходимость вручную вводить команды через консоль при работе с приложениями.

На самом деле большинство современных линукс-приложений располагают теми же кнопками и окошками, что привычные Windows и Android.

Что касается работы в консоли (терминале), то хорошим тоном среди современных разработчиков является подробное описание команд на все случаи с примерами. Часто достаточно уметь пользоваться командами “Копировать” и “Вставить”. Правда, следует быть готовыми к решению даже таких мелких нюансов ‒ Копировать/Вставить не всегда работают корректно, как и решения проблемы. Порой в выбранном дистрибутиве проще сменить рабочую среду (да, разработчикам показалось мало разделения на разные дистры).

Читайте также:  What is shared object in linux

Преимущества консоли: меньшие затраты вычислительных мощностей ПК, что важно при добыче криптовалюты, и максимально гибкая настройка софта.

Рисунок 3: учимся пользоваться терминалом

Использование программ для разных дистрибутивов

Разрозненность ветвей Linux привела к тому, что созданные для Ubuntu приложения по умолчанию невозможно установить и использовать, к примеру, для RedHat/Fedora. Вопрос актуальный, ведь большинство программ создается для Ubuntu.

Достаточно пары простых шагов:

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

Рисунок 4: команды для установки Snapcraft на Fedora для тех, кто упустил из виду ссылку. Вторую команду можно не использовать.

  • Последняя команда запускает установку бесплатного магазина приложений Snapcraft. Дождитесь окончания загрузки и установки. В процессе не забывайте соглашаться с системой, нажимая кнопку Y.
  • Готово! Можете открыть магазин и в пару щелчков установить нужную программу.

    Рисунок 5: стартовое окно Snapcraft

    Способы установки кошелька

    Установка кошелька с помощью Snapcraft

    Для удобства работы с получаемыми от майнинга вознаграждениями установите кошелек:

    1. Запустите Магазин Snap (Snapcraft).
    2. Задайте во внутреннем поиске ключевое слово, например, Wallet или откройте нужный раздел.
    3. Приготовьте кофе. Займитесь йогой. Напишите статью о майнинге. Посмотрите сериал. Выучите иностранный язык. Результаты поиска появятся не сразу.

    Рисунок 6: Snapcraft подбирает приложения по запросу
    Если воспользовались поиском ‒ выберите из списка приглянувшееся приложение. Список довольно обширен и включает Coin Wallet от Coin Space, BitPay, BitShares, MyMonero и другие решения. Кликните по требуемому.

    Рисунок 7: список криптовалютных приложений
    В открывшемся окне вы можете изучить информацию и отзывы о приложении. Нажмите “Установить”.

    Рисунок 8: окно установленного приложения
    По окончании установки запустить.Подобным образом можно установить несколько программ для майнинга. Однако, единственной проверенной в магазине остается Monero XMR miner GUI от LunaCrypt ‒ программу с графическим интерфейсом оценили на 2 из 5.Собственный Центр приложений, доступный для домашней Федоры, располагает популярным кошельком Electrum. Алгоритм установки идентичен. Запасайтесь кофе.

    Рисунок 9: стартовое окно Центра приложений на Fedora

    Примечание: в Центре представлены сразу две версии кошелька. Та, что с меньшим рейтингом, устарела и не синхронизируется с сетью.

    Установка и сборка кошельков с помощью Python

    Установка готовых кошельков и даже сборка своих с помощью языка Python пользуется спросом в Linux-сообществе, но возможна и для других операционных систем.

    Возможность сборки кошелька из исходников, написанных на Питоне, предлагают создатели кошелька Electrum.

    Рисунок 10: руководство по сборке Electrum из исходников для тех, кто продолжает обделять вниманием ссылки

    А как собрать свой кошелек на Python? Потребуются минимальные знания Python и наличие Python IDLE/альтернативной рабочей среды.

    1. Зайдите на pypi.org ‒официальный индекс пакетов Python.
    2. С помощью навигации найдите подходящий пакет, например, PyCoin.
    3. Установите с помощью pip install (не забудьте, что установка должна производиться в папку с Python).
    4. В IDLE или другом окружении выполните код, предоставленный разработчиками.

    Рисунок 11: тестируем генерацию адресов и ключей в PyCoin по готовому коду

    Майнинг на ПК

    Майнинг на ПК: пример Monero и особенности поддержки GPU

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

    Monero ‒ одна из тех криптовалют, разработчики и сообщество которой активно поддерживают Linux. И ее можно майнить на домашнем оборудовании. Если у вас уже есть кошелек с Monero (XMR), то вы можете начать CPU-майнинг монеро как на Fedora, так и на Ubuntu.

    Список команд, которые нужно последовательно выполнить в терминале владельцам Fedora версии 24 и выше:

    yum -y install git curl-devel libcurl glib-devel libtool

    git clone https://github.com/hyc/cpuminer-multi

    sudo ./minerd -a cryptonight -o stratum+tcp://pool.minexmr.com:4444 -u WALLET_ADDRESS_HERE -p x -t 3

    stratum+tcp://pool.minexmr.com:4444 ‒ это адрес пула mineXMR.com. Замените его, если желаете добывать криптовалюту в составе другого пула.

    WALLET_ADDRESS_HERE замените адресом своего XMR-кошелька.

    Список команд для Ubuntu 14.04 и выше:

    sudo apt-get install git libcurl4-openssl-dev build-essential libjansson-dev autotools-dev automake

    git clone https://github.com/hyc/cpuminer-multi

    sudo ./minerd -a cryptonight -o stratum+tcp://pool.minexmr.com:4444 -u WALLET_ADDRESS_HERE -p x -t 3

    Найти детальную информацию и получить поддержку можно на официальном сайте Monero How.

    Что касается GPU-майнинга, то здесь Linux-майнеры могут столкнуться с затруднениями из-за особенностей дистрибутивов, неполной поддержки устройств NVIDIA и AMD, а также нестабильности отдельных драйверов.

    Майнинг на ПК: пример Yenten

    Yenten (YEN) ‒относительно популярная в интернет-сообществе криптовалюта, созданная исключительно для майнинга на CPU, а значит, подходящая для добычи на дому.

    Решение представлено для Убунту.

    1. Скачайте официальный софт для майнинга, введя в консоли:wget https://github.com/cpu-pool/cpuminer-opt-cpupower/releases/download/v1.0/Cpuminer-opt-cpupower-linux64.tar.gz
    2. Распакуйте архив. Сделать это можно с помощью команды:tar zxvf Cpuminer-opt-cpupower-linux64.tar.gz
    3. Начните добывать монеты:./cpuminer -a yespowerr16 -o stratum+tcp://yenten-pool.info:63368 -u WALLET_ADDRESS

    Как и в случае с монеро, stratum+tcp://yenten-pool.info:63368 можно заменить адресом другого пула.

    Вместо WALLET_ADDRESS укажите адрес, на который должны поступать заработанные средства.

    Специализированные дистрибутивы и управление асиками

    Для работы с асик-фермами создан ряд специализированных дистрибутивов, которые не требуют длительной настройки.

    Наиболее ходовым остается HiveOS. Среди его преимуществ:

    • широкий функционал;
    • наличие собственного пула;
    • русскоязычная поддержка.

    На официальном сайте новичкам предлагают ознакомиться с рядом видеогайдов по установке и настройке асик-фермы на HiveOS. Один из таких ниже:

    Перспективы

    Неоднозначны. С одной стороны, Linux предлагает гибкость настроек и даже создание заточенной под майнинг операционки с нуля, чем не могут похвастать Win и Mac. Нужный инструмент можно найти у Linux from Scratch.

    С другой, Microsoft учитывает опыт коллег, представленных в сегменте opensource, и постепенно укрепляет влияние на новом рынке.

    Против Linux играют разрозненность и малочисленность сообщества. У него нет преимущества в виде широкой (Windows) или платежеспособной (Mac) аудитории. А это означает недостаток внимания со стороны разработчиков и отставание от трендов.

    Разногласия вокруг основателя семейства Линуса Торвальдса и попытки ключевых разработчиков выяснить, кто из них больше соответствует новомодным стандартам LGBT-SJW-BLM, также не способствуют развитию проекта.

    Источник

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

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

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

    Вводные данные

    Будем считать что у нас уже имеется системный блок с одной или несколькими видеокартами ATI серии 5xxx или 6xxx (с Nvidia тут делать нечего) и установленная Ubuntu Linux. Я использовал последнюю 64 битную версию и все ссылки ниже в коде даны для этой версии софта, хотя их не сложно будет привести к 32 битной, если возникнет такая необходимость.

    Обновление системы и установка необходимых пакетов.

    Последовательно вводим команды, при необходимости — пароль администратора:

    sudo apt-get update
    sudo apt-get upgrade
    sudo apt-get remove nvidia-common
    sudo apt-get install libqtgui4 python-setuptools python-numpy subversion g++ libboost-all-dev

    Устанавливаем драйвера видео

    wget http://www2.ati.com/drivers/linux/ati-driver-installer-11-6-x86.x86_64.run
    sudo sh ati-driver-installer-11-6-x86.x86_64.run —buildpkg Ubuntu/natty
    sudo dpkg -i *.deb
    sudo apt-get -f install
    sudo aticonfig -f —initial —adapter=all
    sudo reboot

    Здесь нужно заметить, что версия драйвера используется не самая последняя и на то есть причины — при использовании последней на данный момент 11.7 многие отмечали серьезную загрузку центрального процессора, одного или сразу всех ядер. Прироста проиводительности это не даст, а лишнюю нагрузку на блок питания — запросто.

    Устанавливаем python-jsonrpc

    svn checkout http://svn.json-rpc.org/trunk/python-jsonrpc
    cd python-jsonrpc/
    sudo python setup.py install

    Если не работает основной svn, скачать архив можно отсюда

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

    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=$/AMD-APP-SDK-v2.4-lnx64/ >>

    /.bashrc
    echo export AMDAPPSDKSAMPLESROOT=$/AMD-APP-SDK-v2.4-lnx64/ >>

    /.bashrc
    cd /
    sudo tar xfz $AMDAPPSDKROOT/icd-registration.tgz

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

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

    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=$include —cl-lib-dir=$lib/x86_64
    make
    sudo make install

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

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

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

    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 и т.д.) Пароль к воркерам проще делать одинаковый.

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

    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=$/AMD-APP-SDK-v2.4-lnx64/
    export AMDAPPSDKSAMPLESROOT=$/AMD-APP-SDK-v2.4-lnx64/
    export LD_LIBRARY_PATH=$lib/x86_64:$

    #разгоняем 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 $/phoenix-1.50
    echo «Startming Miner: $<1>»
    $/phoenix-1.50/phoenix.py -u http://$:$@$ -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’ $
    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»

    Источник

    Читайте также:  Securecrt для windows 10
    Оцените статью