Kernel log ASIC: как читать журнал майнера и понимать ошибки

Kernel log (журнал ядра майнера) — это «чёрный ящик» ASIC. В нём по секундам видно:

  • как майнер стартовал после включения питания;
  • что он увидел по вентиляторам, температуре и EEPROM;
  • как инициализировал цепочки чипов;
  • когда и почему выдал ошибку или ушёл в перезагрузку.

Если научиться читать kernel log, можно за 30–60 минут понять, где первичная проблема:

  • среда и охлаждение;
  • питание и PSU;
  • шлейфы и связь;
  • конкретная хэш-плата или цепочка ASIC-чипов.

Полный список кодов и текстов ошибок см. в хабе: Индекс кодов и сообщений майнеров для Whatsminer и Antminer — там собраны 206, 207, 210, find 0 asic, EEPROM, CRC и другие.

Kernel log ASIC: как читать журнал майнера и понимать ошибки

Навигация по сериям

1. Где найти kernel log на Whatsminer и Antminer

Whatsminer

На большинстве Whatsminer журнал ядра доступен:

  • через веб-интерфейс:
    • разделы вида *System → Kernel Log* или *Log → Kernel*;
  • в виде файлов:
    • kernel, current, history — их можно:
      • посмотреть в вебе;
      • выгрузить архивом;
      • иногда прочитать через SSH (для продакшен-ферм это обычно отключают).

Для диагностики особенно полезен:

  • лог с холодного старта:
    • выключили майнер кнопкой;
    • обесточили (вынули вилку, выключили автомат);
    • подождали 2–3 минуты;
    • включили снова → сохранили лог целиком до момента ошибки.

Antminer

Для Antminer:

  • в веб-интерфейсе есть вкладка *Kernel Log* или *System → Kernel Log*;
  • отображается текстовый лог ядра:
    • его можно скопировать «целиком»;
    • на новых моделях иногда есть кнопка *Download*.

Что важно дать сервису или поддержке:

  • полный лог с момента включения питания до появления ошибки (а не 5 строк вокруг кода);
  • модель майнера и версию прошивки;
  • кратко: что делали до появления проблемы (чистка, перенос, прошивка, разгон).

2. Как устроен запуск майнера в журнале

При старте ASIC в kernel log обычно фиксируется примерно такая последовательность:

  1. Инициализация системы

Версия прошивки, параметры загрузки, базовые проверки.

  1. Проверка вентиляторов и температуры

Модули fan/thermal:

  • есть ли сигнал с вентиляторов;
  • попадает ли RPM в допустимый диапазон;
  • читаются ли датчики температуры (NTC) и нет ли «sensor error».
  1. Чтение EEPROM и калибровок

Модуль eeprom:

  • чтение «паспорта» каждой хэш-платы (EEPROM);
  • проверка хэшей/CRC калибровок.
  1. Инициализация цепочек ASIC

По цепочкам:

  • поиск чипов;
  • подсчёт их количества;
  • проверка связи и CRC.
  1. Выбор профиля частот и напряжений

Настройка PLL, напряжений, power limit.

  1. Выход в хеширование

Регулярные строки телеметрии:

  • частоты;
  • температура плат;
  • хешрейт;
  • количество ошибок (CRC, HW, «stale»).

Где искать первопричину:

  • если проблемы/ошибки уже на этапе vent/temp — сначала смотрим воздух и вентиляторы;
  • если vent/temp норм, но валится eeprom — фокус на плате и её «паспорте»;
  • если eeprom ок, а не поднимается цепочка чипов — чаще плата/шлейф/PSU;
  • если всё поднимается, но потом рушится на нагрузке — чаще PSU, перегрев или разгон.

3. Как читать журнал: от симптома к причине

Ниже — не список всех кодов (он в индексе), а паттерны, по которым можно понять, куда смотреть дальше.

Наблюдение в kernel log Что это обычно значит Первые шаги
Сразу после старта «fan error / fan speed low / fan lost» Контроллер не видит вентилятор или обороты вне диапазона Проверить разъёмы вентиляторов, крыльчатку, нет ли рециркуляции и «затыка» воздуха; см. ошибки вентиляторов и температуры
RPM «пилой», затем overtemp/thermal shutdown Недостаточный поток, пыль, горячий воздух на входе Чистка, корректный приток/вытяжка, убрать рециркуляцию; см. среда и размещение
EEPROM error / NG / read eeprom fail Плата не может прочитать/проверить свой паспорт и калибровки Проверить плату в изоляции, коннекторы, прошивки; базово см. EEPROM error
find 0 asic / chain missing / asic num is 0 Цепочка чипов «молчит» — контроллер не видит ни одного ASIC Поменять шлейфы местами, запуск по одной плате; далее Whatsminer find 0 asic или Antminer find 0 asic
nonce CRC error / CRC too high / asic crc error Ошибки CRC при обмене данными с платой или при росте нагрузки Проверка PSU, коннекторов, шлейфов, температуры; см. nonce CRC error
psu fault / overcurrent / undervoltage PSU ушёл в защиту по току/напряжению Проверить ввод, линию, кабели, другой PSU; см. ошибки блока питания

Часто в логе встречается и код ошибки, и текст. За расшифровкой «код → детали → шаги» лучше идти в:

4. Примеры паттернов на Whatsminer и Antminer

Whatsminer

Типичный сценарий по kernel log:

  • После старта:
    • вентиляторы выходят на максимум (это нормально);
    • если один из них не выходит в диапазон — появятся fan error / fan speed low;
  • Далее EEPROM:
    • при проблеме с калибровками — EEPROM error / NG;
  • Далее цепочки:
    • при проблеме платы — find 0 asic / chain missing;
  • При наборе мощности:
    • при просадках питания или «слабом» PSU — psu fault, 210 и подобные статусы;
    • при шуме по линиям — nonce CRC error.

Примеры связки «фрагмент лога → куда идти»:

Antminer

У Antminer лог выглядит иначе, но смысл похож:

  • temp sensor error / sensor abnormal — проблема с датчиком/цепью измерения температуры; см. ошибка датчика температуры.
  • chain(x) asic is 0 / find 0 asic — цепочка не поднимается; см. Antminer find 0 asic.
  • fatal temperature / overtemp protection — перегрев, троттлинг или аварийная остановка; оценивать среду и airflow.

5. Пошаговая диагностика по kernel log (без паяльника)

Ниже — базовый сценарий, который можно проделать без лаборатории и осциллографа.

Шаг 1. Вернуть сток-профиль

  • Уберите разгон, кастомные прошивки и нестандартные профили.
  • Перезагрузите майнер, затем обесточьте его полностью на 2–3 минуты.
  • Включите снова и сохраните kernel log с самого начала и до возникновения ошибки.

Задача: увидеть, на каком этапе (vent/temp, EEPROM, цепочки, набор мощности) всё ломается.

Шаг 2. Проверить воздух и среду

  • очистить входные/выходные решётки от плотной пыли;
  • убедиться, что нет рециркуляции горячего воздуха;
  • проверить, не дует ли горячий поток с соседних майнеров назад на вход.

Перезапустите и сравните:

  • ушли ли или стали реже строки про перегрев и fan error;
  • изменилась ли динамика RPM в логе.

Шаг 3. Проверить питание и коннекторы

  • осмотреть и «перещёлкнуть» все силовые коннекторы:
    • на PSU;
    • на хэш-платах;
    • на вводе (кабели, автоматы);
  • по возможности временно подключить эталонный блок питания.

В логе обращаем внимание на:

  • psu fault / overcurrent / undervoltage;
  • прирост ошибок CRC в момент набора мощности.

Шаг 4. Проверить шлейфы и порты

  • поменять шлейфы между платами местами;
  • проследить по kernel log, «переезжает» ли ошибка на другую плату/цепочку.

Если симптом уехал вслед за шлейфом — проблема ближе к связи. Если остался на той же плате — фокус на самой плате или её локальном питании/датчиках.

Шаг 5. Запускать по одной плате

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

Это помогает локализовать плату/цепочку, из-за которой срывается старт или появляются массовые CRC/overtemp.

Шаг 6. Сопоставить с профильными разборами

Когда понятно:

  • в какой части последовательности старта происходит сбой;
  • какие именно сообщения/коды повторяются —

переходим в соответствующий лонгрид:

6. Быстрый чек-лист (за час до сервиса)

  • Снять лог холодного старта на сток-прошивке.
  • Привести в порядок воздух: чистка, поток, убрать рециркуляцию.
  • Проверить питание: коннекторы, кабели, по возможности — другой PSU.
  • Перекинуть шлейфы и порты, посмотреть, «мигрирует» ли ошибка.
  • Запустить по одной плате, понять, какая конфигурация ломает старт.
  • Сопоставить сообщения с индексом ошибок и перейти в нужный разбор.

Эти шаги не требуют паяльника и часто экономят и время сервиса, и ваши деньги: вместо «слепой» замены плат вы приносите уже нормальный лог и понятную картину.

FAQ по kernel log ASIC

Где смотреть kernel log на Whatsminer и Antminer? На Whatsminer журнал обычно есть в веб-интерфейсе (Kernel Log / System Log), а также в файлах kernel/current/history. У Antminer — отдельная вкладка *Kernel Log*. Для диагностики важен именно лог с момента холодного старта до появления ошибки.

Почему мало просто сказать «у меня ошибка 206/210», нужен полный лог? Один код не показывает первопричину. Например, 206 может быть следствием проблемы с вентилятором, EEPROM или PSU. Только по последовательности строк в kernel log видно, *что пошло не так раньше* — вентиляторы, калибровки плат, цепочки чипов или набор мощности.

Нужно ли вырезать из лога «лишнее» перед отправкой? Лучше нет. Удалять можно разве что очевидные конфиденциальные вещи (IP/hostname, если принципиально). Вырезки из 5–10 строк вокруг ошибки почти не помогают — сервис всё равно попросит полный лог с момента включения.

Опасно ли отправлять kernel log: нет ли в нём ключей и паролей? В нормальной прошивке kernel log не содержит приватных ключей, seed-фраз и паролей — там только технические сообщения. Журнал может включать серийные номера устройств и сетевые параметры; если это критично, их можно замазать, но для диагностики это редко необходимо.

Что делать, если майнер «иногда» запускается нормально — считать, что всё в порядке? Нет. Такой «плавающий» старт обычно говорит о граничных условиях: по воздуху, питанию или деградации платы. Kernel log в удачный и неудачный запуск помогает увидеть, чем отличаются условия (температура, напряжение, нагрузка) и где оборудование работает «на пределе».

См. также

Task Runner