← Все руководства

Обновите оператора (не теряя идентичность)

Безопасно обновите работающего оператора Halo: обновите CLI, перезапустите сервис, проверьте через doctor — кошелёк, репутация и заработок сохраняются.

Оператор — это долгоживущий сервис, поэтому его обновление состоит из двух частей: обновить CLI, а затем перезапустить сервис, чтобы он действительно выполнял новый код. Демон, который автоматически перезапускается при сбое, всё равно выполняет старую сборку — обновление подхватывается только после перезапуска.

Ваш кошелёк — это ваша идентичность: на нём живут заработок, очки лиги и привязка к дашборду. Вся процедура ниже не затрагивает ~/.halo/.

1. Обновите CLI

npm rm -g halo-cli
bash <(curl -fsSL https://raw.githubusercontent.com/warden-protocol/run-halo/main/skill/scripts/install.sh)

Первая команда важна: установщик завершается досрочно, если halo уже есть в вашем PATH. Подробности — в обновлении CLI halo.

2. Перезапустите сервис

Подкоманды restart нет — удалите и заново установите unit:

halo service uninstall serve
halo service install serve

Если вы передавали демону аргументы, передайте их снова после --, ровно так же, как в первый раз. Если keystore вашего кошелька защищён парольной фразой, экспортируйте HALO_PASSPHRASE перед install — она встраивается в окружение сервисного unit-файла, чтобы демон мог разблокировать кошелёк без участия человека.

Простой занимает несколько секунд. Тем не менее обновления засчитываются как офлайн-время, как и любой другой перезапуск, поэтому предпочитайте часы низкого трафика — тот же совет, что и в как удержать оператора онлайн.

3. Проверьте

halo doctor --json          # install + wallet state, provider, relay health
halo service status serve   # is the daemon back up?
halo service logs serve     # watch the first requests arrive

Убедитесь, что doctor сообщает тот же адрес кошелька, что и раньше, — так и будет, если только кто-то не передал --rotate-wallet, который никогда не является частью обновления.

Связанные материалы