Обновление службы установки (контроллера)
Когда панель просит обновить службу установки и как выполнить на сервере команду install.sh --update-controller.
Служба установки (контроллер) — отдельная служба на сервере, которая ставит выпуски трекера по команде из вкладки Настройки → Обновления. Она ставится вместе с трекером, но при обновлении из панели не меняется: её обновляют отдельно, командой в терминале. Понадобится доступ к серверу по SSH с правами root.
Когда нужно обновлять
Откройте Настройки → Обновления под учётной записью владельца установки. Остальным вкладка показывает «Обновления доступны только владельцу установки» — см. кто может обновлять.
Под блоком Установленная версия есть строка «Служба установки: 20261004 · протокол 1». Число — версия службы на вашем сервере. Если служба версию не сообщает, вместо числа написано «прежняя версия».
Обновлять службу нужно, когда новый выпуск трекера требует более новую её версию. Тогда на вкладке появляется сообщение:
Сначала обновите службу установки на сервере: bash install.sh --update-controller. Работающий трекер сохраняется.Кнопка Установить… в карточке «Доступна версия …» при этом неактивна.
Второй признак — на вкладке нет блока Локальные копии обновлений. Блок появится после обновления службы, см. Локальные копии обновлений.
Обновление на сервере
- Убедитесь, что в панели не идёт обновление, создание копии или восстановление. Если идёт, дождитесь окончания.
- Подключитесь к серверу по SSH.
- Скачайте установщик первой командой.
- Запустите его от root с параметром
--update-controllerвторой командой. - Дождитесь строки с результатом.
curl -fsSLo install.sh https://install.micator.com/install.sh
sudo bash install.sh --update-controllerУстановщик печатает «Загружаю подписанный выпуск…», скачивает архив выпуска целиком и обновляет службу. При успехе в терминале появится:
Контроллер обновлён: 20261004. Трафик не останавливался.Число в строке — новая версия службы.
Трекер установлен не в /opt/tracker
Если при установке каталог задан параметром --path, укажите его и здесь:
sudo bash install.sh --update-controller --path /opt/micatorПуть должен иметь вид /opt/имя: латинские буквы, цифры, _ и -.
Скачивайте install.sh заново перед каждым запуском. В файле записан адрес конкретного выпуска: копия, скачанная раньше, может вести на прежний выпуск.
Что делает команда
- Скачивает выпуск и проверяет его подпись ключом, закреплённым за установкой: файл
/opt/tracker/.updates/trusted-release.pem. Ключ из скачанногоinstall.shв этом режиме не используется. - Записывает новую службу в отдельный каталог внутри
/usr/local/lib/tracker-updater-releases/. Файлы прежней службы остаются на сервере. - Переключает службу
tracker-updates.serviceна новые файлы, перезапускает её и проверяет, что она отвечает новой версией.
Трекер, базы и данные команда не затрагивает. Клики и постбеки принимаются без паузы, панель продолжает работать.
Если новая служба не прошла проверку, установщик возвращает прежнюю и пишет «Обновление не завершено. Возвращён прежний контроллер.» Версию ниже установленной команда не ставит.
Проверка
- Откройте Настройки → Обновления. Если вкладка была открыта, обновите страницу.
- Найдите строку «Служба установки: …». В ней должна быть версия из терминала.
- Убедитесь, что сообщение о службе установки исчезло, а кнопка Установить… активна.
Если карточки «Доступна версия …» на вкладке нет, нажмите Проверить обновления. Дальше выпуск ставится из панели — см. Обновление трекера из панели.
Если не получилось
Команду можно запускать повторно.
| Сообщение в терминале | Причина | Что сделать |
|---|---|---|
| Установку запускать через sudo. | Команда запущена не от root | Запустите с sudo |
| Некорректный путь установки. | В --path указан каталог не вида /opt/имя | Укажите каталог, в который установлен трекер |
| Не найден закреплённый ключ установки. | В каталоге нет файла .updates/trusted-release.pem: указан не тот каталог или трекер в нём ещё не запускался | Проверьте --path. Без параметра используется /opt/tracker |
| Подпись выпуска не прошла проверку. Установка остановлена. | Архив скачан не полностью, изменён или подписан не тем ключом, который закреплён за установкой | Скачайте install.sh заново и повторите. См. Подпись и состав выпуска |
| Нужен root и каталог установленного трекера. | Каталог установки — символическая ссылка, либо команда запущена не от root | Запустите с sudo и укажите в --path сам каталог трекера |
| Обновление контроллера предназначено для клиентской установки. | Каталог не принадлежит root, открыт на запись другим пользователям или содержит .git | Запускайте команду только на трекере, установленном через install.sh |
| Сначала завершите установку или восстановление. | Не завершён мастер первого запуска, либо обновление трекера идёт или прервано | Завершите мастер или дождитесь окончания обновления на вкладке Обновления |
| На сервере уже выполняется операция. | Идёт копия, восстановление, проверка или установка обновления, очистка копий | Дождитесь окончания и повторите |
| Дождитесь окончания обновления или восстановления. | Служба установки занята или заблокирована после неудавшегося возврата прежней версии | Дождитесь окончания операции на вкладке Обновления. При блокировке — см. Блокировка |
| Не найдена штатная служба обновлений. | На сервере нет файла службы /etc/systemd/system/tracker-updates.service | Запускайте команду только на трекере, установленном через install.sh |
| Этот выпуск не содержит совместимый контроллер. | В скачанном выпуске нет службы нужной версии | Скачайте install.sh заново и повторите |
| Понижение версии контроллера запрещено. | В скачанном выпуске служба старее установленной | Скачайте install.sh заново и повторите |
| Неполный комплект контроллера. | В выпуске нет части файлов службы | Скачайте install.sh заново и повторите |
| Обновление не завершено. Возвращён прежний контроллер. | Новая служба не запустилась или не подтвердила версию | Работает прежняя служба. Повторите команду. Журнал службы — см. Службы systemd |
Сообщения «Операция не завершена: …», «Команда … завершилась ошибкой (N).» и сообщения установщика о системе, загрузке и составе выпуска разобраны на странице Ошибки установки и их устранение. Остальные параметры install.sh — в справочнике установщика.