
Автозапуск майнеров в Linux с помощью cron+screen
Чтобы автоматически запускать и управлять процессом майнинга под управлением Linux, можно использовать связку планировщика cron и программы screen. Такая комбинация позволяет осуществлять подключение к работающим сессиям программ майнинга, в том числе дистанционно (например, по ssh).
Cron задействуется для обеспечения автоматического запуска майнера или любой другой программы в нужное время (обычно сразу после загрузки).
Утилита screen обеспечивает работу программы (майнера) с возможностью свободного подключения/отключения к ее консоли.
Как запустить майнер с помощью утилит cron и screen?
Для автоматического запуска программ с помощью планировщика crontab и терминального мультиплексора screen создается скрипт запуска и делается запись в crontab, которая будет его отрабатывать.
Для автозапуска программы в Linux с помощью связки crontab и screen нужно выполнить два шага:
- Создать скрипт, запускающий сессию screen и майнер.
- Записать в crontab команду автоматического запуска скрипта, созданного на первом шаге.
Для справки: Для удобства пользования утилитой screen желательно отключить окно приветствия с лицензионной информацией. Надоедливое окно приветствия, возникающее при каждом при запуске утилиты screen:По умолчанию выход из окна и продолжение работы осуществляется нажатием ввода или пробела. Отключение окна с лицензией делается в конфигурационном файле etc/screenrc путем добавления строчки: startup_message off
Запуск сессии screen с определенным именем и майнера
Для запуска майнера создается скрипт, в котором прописывается команда открытия сессии screen с определенным именем (например, xmrig) и команды запуска майнера. Имя нужно задавать чтобы при подключении к ригу по ssh не тратить время на уточнение номера созданной системой сессии (команда screen -ls).
Пример скрипта (назовем его CPU_mining) для автоматического запуска майнинга на процессоре в программе xmrig (создается сессия screen с именем xmrig):
#!/bin/bash sleep 10 screen -dmS xmrig sudo ./xmrig -a rx/sfx -o randomsfx.eu.mine.zergpool.com:4450 -u кошелек -p c=BTC,воркер -k --donate-level=0 --asm=intel --cpu-priority 0 -t 1 --keepalive
Консольная программа, запущенная данным скриптом будет работать в фоне. При необходимости подключения к ней используется команда
screen -r имя_сессии
Для запуска сессии майнинга на видеокартах создается аналогичный скрипт со своими командами.
Пример скрипта (назовем его ETH_mining) для автостарта сессии teamredminer (сессия под именем eth):
#!/bin/bash sleep 10 screen -dmS eth sudo ./teamredminer -a ethash -o stratum+tcp://eu1.ethermine.org:4444 -u адрес.воркер,refcode=81de238596774683dd427a9d57bae6af -p x --temp_limit=65 --temp_resume=55 --eth_4g_max_alloc=4080 --fan_control --fan_default_polaris=56::65:40 --api_listen=3333 --watchdog_script=watchdog_sysrq.sh sleep 10
К майнерам, запущенным с помощью сессии screen можно подключаться с консоли командой (для сессии xmrig):
screen -r xmrig
или (для сессии teamredminer):
screen -r eth
Чтобы свернуть окно открытой сессии screen используют команду ctrl-A и последующее нажатие D.
Если нужно полностью закрыть какой-то майнер и его сессию, в его работающей консоли нажимают комбинацию ctrl+a, затем клавишу k (команда kill), а затем подтверждают закрытие программы нажатием клавиши y (обозначает yes):
Автоматический запуск скриптов при загрузке операционной системы
Автоматический запуск скриптов при загрузке операционной системы Linux удобно делать с помощью cron. Для этого в конфигурационном файле планировщика создается триггер запуска нужного скрипта (подробнее этот процесс описан в статье «Автозапуск майнеров в Linux с помощью cron«) и обеспечивается переход в его папку для запуска.
Для этого нужно немного модифицировать скрипты, созданные ранее, путем добавления команды для перехода в их папку (иначе не запуститься screen), например:
cd ~/Miners/xmrig
В итоге скрипт запуска CPU_mining приобретет следующий вид:
sleep 10 cd ~/Miners/xmrig screen -dmS xmrig sudo ./xmrig -a rx/sfx -o randomsfx.eu.mine.zergpool.com:4450 -u кошелек -p c=BTC,воркер,refcode=81de238596774683dd427a9d57bae6af -k --donate-level=0 --asm=intel --cpu-priority 0 -t 1 --keepalive
Команда sleep 10 используется для отсрочки запуска майнинга на указанное количество секунд (чтобы дать системе полностью загрузиться).
В crontab для автозапуска скрипта CPU_mining добавляют запись для запуска майнера с указанием полного пути к нему, например:
@reboot ~/Miners/xmrig/CPU_mining
Для автоматического запуска еще одного майнера или программы (в том числе для разгона) в файл crontab добавляют дополнительную аналогичную строчку.
Для запуска скрипта разгона (например, Overclock.sh) с множеством команд нужно создать отдельный скрипт (например, Autostart.sh) с командой для запуска Overclock.sh и прописать его в cron.
Пример записей в crontab для запуска двух майнеров и скрипта Auto_Over.sh, инициирующего выполнение команд разгона в еще одном скрипте:
@reboot ~/Miners/xmrig/RandomSFX.sh @reboot ~/Miners/teamredminer/Auto_Over.sh @reboot ~/Miners/teamredminer/Ethermine_Kuna.sh

