uVersion
Русский
Скачать →

Wiki

Устранение неполадок

Решения распространённых проблем: служба не запускается, отклонён код активации, PostgreSQL, TLS.

Служба не запускается

Linux: systemctl start завершается ошибкой
sudo journalctl -u uversion-server -n 100 --no-pager

Частые причины:

  • PostgreSQL не запущен: sudo systemctl status postgresql
  • Утерян пароль БД: postinst повторно генерирует конфигурацию с помощью --reconfigure (sudo dpkg-reconfigure uversion-server)
  • Порт 8443 занят: см. отдельный раздел ниже
Windows: ошибка 1053 или 1067

Служба запускается, а затем останавливается. Проверьте Event Viewer:

Get-EventLog -LogName Application -Source uVersionServer -Newest 50

Частые причины:

  • Отсутствует переменная окружения CONFIG_PATH: обычно задаётся установщиком в HKLM\SYSTEM\CurrentControlSet\Services\uVersionServer\Environment
  • PostgreSQL не запущен: Get-Service postgresql*

Код активации отклоняется

  • Убедитесь, что код не использовался на другой машине (каждый код привязан к server-ID первой установки). Запросите новый код в своём личном кабинете.
  • Проверьте связь с licence.uversion.io: curl -I https://licence.uversion.io/api/v1/health
  • Если вы хотите повторно использовать код на новой машине после удаления, обратитесь в поддержку, чтобы освободить предыдущий server-ID.

PostgreSQL недоступен

Служба uVersion не может подключиться к базе данных. Проверьте вручную:

# Linux
sudo -u postgres psql -c "SELECT 1;"

# Windows
& "C:\Program Files\PostgreSQL\16\bin\psql.exe" -U postgres -h 127.0.0.1 -c "SELECT 1;"

Если PostgreSQL установлен, но пароль суперпользователя утерян, установщик uVersion (как postinst в Linux, так и install.ps1 в Windows) может автоматически вернуть PostgreSQL в режим trust, сбросить пароль, а затем восстановить исходную конфигурацию. Запустите повторно:

# Linux
sudo dpkg-reconfigure uversion-server

# Windows
iwr https://uversion.io/downloads/server/install.ps1 -UseBasicParsing | iex
# (re-passe par le script avec -Reconfigure)

Порт 8443 уже занят

uVersion по умолчанию слушает HTTPS на порту 8443 (и оставляет 8080 открытым как HTTP-запасной вариант). Если один из них занят:

# Linux
sudo ss -tlnp | grep -E '8443|8080'

# Windows
Get-NetTCPConnection -LocalPort 8443 | Select-Object OwningProcess, State
Get-Process -Id <PID>

Чтобы изменить порт TLS, отредактируйте config.toml:

[tls]
https_port = 9443

Затем перезапустите службу.

Клиент отклоняет TLS-соединение

uVersion использует самоподписанный сертификат, закреплённый через TOFU на стороне клиента (см. Отпечаток TLS). Самые частые причины:

  • Первое подключение не подтверждено: настольный клиент показывает диалоговое окно с отпечатком. Сравните его с тем, что вам сообщил администратор. В CLI выполните uversion trust <url>.
  • Отпечаток изменился (красное предупреждение): сервер был переустановлен и заново сгенерировал свой сертификат. Подтвердите out-of-band с администратором, затем:
    • Настольный клиент: нажмите Trust new fingerprint в красном диалоговом окне
    • CLI: uversion mistrust <url> затем uversion login <url>
  • Сервер не предоставляет HTTPS: проверьте, что он действительно слушает на 8443, а не на 8080:
    # Linux
    ss -tlnp | grep 8443
    # Windows
    Get-NetTCPConnection -LocalPort 8443 -State Listen
    Если ничего не слушает, проверьте, что [tls] disabled = false в config.toml (это значение по умолчанию).
  • Повторно показать отпечаток на стороне сервера:
    # Linux
    sudo cat /var/lib/uversion/data/tls/fingerprint
    # Windows
    Get-Content "C:\ProgramData\uVersion\data\tls\fingerprint"

Полный сброс

См. страницы Удаление в Ubuntu/Debian или Удаление в Windows, чтобы начать с чистой установки.