Инструкция

Бот сам подбирает разгон каждой карты NVIDIA на HiveOS (поддержка AMD готовится), проверяет его два часа, ведёт перезагрузки при отвалах и бережёт блок питания. Установка занимает несколько минут, остальное он делает сам.

Впишите имя, например config.rig1.json: оно подставится во все команды ниже. Если рига один, оставьте как есть.

Установка

Четыре шага. Бот меняет разгон и перезагружает риг: первые часы лучше быть рядом или хотя бы в Telegram.

  1. Подготовьте риг в панели Hive

    Очистите разгон в панели (вкладка «Разгон» воркера), иначе Hive применит свой поверх бота. Отключите перезагрузку по хешрейту в Watchdog на время подбора: на тестовых точках хешрейт падает. Майнер должен работать и отдавать хешрейт.

    Воркер в панелиОбзорРазгонWatchdogочиститьвыключитьперезагрузку по хешрейту
  2. Поставьте бота

    Никаких файлов скачивать на свой компьютер и заливать на риг не нужно. Откройте Hive Shell рига (значок >_) и вставьте одну команду — она сама скачает бота, распакует и запустит мастер установки. Мастер сам найдёт карты, майнер и имя рига и спросит блок питания, цель подбора и данные Telegram.

    cd /root && wget -qO ocbot.zip https://raw.githubusercontent.com/ocbotauto/ocbot-dist/main/ocbot.zip && unzip -qo ocbot.zip -d /root && cd /root/ocbot && bash install.sh
    1. Hive Shell ригаодна команда, значок >_скачивание и распаковка2. Мастер установкисам найдёт карты, спросит про блок питания
  3. Включите пробный период или ключ

    Сразу после установки бот ничего не меняет в разгоне, пока не включена лицензия. Бесплатно и без карты — 3 дня на риг, один раз:

    cd /root/ocbot && python3 -m ocbot --config config.json --trial

    Купили ключ на странице покупки? Активируйте его одной командой — никакой файл никуда копировать не нужно, подставьте свой ключ вместо OC-...:

    cd /root/ocbot && python3 -m ocbot --config config.json --activate OC-XXXXX-XXXXX-XXXXX-XXXXX

    Один ключ действует на один риг: для каждого рига свой ключ и своя активация.

  4. Подключите Telegram

    Создайте бота у @BotFather, возьмите токен и узнайте свой числовой ID у @userinfobot. Мастер спросит их сам; позже их можно задать командой. Токен никому не отправляйте и в чат не вставляйте.

    cd /root/hive-oc-bot && python3 -m ocbot --config config.json --telegram-set 'ТОКЕН' 123456789

    Подставьте свой токен и ID. Если Telegram недоступен с рига, см. «Если что-то не так».

    1@BotFatherсоздайте бота, получите токен2@userinfobotузнайте свой числовой ID3Hive Shellвставьте токен и ID в мастерТокен никому не отправляйте.
  5. Посмотрите, что бот делает

    Бот стартует примерно через минуту (пауза после загрузки) и пишет в Telegram о каждом шаге. Отправьте /status: там видно, чем занята каждая карта. Подбор разгона занимает несколько часов, после каждого найденного пресета идёт двухчасовая проверка.

    systemctl status ocbot --no-pager | head -n 5; tail -n 10 /root/hive-oc-bot/ocbot.log

    Если Telegram не работает, состояние видно здесь.

    /statusРиг rig01 · цель compromiseавтоматика: работаетGPU 0 RTX 3070 Ti [ok]68°C · 85.4 TH/s · 222 WGPU 1 RTX 3080 [ok]69°C · 104.9 TH/s · 201 Wпример ответа бота (значения условные)

Как это работает

Что бот делает с картой от первого запуска до рабочего пресета.

Подборcore · mem · PLПроверка2 часаПресетсохранён в базене прошла: поиск зановоОтвал картыбезопасный профиль, перезагрузка, точка = граница

Подбор core · mem · PL

Бот ищет смещение ядра, смещение памяти и лимит мощности. Каждая точка измеряется окном, при отвале точка становится границей, и риг перезагружается.

Проверка 2 часа

Лучший найденный пресет работает под нагрузкой два часа. Не прошёл: берётся запасной, поиск идёт заново с увеличенным запасом.

Цель /mode

efficiency: максимум хешрейта на ватт. compromise: максимум хешрейта, если эффективность не хуже лучшей на заданный допуск. hashrate: максимум хешрейта, мощность делится в рамках блока питания.

4 параметра /params

К смещениям добавляется фиксация частоты ядра и памяти. Включается для каждой карты отдельно и подбирается на готовом пресете. На цели hashrate с упором в блок питания фиксация обычно выигрыша не даёт, на efficiency и compromise даёт заметный. Для rgminer после фиксации бот поднимает оффсет ядра.

Отвалы

Карта упала на границе разгона: безопасный профиль и перезагрузка. Падает на мягких настройках: лесенка из перезагрузок, потом пометка карты suspect или faulty.

Блок питания /psu

Сумма лимитов PL карт не выходит за бюджет блока. Для нескольких блоков можно задать, какие слоты на каком. Режим hashrate раздаёт лимит по потенциалу карт.

Важно. Пресеты привязаны к конкретной карте, алгоритму, майнера и его версии. Сменили майнер или алгоритм: бот подбирает заново, старые пресеты остаются в базе.

Команды Telegram

Карту можно указать номером слота, меткой или последними символами UUID: /card 3. Список всегда доступен по /help.

1. Состояние

  • /statusСостояние всех карт и пресетов
  • /cardПодробно по одной карте: /card 3
  • /profilesГотовые пресеты
  • /historyИстория карты: /history 3
  • /slotsСтатистика по слотам
  • /tableСводная таблица по ригу (максимум, минимум, лучшая эффективность), файл CSV

2. Подбор и проверка

  • /tuneПодбор заново для одной карты: /tune 3
  • /newsearchНовый подбор: /newsearch 3 (одна карта) или /newsearch all (весь риг)
  • /restoreВернуть прежний пресет без нового подбора: /restore 3 или /restore all
  • /verifyДвухчасовая проверка карты: /verify 3
  • /optimizeПодробный поиск лучшего вокруг готового пресета: /optimize 3, /optimize all, /optimize cancel

3. Цель и режимы

  • /modeЦель подбора: efficiency, compromise, hashrate; для одной карты /mode 3 hashrate
  • /paramsРежим карты: /params 3 4 (плюс фиксация частот ядра и памяти), /params all 4, /params 3 2

4. Управление

  • /safeБезопасные настройки на карты
  • /stopОстановить автоматику
  • /resumeПродолжить автоматику
  • /faultyПометить карту неисправной: /faulty 3 [off]

5. Питание

  • /plЗамок мощности: /pl 3 150 или /pl 3 off
  • /psuНагрузка на блок питания; сменить вводные: /psu 1400 1200 [база]
  • /balanceРаспределение лимита PL: /balance (показать), /balance run (раздать), /balance deep (плотный перебор)

6. Каталог и обмен

  • /exportВыгрузить пресеты файлом
  • /modelsКаталог лучших пресетов по моделям карт
  • /modelПресеты одной модели: /model 3070
  • /catalogФайл каталога для друзей (без UUID и имён ригов)

7. Справка

  • /helpСписок команд

Команды консоли

То же самое без Telegram. Каждая команда запускается так, из папки бота:

cd /root/hive-oc-bot && python3 -m ocbot --config config.json --table
--service installпоставить автозапуск и запустить; stop / start / restart / status / remove для управления
--mode compromise --tolerance 3сменить цель: efficiency, compromise (допуск в %), hashrate; show покажет текущую
--mode hashrate --card 3цель для одной карты; --mode rig вернёт её под общую
--params all 4режим «4 параметра» (фиксация частот ядра и памяти); --params 3 2 вернёт два параметра
--tableсводная таблица по ригу: максимум, минимум и лучшая эффективность каждой карты
--restore 3вернуть прежний проверенный пресет карты без нового подбора (без аргумента: все карты)
--optimize 3подробный поиск лучшего вокруг готового пресета; --opt-gain 2 задаёт порог выигрыша в %
--balance showкак карты упираются в лимит блока питания; run раздаёт лимит, deep ищет плотнее
--telegram-set 'ТОКЕН' 123456789записать токен бота и ваш Telegram ID (токен в чат не вставляйте)
--telegram-proxy http://192.168.3.5:8080прокси для Telegram, если он недоступен напрямую; '' отключает
--fix-external-gpusкарты в Thunderbolt не видны иксам: добавить AllowExternalGpus в скрипт Hive (затем reboot)
--catalog 3070каталог лучших пресетов по моделям; --catalog-export / --catalog-import для обмена файлом
--repairисправить ложные отвалы, записанные при перезапуске бота (бота сначала остановить)
--uninstall --yesполностью удалить бота с рига; --keep-data оставит конфиги, базу и лог

Обновление и удаление

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

Обновить

cd /root/hive-oc-bot && python3 -m ocbot --config config.json --service stop && cd /root && wget -qO hive-oc-bot.zip https://github.com/makar2186/ocbot-dist/raw/main/hive-oc-bot.zip && unzip -qo hive-oc-bot.zip -d /root && cd /root/hive-oc-bot && python3 -m unittest discover -s tests > /tmp/t.log 2>&1 && tail -n 3 /tmp/t.log && python3 -m ocbot --config config.json --service install

В конце должно быть OK.

Остановить и вернуть

cd /root/hive-oc-bot && python3 -m ocbot --config config.json --service stop
cd /root/hive-oc-bot && python3 -m ocbot --config config.json --service start

После stop бот не запустится и после перезагрузки.

Удалить совсем

cd /root/hive-oc-bot && python3 -m ocbot --config config.json --uninstall --yes

Уберёт службу, автозапуск и папку. Чтобы оставить конфиги и базу, добавьте --keep-data.

Если что-то не так

Частые случаи и что с ними делать.

Бот не запустился после перезагрузки рига

Подождите минуту: перед стартом стоит пауза. Потом проверьте службу и автозапуск.

systemctl status ocbot --no-pager | head -n 8; crontab -l | grep ocbot

Если службы нет или она остановлена командой --service stop, выполните --service install.

Telegram не отвечает с рига

Telegram может быть недоступен у провайдера. Укажите прокси, а состояние смотрите в логе, пока он не заработает.

cd /root/hive-oc-bot && python3 -m ocbot --config config.json --telegram-proxy http://192.168.3.5:8080
cd /root/hive-oc-bot && python3 -m ocbot --config config.json --telegram-test
Карта помечена suspect

Бот не нашёл для неё стабильный пресет и остановил автоматику, чтобы не мучить карту. Проверьте питание, райзер и температуру, потом запустите подбор заново командой /tune 3.

Карты в Thunderbolt не видны иксам, оффсеты не применяются

Иксы по умолчанию отключают внешние карты (в /var/log/Xorg.0.log есть «external GPUs have not been enabled»). Бот умеет добавить нужный параметр в скрипт Hive. После этого перезагрузите риг.

cd /root/hive-oc-bot && python3 -m ocbot --config config.json --fix-external-gpus
nvidia-smi -L | wc -l; DISPLAY=:0 nvidia-settings -q gpus | grep -c "\[gpu:"

Два числа должны совпасть с числом карт.

При обновлении образа Hive скрипт перезаписывается: команду повторите.

Пропали настройки после перезапуска майнера

Hive мог применить свой разгон поверх. Убедитесь, что в панели разгон очищен, и проверьте /status.

Отказ от ответственности

Условия использования. Прочитайте перед установкой.

  1. Без гарантий. Бот предоставляется «как есть». Автор не гарантирует его пригодность для ваших целей, бесперебойную работу и отсутствие ошибок.
  2. Риск для оборудования. Бот сам меняет смещения частот, фиксацию частот и лимиты мощности, а также перезагружает риг. Это может привести к нестабильной работе, отвалам карт, перегреву, ускоренному износу или поломке видеокарт, блоков питания, райзеров и другого оборудования, потере хешрейта и дохода, потере данных, а также к потере гарантии производителя.
  3. Вы отвечаете за результат. Устанавливая и запуская бота, вы принимаете на себя все риски и всю ответственность за любые последствия его работы, включая прямые и косвенные убытки и упущенную выгоду. Автор и распространители бота ответственности за них не несут в пределах, допустимых законом.
  4. Что остаётся на вас. Охлаждение, питание, райзеры, температура и наблюдение за ригом. Данные блока питания (команда /psu) вводит владелец, и верность этих данных на нём. Первые запуски делайте рядом с ригом. Перед применением проверяйте любые пресеты, особенно полученные из каталога или от других людей.
  5. Пресеты и каталог. На пробном периоде проверенные пресеты вашего рига анонимно (без имени рига, UUID карт и IP) обязательно отправляются в общий каталог; это условие пробного периода. С купленным ключом отправку можно отключить командой /share off. Пресеты в каталоге присылают сторонние пользователи. Они подходят не всем картам и ригам, никак не проверяются автором и даются без гарантий.
  6. Сторонние программы. HiveOS, драйвер NVIDIA, майнеры (в том числе rgminer), пулы и Telegram разрабатываются третьими лицами и не связаны с автором бота. Их названия принадлежат их владельцам. Вы сами соблюдаете условия их лицензий и использования.
  7. Доступы и данные. Токен Telegram и, если вы включите публикацию каталога, токен GitHub хранятся в конфиге на вашем риге. Их сохранность на вас: не публикуйте их и не вставляйте в чаты. Каталог не содержит UUID карт и имён ригов, но публикуете его вы.
  8. Закон. Вы сами отвечаете за соблюдение законов вашей страны (майнинг, электроэнергия, налоги и т. д.) и за то, что использование бота не нарушает гарантийные и иные обязательства перед третьими лицами.
  9. Изменения. Функциональность и эти условия могут меняться. Актуальная редакция всегда на этой странице.
  10. Согласие. Если вы не согласны с этими условиями, не устанавливайте бота; уже установленного удалите командой --uninstall --yes.