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, чтобы начать с чистой установки.