Отношения клиентского приложения 1С:Предприятие и Linux безоблачными не назовешь, хотя нативный клиент для Linux существует уже довольно давно. Но постоянно следует учитывать массу тонкостей и уметь преодолевать сложности, особенно если вы хотите использовать клиент 1С на свежих выпусках дистрибутивов Linux. Сегодня мы разберем основные типовые проблемы запуска и пути их решения. А также немного прольем свет на причины всего происходящего.
Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Обычно, в случаях проблем с установкой или запуском клиента 1С:Предприятия в среде Linux принято ругать разработчиков 1С. Если быть до конца честными, то ряд претензий, конечно, обоснован, но давайте обратимся к одному интересному документу, который называется Системные требования «1С:Предприятия 8». Так как информация на веб-странице постоянно меняется, то мы специально сделали скриншот с поддерживаемыми на момент написания статьи операционными системами.
И поэтому, каждый раз после возникновения проблем следует спросить себя: а есть ли моя система в списке поддерживаемых? Нет? Ну так тогда какие претензии к 1С? Никто ничего не обещал.
Но в тоже время выходят новые дистрибутивы, которые несут в себе массу интересного и полезного, поэтому многим хочется получить сразу всё: и новый дистрибутив и работающую в нем 1С. Можно ли это сделать? Можно, но следует понимать, что в случае возникновения каких-либо иных проблем поддержки вы не получите. Официально вам укажут не неподдерживаемую ОС и могут даже не посмотреть что там у вас за проблема. Поэтому все описанные ниже действия производим на свой страх и риск.
Основным способом распространения клиентского дистрибутива 1С является Единый дистрибутив, как с ним работать рассказано в нашей статье:
Единый дистрибутив 1С:Предприятие для Linux. Установка клиента
Итак, вы скачали дистрибутив, установили его, а с этим проблем обычно не возникает, но клиент не запускается. Что делать? В этом случае открываем терминал и вводим в него команду:
/opt/1cv8/x86_64/8.3.24.1624/1cv8
Где 8.3.24.1624 - номер установленной вами платформы, после чего внимательно читаем вывод, где и будет ключ к решению возникшей проблемы.
Ошибка error while loading shared libraries: libwebkit2gtk-4.0.so.37
Данная ошибка проявляется в Ubuntu 24.04 LTS и Debian 12, обозначает она то, что клиент 1С:Предприятие не может найти требуемую библиотеку, ситуацию осложняет то, что библиотека ему требуется строго указанной версии.
Начинаем с того, что проверяем наличие требуемой библиотеки в репозиториях дистрибутива, для DEB-систем выполните:
apt search libwebkit2gtk
В Debian 12 нужный пакет присутствует и его достаточно установить командой:
apt install libwebkit2gtk-4.0-37
В Ubuntu 24.04 LTS пакет более новой версии и 1С:Предприятие с ним работать не будет, поэтому идем на packages.ubuntu.com и ищем нужный пакет там. При этом искать желательно в репозиториях LTS-версий.
В нашем случае требуемый пакет нашелся в репозитории Ubuntu 22.04 LTS Jammy. Но не все так просто, если мы просто скачаем пакет и попробуем его установить, то он потребует зависимости, поэтому вам возможно придется скачать и установить сразу несколько пакетов. Для Ubuntu 24.04 нужно будет скачать:
После чего устанавливаем их в следующем порядке (версии пакетов, возможно, придется уточнить):
dpkg -i libicu70_70.1-2_amd64.deb
dpkg -i libjavascriptcoregtk-4.0-18_2.44.2-0ubuntu0.22.04.1_amd64.deb
dpkg -i libwebkit2gtk-4.0-37_2.44.2-0ubuntu0.22.04.1_amd64.deb
После чего 1С:Предприятие начнет нормально запускаться.
Ошибка libstdc++.so.6: version 'GLIBCXX_3.4.30' not found
С данной ошибкой мы столкнулись в Astra SE 1.8, Альт p11/Sisyphus и РЕД ОС 8. Она связана с порочной практикой 1С поставлять вместе с платформой системные библиотеки, с одной стороны таким образом 1С пытается уменьшить зависимость от конкретного дистрибутива, но в нашем случае собранная на одной платформе библиотека некорректно работает в другой.
Решение здесь простое - библиотеку из комплекта следует удалить или переименовать, после чего 1С начнет использовать одноименную библиотеку из состава системы которая лишена указанных проблем. Так как удалять - это плохое решение, то мы библиотеку переименуем и сделать это нужно в двух местах:
mv /opt/1cv8/x86_64/8.3.24.1624/libstdc++.so.6 /opt/1cv8/x86_64/8.3.24.1624/libstdc++.so.6.old
mv /opt/1cv8/common/libstdc++.so.6 /opt/1cv8/common/libstdc++.so.6.old
В первой команде в путь входит номер установленной платформы, уточните и скорректируйте его при необходимости. После того как вы переименуете библиотеку клиент 1С начнет нормально запускаться.
Ошибка libgcc_s.so.1: version `GCC_12.0.0' not found
Данная ошибка была получена в Альт p11/Sisyphus, в частности в дистрибутиве Ximper после того как мы вылечили предыдущую. Причины все те же - собранная в другой среде библиотека некорректно работает в текущем окружении. Лечение аналогичное:
mv /opt/1cv8/x86_64/8.3.24.1624/libgcc_s.so.1 /opt/1cv8/x86_64/8.3.24.1624/libgcc_s.so.1.old
mv /opt/1cv8/common/libgcc_s.so.1 /opt/1cv8/common/libgcc_s.so.1.old
После чего проблем с запуском и работой клиента 1С у нас не возникло.
Заключение
Как видим, запуск клиента 1С:Предприятие в среде современных дистрибутивов Linux вполне возможен. Мы без проблем запустили его во всех актуальных системах, таких как Debian и Ubuntu, а также в последних версиях основных отечественных дистрибутивов Astra, Альт и РЕД ОС.
Однако не забываем, что официальной поддержки этих систем со стороны 1С:Предприятие до сих пор нет, поэтому все риски дальнейшей поддержки и эксплуатации вам придется взять на себя.
Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Последние комментарии