Banner brightness
Назад к кейсам

Что делать с проблемой графики Linux?

История создания GPU-Manager для Linux

Есть система в масштабе 10 000 машин – все на Linux и все с разными видеокартами NVIDIA. Заказчику, нужно «чтобы работало, как на Виндоус». Рассказываем, как получилось обойти ограничения NVIDIA, подчинить X11 и удовлетворить строгие требования Debian.

Проблема заказчика. Государственная организация столкнулась с трудностями при развертывании собственного дистрибутива Linux на базе Debian 10 на 10 000 рабочих станций, оснащенных видеокартами NVIDIA. 

«У нас нет нормального драйвера, – объяснял заказчик. – Нет удобного интерфейса. Нельзя настроить разрешение мониторов. Если драйвер сломается – система не загрузится. А если подключить два монитора – все рушится. И мы не можем просто поставить NVIDIA Driver с сайта – у нас запрет на закрытый код».

Решение. Мы создали GPU-Manager – приложение на C++ с Qt-интерфейсом. Это как NVIDIA Experience, но для Linux. С открытым кодом, автоматической установкой драйверов, поддержкой двух мониторов и откатом. После пяти месяцев разработки мы сдали заказчику готовый продукт, который успешно прошел проверку на соответствие требованиям Debian-репозиториев — как по безопасности, так и по семантике. Пакеты, размещаемые в этих репозиториях, должны строго соответствовать установленным стандартам: быть безопасными, корректно структурированными и соблюдать принятую семантику упаковки.

Вызов 1. Ограничения NVIDIA 

NVIDIA не дает драйверы в репозитории. Они лежат на их сайте в виде .run-файлов с кривыми названиями, без описаний. Нашей задачей было найти нужный драйвер под конкретную видеокарту, скачать его, установить и не сломать систему. 

Мы написали сканер, который парсит сайт NVIDIA, вытаскивает правильную версию, проверяет ее совместимость с видеокартой и ставит в один клик. В процессе разработки сайт NVIDIA оказался заблокирован на три дня. Из-за этого нам пришлось приостановить работу и ждать, пока доступ будет восстановлен.

Вызов 2. Древний X11

Linux использует X11. Это графическая библиотека, которая отвечает за то, что вы видите на экране. И сама библиотека, и документация к ней написаны почти 40 лет назад. Мы потратили несколько недель, чтобы разобраться в принципах ее работы.

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

Мы написали алгоритм, который считывает координаты мониторов, как будто это фрагменты пазла. И как бы они не стояли – система все равно знает, где правый, где левый.

Вызов 3. Строгие требования Debian 

У Debian очень высокие требования к пакетам. Он разбирает их на нолики и единички. Один пробел в описании пакета – и система его отклоняет. Не хватает строчки в логе – и он не проходит проверку безопасности. Каждый день в течение двух месяцев мы возвращались к пакету, исправляли и пересобирали его много раз, пока не довели до соответствия всем стандартам. 

На данный момент GPU-Manager – это единственное приложение, которое закрывает «графический вопрос» для Linux. Эта утилита обеспечивает простой, интуитивно понятный интерфейс для управления видеодрайверами и мониторами. 

Смотрите другие кейсы

многие кейсы обезличенны, потому что мы ценим 
конфиденциальность наших клиентов и подписываем NDA.

Что делать с проблемой графики Linux?

История создания GPU-Manager для Linux

Как мы защитили от кибератак закрытое оборонное предприятие

Нам необходимо было создать систему, которая исключает любые возможности удаленного взлома, обеспечивает детектирование сложных угроз (включая инсайдерские) и гарантирует физическую и логическую секретность данных.

Комплексный аудит безопасности для аграрного холдинга

Без четкого понимания реального состояния своей IT-инфраструктуры компания может находиться в одном шаге от серьезного инцидента.

Стратегический ИБ-аудит для крупной компании

Как мы нашли тихие угрозы в стабильной инфраструктуре

От хаоса к порядку. Создаем цифровую экосистему для строительных СРО

Разрабатываем CRM и автоматизируем процессы, чтобы упростить взаимодействие организаций.