При переходе на отечественные операционные системы семейства Linux, в частности на Astra Linux Common Edition, системные администраторы и пользователи часто сталкиваются с неожиданным поведением платформы 1С:Предприятие — для этих задач есть администрирование баз и кластеров 1С в Linux. Одной из самых распространенных проблем является ситуация, когда после успешной установки тонкого клиента и добавления информационной базы в список, кнопка «1С:Предприятие» остается серой и неактивной, хотя кнопка «Конфигуратор» может отсутствовать вовсе или также быть недоступной.
В этой статье мы подробно разберем, почему так происходит, проанализируем архитектурные особенности платформы 1С для Linux, опираясь на концепцию защищенной IT-инфраструктуры на базе Astra Linux, и изучим пошаговые инструкции по приведению системы в рабочее состояние.
Выясним главную техническую причину. В операционных системах семейства Windows мы привыкли к тому, что thin.client (тонкий клиент) является достаточно универсальным инструментом. Однако в мире Linux ситуация иная. Разберем ситуацию: если вы скачали и установили пакет, имеющий в названии префикс thin.client, вы получили приложение, которое не умеет работать с файловыми базами напрямую.
В дистрибутив тонкого клиента для Linux намеренно не включены библиотеки, необходимые для инициализации и работы с файловым движком базы данных. Это сделано для минимизации объема пакета. Тонкий клиент в Linux предназначен строго для работы в двух режимах:
Если вы добавили базу в список как «На данном компьютере или на компьютере в локальной сети» (указав путь к папке), тонкий клиент видит этот путь, понимает, что это файловый вариант, но не находит в своем составе библиотек для его запуска. Результат — кнопка запуска становится неактивной. Рассмотрим, как это можно исправить.
Для того чтобы работать с локальными файловыми базами без использования веб-сервера, нам необходимо установить пакеты клиентского приложения, которые включают в себя компоненты «толстого» клиента. Разберем по шагам процесс правильной установки на Astra Linux (также можно автоматизировать установку и обновление платформы с помощью готовых скриптов).
Проанализируем необходимые пакеты. Вместо 1cv8-thin-client нам потребуются следующие компоненты (названия могут варьироваться в зависимости от версии платформы):
1cv8-common — общие компоненты платформы.1cv8-client — клиентские приложения (включая толстый клиент).Если вы используете версию 8.3.20 и выше, пакеты могут называться иначе, например, единый пакет установки. После установки полного клиента при добавлении базы в список вы сможете выбрать режим запуска. Выберем в настройках базы тип «Толстый клиент», и кнопка «1С:Предприятие» мгновенно станет активной.
Если же ваша задача — использовать именно тонкий клиент (например, для экономии ресурсов или при работе через нестабильные каналы связи), нам необходимо изменить способ доступа к базе. Вместо прямого обращения к файлам мы настроим прослойку в виде веб-сервера.
Рассмотрим алгоритм действий:
sudo apt-get install apache2
webinst. Пример команды для публикации:
/opt/1cv8/x86_64/8.3.XX.XXXX/webinst -publish -apache24 -wsdir MyBase -dir /var/www/html/MyBase -connstr "File='/home/user/1c_bases/MyBase';" -confPath /etc/apache2/apache2.conf
http://localhost/MyBase.Как только тип подключения изменится на HTTP, тонкий клиент «поймет», что библиотеки файлового движка ему не нужны, так как всю работу с файлами берет на себя веб-сервер. Кнопка запуска станет доступной, а для удобства пользователей можно воспользоваться лаунчером с поддержкой доменной авторизации.
Проанализируем ситуацию, когда даже при правильном выборе пакетов кнопка остается неактивной или программа закрывается сразу после нажатия. В Astra Linux Common Edition (в отличие от Windows) 1С требует наличия множества сторонних библиотек для отрисовки графического интерфейса GTK+.
Выясним, какие пакеты должны быть установлены в системе обязательно. Для корректной работы графического движка 1С (библиотек libpyatspi.so, libwnck и других) выполним команду в терминале:
sudo apt-get update
sudo apt-get install libfontconfig1 libgsf-1-114 libglib2.0-0 libgtk-3-0
Особое внимание уделим шрифтам. Платформа 1С жестко завязана на метрики шрифтов Microsoft. Без пакета ttf-mscorefonts-installer элементы интерфейса (кнопки, надписи) могут рассчитываться некорректно, что иногда приводит к ошибкам инициализации окна формы. Установим их:
sudo apt-get install ttf-mscorefonts-installer
sudo fc-cache -f -v
Astra Linux — это операционная система с повышенными требованиями к безопасности. Разберем, как права доступа влияют на активность кнопок в 1С. Для того чтобы кнопка запуска была активной, 1С должна иметь возможность создать файл блокировки в каталоге базы данных (файл 1Cv8.1clck).
Если пользователь, под которым запущен тонкий клиент, имеет права только на чтение папки с базой, платформа может заблокировать запуск в режиме Предприятия. Проверим владельца и права доступа к каталогу с базой:
ls -l /путь/к/вашей/базе/
chmod -R 777 /путь/к/вашей/базе/
Важно: В рабочей среде права 777 избыточны, рекомендуется настроить права для конкретной группы пользователей 1c_users.
Также проанализируем содержимое домашнего каталога пользователя. 1С хранит настройки списка баз и кэш в скрытой директории ~/.1cv8. Если при установке или первом запуске под sudo права на эту папку перешли к пользователю root, обычный пользователь не сможет корректно инициализировать список баз. Исправим это:
sudo chown -R $USER:$USER ~/.1cv8
Если ни один из вышеперечисленных методов не помог, и кнопка по-прежнему неактивна, воспользуемся самым надежным способом диагностики в Linux — запуском через терминал. Это позволит нам увидеть скрытые ошибки, которые не выводятся в графическом интерфейсе.
Перейдем в каталог с установленной платформой и запустим исполняемый файл напрямую, передав ему параметры базы. Рассмотрим пример команды:
/opt/1cv8/common/1cestart
Внимательно изучим вывод консоли. Если вы увидите сообщения типа libXXXX.so: cannot open shared object file, это прямо указывает на отсутствие конкретной библиотеки в системе. Вам останется лишь найти, к какому пакету Astra Linux относится эта библиотека, и установить его через apt-get install.
Подводя итог нашему разбору, можно выделить три ключевых момента работы 1С на Astra Linux:
thin-client) предназначен только для HTTP или серверных подключений. Для локальных файлов ставьте client.Соблюдение этих правил позволит вам избежать проблем с «серой кнопкой» и обеспечит стабильную работу платформы 1С:Предприятие в среде Linux.