Установить бесплатно

ДокументацияУстановка

Разделы документации

РУКОВОДСТВО СПЕКТР

Установка

Установка, первый вход и первая камера. Требования и диагностика — по мере необходимости.

На этой странице

Подготовьте сервер, установите СПЕКТР и откройте его адрес в браузере. Затем добавьте первую камеру и проверьте запись. Пробную лицензию можно подключить позже, если нужны расширенные возможности.

Что нужно

  • Постоянно работающий компьютер или виртуальная машина с Ubuntu 22.04 LTS.
  • От 4 ГБ памяти для небольшого объекта и диск под записи.
  • Камеры с RTSP-потоком в доступной серверу локальной сети.
  • Доступ к консоли сервера для установки.

Если сервер ещё не выбран, начните с раздела «Выбор сервера». Подробности о нагрузке и пропускной способности — в разделах «Производительность» и «Сеть».

Установка

Всё делается в консоли того сервера, куда ставим. Скачивать браузером и копировать файл по сети не нужно.

wget https://vspektre.ru/dl/spektr-latest-py3.10.tar.gz
tar xzf spektr-latest-py3.10.tar.gz
cd spektr-*/
sudo bash install.sh

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

Установщик подготовит нужные пакеты и запустит службу. Когда всё закончится, на экране появится адрес вида http://192.168.1.50:8080. Подробности о проверке архива, совместимости сборки и ходе установки собраны ниже.

Первый вход

Откройте этот адрес в браузере с любого устройства в той же сети — с компьютера, телефона или планшета.

Логин admin, пароль admin.

Сразу смените пароль: меню учётной записи → «Мои настройки» → «Сменить пароль». Пока пароль не сменён, система будет напоминать об этом при каждом входе.

Добавьте первую камеру

Откройте Настройки → Поиск камер и выберите камеру. Если её нет в списке, добавьте вручную кнопкой «+ Камера». Укажите логин и пароль камеры, основной и дополнительный потоки.

Откройте просмотр и проверьте запись в архиве. В Настройки → Здоровье видны состояние потока, записи и детектора. Подробные настройки — в инструкции по подключению камеры.

Лицензия и пробный период

Бесплатный локальный запуск не требует облачной регистрации. Без файла лицензии СПЕКТР работает в бесплатном режиме: до 16 камер, один пользователь. Подключите камеру и проверьте запись, прежде чем настраивать дополнительные возможности. Все первые шаги собраны в кратком порядке запуска.

Для расширенной пробы на 14 дней:

  1. Создайте личный кабинет на vspektre.ru и подтвердите адрес почты по ссылке из письма. Без подтверждения кабинет не выпускает лицензию.
  2. Добавьте сервер в кабинете. С этого момента начинается пробный период, даже если СПЕКТР ещё не установлен на Вашем оборудовании.
  3. Откройте раздел «Лицензия» этого объекта и скачайте готовый файл.
  4. Откройте файл как текст. В локальном СПЕКТР перейдите в Настройки → Лицензия, вставьте содержимое в поле «Ключ лицензии» и нажмите «Активировать». Это текстовое поле, не загрузчик файла.

Первый вход admin/admin не создаёт облачный кабинет и не применяет лицензию. Автоматическое продление — другой этап: ему нужны реквизиты подписки из уже применённой лицензии и связь с сервером лицензий.

Если файл ещё не выпущен либо сервер без интернета: в локальной вкладке «Лицензия» раскройте «Сервер без интернета: получить лицензию вручную» и скопируйте строку активации. На устройстве с интернетом откройте кабинет, «Лицензия» → «Сервер без интернета», вставьте строку и выпустите файл. Затем примените его содержимое в поле «Ключ лицензии» на сервере.

Проверка подписанного файла выполняется локально и не требует интернет-связи. Срок и возможности видны в той же вкладке. Облачный Cabinet управляет лицензией и подпиской; камеры открываются по адресу Вашего сервера, а не на vspektre.ru.

Доступ снаружи

По умолчанию система доступна только из Вашей локальной сети — так безопаснее. Для штатного удалённого доступа нужна лицензия с этой возможностью. Чтобы смотреть камеры из другой сети, откройте Настройки → Удалённый доступ, включите тумблер и впишите имя — например sklad-1. Всё остальное уже настроено: адрес нашего сервера, порт и токен приезжают вместе с продуктом.

Система станет доступна по адресу вида имя.cam.vspektre.ru. Белый IP-адрес, проброс портов и настройка роутера не нужны — сервер сам держит исходящее соединение.

Имя лучше сначала закрепить за собой в личном кабинете на vspektre.ru: занятое кем-то имя система не отдаст, и туннель не поднимется. Если что-то не так, причина написана красной строкой прямо под тумблером — пришлите её нам, она называет проблему точно.

Обновление

Система сама скажет, когда вышла новая версия. Раз в сутки, если у сервера есть интернет, она спрашивает нас, не появилось ли обновление, и показывает ответ в Настройках → Система, рядом с номером текущей версии. Там же кнопка «Проверить», если ждать сутки не хочется.

Наружу при этом уходит только версия Python — по ней подбирается подходящая сборка. Ни адресов, ни имён камер, ни отпечатка сервера мы не спрашиваем. Проверку можно выключить: параметр update.check в той же вкладке.

Обновиться можно кнопкой. Рядом со строкой «Доступна версия X» есть кнопка «Обновить до X». Сервер скачает подписанную сборку, проверит подпись и переустановит себя — на это уходит одна-три минуты, и на это время служба останавливается: живые просмотры прервутся, запись остановится. Настройки, камеры, архив и события не трогаются. Если новая версия не запустится, прежняя вернётся сама.

Тем, кому привычнее терминал, — те же команды, что и при установке:

wget https://vspektre.ru/dl/spektr-latest-py3.10.tar.gz
tar xzf spektr-latest-py3.10.tar.gz
cd spektr-*/
sudo bash install.sh

Настройки, камеры, записи и события сохраняются. Установщик заменяет только код: данные лежат отдельно, в /var/lib/spektr, и он их не трогает. Служба перезапустится, живые просмотры прервутся на минуту.

Если распаковываете в тот же каталог, где лежит прошлая версия, cd spektr-*/ найдёт две папки. Тогда заходите в новую по полному имени — оно видно после распаковки.

Второй диск под записи

Каталог для записей должен принадлежать пользователю spektr — под ним работает служба. Второй диск обычно смонтирован от root, и служба не может создать в нём подкаталог. Поэтому один раз в терминале:

sudo mkdir -p /mnt/disk2/spektr && sudo chown spektr:spektr /mnt/disk2/spektr

и затем Настройки → Хранилище → Новое хранилище, каталог /mnt/disk2/spektr. Для NTFS, exFAT и сетевых дисков chown не работает — владельца задают при монтировании, опциями uid=spektr,gid=spektr в /etc/fstab.

Удаление

Запустите из распакованного архива:

sudo ./uninstall.sh

Скрипт спросит отдельно, удалять ли записи: они лежат в /var/lib/spektr и по умолчанию остаются.

Выбор сервера

Сервер. Отдельный компьютер или виртуальная машина, работающая круглосуточно. Подойдёт мини-ПК, системный блок или ВМ на Вашем сервере.

Камер Ядер Память Диск
до 4 2 4 ГБ от 250 ГБ
до 12 4 8 ГБ от 1 ТБ
до 24 8 16 ГБ от 2 ТБ

Это ориентир для записи. Для распознавания объектов дополнительно проверьте производительность процессора.

Диск — главное. Одна камера 4K пишет около 40 ГБ в сутки, камера Full HD — около 12 ГБ. Считайте так: число камер × суточный объём × сколько суток хранить. Не хватит места — система сама удалит самые старые записи, ничего не сломается, но глубина архива окажется меньше ожидаемой.

Операционная система и сборка

Ubuntu 22.04 LTS, Python 3.10, x86-64. Для Debian, Astra Linux и других систем сначала нужна сборка под установленную minor-версию Python. Не используйте архив py3.10 на Python 3.11/3.12: установщик проверяет ABI и остановится при несовпадении.

Производительность

Ядра из таблицы — про запись, а не про распознавание. Запись и детекция движения — это много лёгких процессов, они делятся по ядрам почти поровну, и чем ядер больше, тем больше камер. А вот распознавание объектов (кто именно в кадре: человек, машина, животное) считает нейросеть, и её цену задаёт не количество ядер, а то, какие векторные инструкции умеет процессор и как быстро у него память. Поэтому старый серверный процессор, который по таблице «проходит с запасом», на распознавании может оказаться медленнее современного четырёхъядерного мини-ПК.

Если распознавание объектов Вам нужно — а без него не работает большинство сценариев, — при выборе железа смотрите на процессор, а не только на число ядер:

  • Процессор не старше 2019 года. В одном из замеров стенд с Xeon E5-2670 v3 2014 года и двумя выделенными ядрами записывал камеры, а один кадр нейросети считал 0.1 секунды: при таком темпе на все объекты в кадре времени не хватает, система сама снижает частоту проверок и часть объектов остаётся без класса.
  • Мини-ПК на современном процессоре — лучше списанного сервера. Ядер меньше, но каждое считает нейросеть заметно быстрее.
  • Встроенное видеоядро Intel — плюс. Оно умеет считать нейросеть вместо процессора и разгружает его; продукт это поддерживает.

Векторные инструкции процессора

Для распознавания полезны AVX2, AVX512 и VNNI. Проверить их поддержку в Linux можно так:

lscpu | grep -o 'avx2\|avx512[a-z]*\|vnni' | sort -u

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

Сеть

Сеть. Камеры и сервер в одной локальной сети. Камеры должны отдавать поток по RTSP — это умеют практически все.

Полоса до камер — считайте заранее, это ловит объекты от 30 камер. Сервер забирает у каждой камеры два потока (основной и дополнительный), и весь этот трафик течёт через коммутаторы между камерами и сервером. Камера Full HD даёт 2–4 Мбит/с, 4K — 8–12; двадцать камер — уже под 100 Мбит/с. Если по дороге стоит хоть одно 100-мегабитное звено (старый коммутатор, стык между коммутаторами, кабель, «договорившийся» на 100), при добавлении камер оно упирается в потолок, и дальние камеры начинают отваливаться — все разом и без видимой причины, хотя каждая по отдельности пингуется. Признак: пинг до камер с сервера в десятки и сотни миллисекунд вместо долей миллисекунды.

Правила простые: стыки между коммутаторами и порт сервера — гигабитные; основной поток камеры — не выше 4 Мбит/с для Full HD (постоянный битрейт); держите запас хотя бы в треть от полосы самого узкого звена. Всё это видно в Настройки → Сеть: сколько приходит на каждую карту сервера, сколько даёт каждая камера и сколько к ней открыто сессий, а по кнопке «Замерить задержки» — время ответа каждой камеры; ниже — выводы, что именно на пределе и какие камеры тяжелее всех.

Удалённое подключение

Штатный удалённый доступ использует внешний FRP-туннель. Сервер держит исходящее соединение; белый IP-адрес и проброс портов не нужны. Для этого пути нужны лицензия с удалённым доступом, закреплённый поддомен, интернет на обеих сторонах и доступная служба туннеля. Видео продолжает храниться на Вашем сервере. Настройка доступа, проверка медленного соединения.

Технические сведения об установке

Установка занимает несколько минут, и дольше всего идёт шаг «Python venv + зависимости». На нём скачивается около 200 мегабайт библиотек — это нормально, и на медленном канале может занять и десять минут. Установщик показывает, что именно качается; если хочется убедиться со стороны, в другом терминале: du -sh /opt/spektr/venv — каталог должен расти.

py3.10 в имени — это не мелочь. Внутри лежит байткод, а он привязан к версии Python: сборка под 3.10 не запустится на 3.11 или 3.12. Версия 3.10 — это Ubuntu 22.04. Если у Вас другая система, скачивать надо сборку под её версию; установщик проверит совпадение и остановится, ничего не изменив, а не поставит наполовину.

Проверить, что файл дошёл целым:

curl -fsSL https://vspektre.ru/dl/SHA256SUMS | sha256sum -c --ignore-missing

Должно ответить OK. Если нет — файл скачался не полностью, повторите загрузку. Проверка не лишняя: оборванная закачка выглядит как обычный архив, а распакуется с ошибкой уже в середине установки.

Если wget не установлен — sudo apt install -y wget, либо то же самое через curl -O.

Установщик сам поставит недостающие пакеты, создаст служебного пользователя, разложит файлы и запустит службу. Он проверяет, свободны ли нужные порты (8080 для веб-интерфейса, 8554 и 1984 для внутренней работы), и если чем-то занят — скажет об этом до того, как что-либо изменит.

Не нашли ответа? Напишите в поддержку. Укажите версию СПЕКТР и шаг, на котором возникла проблема.