Гайд: Настройка графики в 1С на Astra Linux: исправление пустых окон и ошибок отрисовки

Решение проблем с графикой в 1С на Astra Linux: настройка X11, шрифтов, зависимостей и отключение аппаратного ускорения

2026.05.20                  


Гайд: Настройка графики в 1С на Astra Linux: исправление пустых окон и ошибок отрисовкиГайд: Настройка графики в 1С на Astra Linux: исправление пустых окон и ошибок отрисовки

Шаг 1. Проверка версии и типа клиента 1С

  1. Убедитесь, что используется штатный Linux-клиент, а не запуск через Wine/Proton.
2. Проверьте версию:
   1cv8 --version

Рекомендуется версия 8.3.22.x и новее (оптимально 8.3.24+). Старые сборки имеют известные баги рендеринга в современных X11/GTK3.

3. Если установлен тонкий клиент, попробуйте толстый (или наоборот):
   1cv8c   # тонкий клиент
   1cv8    # толстый клиент

Шаг 2. Дисплейный сервер и переменные окружения

1С официально работает только в X11.

Если сессия запущена в Wayland, графика может не отрисовываться.

echo $XDG_SESSION_TYPE
  • Должно быть x11. Если wayland -> завершите сеанс и на экране входа выберите Astra Linux (X11) или Fly.
- Принудительно задайте бэкенды перед запуском 1С:
  export GDK_BACKEND=x11
  export QT_QPA_PLATFORM=xcb
  export CLUTTER_BACKEND=x11
  1cv8

Шаг 3. Установка системных зависимостей

Откройте терминал и выполните:

sudo apt update
sudo apt install libgtk-3-0 libglib2.0-0 libpango-1.0-0 libcairo2 libfreetype6 \
  libfontconfig1 libx11-6 libxext6 libxrender1 libxrandr2 libxcursor1 libxi6 \
  libxcomposite1 libxfixes3 libxkbcommon0 libgbm1 libdrm2 mesa-utils

Для Astra Linux SE/CE пакеты обычно доступны в штатных репозиториях.


Если потребуется ttf-mscorefonts-installer, включите репозиторий contrib:

sudo sed -i 's/^# deb/deb/' /etc/apt/sources.list
sudo apt update && sudo apt install ttf-mscorefonts-installer

Шаг 4. Шрифты и кэш рендеринга

1С критичен к наличию шрифтов и корректному кэшу.

sudo fc-cache -fv
fc-list | grep -iE "arial|tahoma|segoe|noto|dejavu"

Если вывод пуст -> установите базовые шрифты:

sudo apt install fonts-noto fonts-dejavu fonts-liberation2

В самом клиенте 1С:

Файл -> Параметры -> Отображение -> попробуйте снять галочку "Использовать аппаратное ускорение" и "Сглаживание шрифтов", перезапустите клиент.


Шаг 5. Отключение аппаратного ускорения (часто решает проблему)

Запустите 1С с параметром отключения HWA:

1cv8 -DisableHWA

Или создайте обёртку в ~/.local/bin/1c-safe:

#!/bin/bash
export GDK_BACKEND=x11
exec 1cv8 -DisableHWA "$@"

Сделайте исполняемым: chmod +x ~/.local/bin/1c-safe и запускайте через неё.


Шаг 6. Особенности безопасности Astra Linux

В Astra Linux SE активно работают механизмы мандатного контроля (Parsec/МКД) и ограничения на выполнение файлов во временных директориях.

1. Проверьте монтирование /tmp и /home:
   mount | grep -E "tmpfs|/home|/opt"

Если видите noexec,nosuid на разделе, где лежит 1С или его кэш, клиент не сможет загружать временные графические модули.

Решение:

монтировать с exec или вынести рабочую директорию на разрешённый раздел.


2. Убедитесь, что клиент запущен от обычного пользователя, не от root:
   whoami
   ls -la ~/.1cv8/

Права должны быть user:user.

При необходимости:
   sudo chown -R $USER:$USER ~/.1cv8

3. Если используется профиль безопасности enhanced или maximum, попробуйте временно переключиться на standard для диагностики (только в тестовой среде):

   sudo pdp -s standard

Шаг 7. Диагностика через логи и терминал

Запустите клиент из терминала, чтобы увидеть ошибки в реальном времени:

LIBGL_DEBUG=verbose GTK_DEBUG=interactive 1cv8 2>&1 | tee ~/1c-debug.log

На что обратить внимание в выводе:

  • libgtk-3.so.0: cannot open shared object file -> переустановите libgtk-3-0
  • X11: cannot open display -> проблема с $DISPLAY или запуском по SSH без ssh -X
  • Mesa: failed to create DRI3 connection -> драйвер GPU или Mesa конфликтуют
  • Parsec: denied access to /tmp/... -> политика безопасности блокирует запись

Логи самого 1С находятся в ~/.1cv8/<имя_базы>/log/ и в журнале systemd:

journalctl --user -f | grep -i 1c

Шаг 8. Альтернативные варианты

Если графика не появляется после всех шагов:

  1. Веб-клиент: откройте базу через браузер (http://<сервер>:<порт>/base). Работает стабильнее на Linux.
  2. X11 Forwarding: если подключаетесь по SSH, используйте ssh -X или ssh -Y и убедитесь, что на сервере установлен xauth и openssh-server с X11Forwarding yes.
  3. Контейнеризация: запуск 1С в Docker с пробросом X11 и штатными зависимостями часто обходит конфликты хост-ОС.

Чек-лист быстрой проверки

Проблема Решение
Белое/пустое окно export GDK_BACKEND=x11 + отключение HWA в параметрах 1С
Не отрисовываются кнопки/сетки sudo fc-cache -fv + установка шрифтов fonts-noto
Ошибки libgtk, libcairo в терминале sudo apt install libgtk-3-0 libcairo2 libfreetype6
Запуск по SSH без графики ssh -X или ssh -Y, проверка echo $DISPLAY
Блокировка в Astra Linux SE Проверка mount на noexec, смена профиля pdp -s standard (тест)

Важные примечания

  • Не запускайте 1С от root и не меняйте права на системные библиотеки через chmod 777.
  • Перед изменением политик безопасности сделайте резервную копию конфигурации Parsec/МКД.
  • В корпоративной среде изменения в репозиториях и политиках согласовывайте с отделом информационной безопасности.

Удачи в настройке!