Установка клиента 1С:Предприятие 8.3 на Debian / Ubuntu

Администрирование - Системное

36
В последние годы интерес к альтернативным ОС, прежде всего Linux, возрастает, причем не только со стороны пользователей, но и со стороны разработчиков. Фирма 1С достаточно давно развивает свою платформу для использования в среде Linux, а теперь к ней стали подтягиваться производители торгового оборудования, выпуская драйвера и для этой ОС. Поэтому использование Linux в качестве платформы для рабочего места выглядит все более привлекательно и сегодня мы обобщим свой опыт и расскажем об установке клиентской части 1С:Предприятие в среде современных выпусков Debian / Ubuntu.

Так как в требованиях к актуальным релизам 1С:Бухгалтерия значится минимальный релиз платформы 8.3.12.1529, то мы будем устанавливать последнюю версию платформы 8.3.12 - 8.3.12.1685, а затем обновим ее до 8.3.13.1513, тем не менее все сказанное будет актуально для всех текущих версий платформы 8.3.

Для установки мы будем использовать следующие версии операционных систем и рабочих окружений: Debian 9.5(Gnome 3), Ubuntu 16.04.5 LTS (Unity) и Xubuntu 18.04.1 LTS (XFCE 4). Мы специально выбрали разные рабочие среды, чтобы оценить их влияние на процесс установки, но скажем сразу, особого влияния выбранная рабочая среда не имеет, за исключением предустановленного набора пакетов, поэтому мы постараемся дать максимально развернутую инструкцию, которая во многих случаях окажется избыточной.

Также данная статья будет актуальна для всех дистрибутивов производных от Debian / Ubuntu с поправкой на версии пакетов, для этого обратитесь к документации вашего дистрибутива.

Платформа 8.3.12 и более ранние

Прежде всего установим все необходимые зависимости. В различных версиях ОС и рабочего окружения разный набор установленных по умолчанию пакетов, поэтому мы дадим универсальный вариант, и, если вы увидите сообщение типа:

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

Если вы используете Debian, то мы рекомендуем подключить все репозитории, для этого откройте /etc/apt/sources.list и добавьте после main в каждую строку contrib и non-free.

Затем обновим список пакетов:

apt update

и установим:

apt install libwebkitgtk-3.0-0
apt install ttf-mscorefonts-installer
apt install libfontconfig1
apt install libgsf-1-114
apt install libglib2.0-0
apt install libodbc1

Часть пакетов у вас уже может быть установлена, это нормально, мы специально пошли по пути избыточности, ради универсальности данного материала.

Следующий пакет должен быть установлен по умолчанию, но на всякий случай следует проверить.

Для Ubuntu 16.04:

apt install libmagickwand-6.q16-2

Для Debian 9 и Ubuntu 18.04:

apt install libmagickwand-6.q16-3

Для установки клиентской версии платформы вам потребуется скачать с сайта 1С два архива: Клиент 1С:Предприятия для DEB-based Linux-систем и Cервер 1С:Предприятия для DEB-based Linux-систем. Обратите внимание, что разрядность скачиваемых архивов должна соответствовать разрядности системы, мы не видим особой необходимости в использовании x32 (i386) систем, поэтому в дальнейшем, если это не оговорено особо, все действия будут производиться для платформы x64 (amd64).

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

  • client - клиентские приложения (толстый клиент и тонкий клиент) «1С:Предприятия»
  • thin-client - тонкий клиент «1С:Предприятия» (не поддерживается работа с файловым вариантом информационной базы)

В состав сервера:

  • common - общие компоненты «1С:Предприятия»
  • server - компоненты сервера «1С:Предприятия»
  • ws - адаптер для публикации Web-сервисов «1С:Предприятия» на веб-сервере на основе Apache HTTP Server 2.0, 2.2 или 2.4

Также в поставке присутствуют пакеты с суффиксами -nls, они содержат языковые ресурсы, кроме русского и английского языков, поэтому если они вам не нужны, то их установка необязательна, в нашем примере мы их установим (исходя из принципа разумной избыточности, так как наш блог читают не только в России).

Создайте отдельную папку и скопируйте туда пакеты client из поставки Клиента и пакеты common и server из поставки Сервера, в итоге, с -nls, у вас должно оказаться шесть пакетов:

Теперь откроем консоль и перейдем в папку с пакетами, проще всего это сделать, щелкнув в ней правой кнопкой мыши и выбрать Открыть в терминале:

Повысим права до суперпользователя и установим пакеты командой:

dpkg -i 1c*.deb

Затем находим значок 1С в меню и запускаем приложение, все должно работать.

Для завершения процесса отключим автозапуск службы сервера 1С, которая для работы клиента не нужна, это необязательно, но желательно по соображениям экономии ресурсов и безопасности, для этого выполним:

systemctl disable srv1cv83

Как видим, ничего сложного в установке клиентской платформы 1С:Предприятие на Linux нет. Достаточно придерживаться инструкции и установить все необходимые зависимости.

Платформа 8.3.13 и ошибка с libpng12

При установке или обновлении до платформы 8.3.13, актуальный релиз на сегодня - 8.3.13.1513, вы можете столкнуться с ситуацией, когда 1С отказывается запускаться, эта ошибка проявляется в Debian 9 и Ubuntu 18.04.

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

После чего все становится на свои места. В новых дистрибутивах библиотеку libpng12 заменила libpng16, но 1С продолжает искать старую библиотеку (причем только последний релиз 8.3.13), оставим это на совести разработчиков 1С.

Что делать? Скачать нужный пакет из репозитория Debian 8 или Ubuntu 16.04. Непосредственно на системе это можно сделать командой (для x64 систем):

wget http://ftp.ru.debian.org/debian/pool/main/libp/libpng/libpng12-0_1.2.50-2+deb8u3_amd64.deb

Для 32-х битных систем аналогичная команда будет:

wget http://ftp.ru.debian.org/debian/pool/main/libp/libpng/libpng12-0_1.2.50-2+deb8u3_i386.deb

Затем установим пакет:

dpkg  -i libpng12-0_1.2.50-2+deb8u3_amd64.deb

или для 32-х бит:

dpkg  -i libpng12-0_1.2.50-2+deb8u3_i386.deb

После чего 1С снова начнет запускаться.

Активация программной лицензии

Основным типом защиты современных конфигураций 1С является программная лицензия, поэтому в данной статье мы не будем касаться HASP-ключей. Как показали отзывы, у многих возникают затруднения в активации программной лицензии на платформе Linux, поэтому коротко коснемся одной особенности.

Если запустить информационную базу в режиме 1С:Предприятия, то получим сообщение о том, что не найдена лицензия, при этом программа даже не предложит ввести лицензию.

Поэтому запустите базу в режиме конфигуратора, и вы увидите привычное окно получения лицензии:

Источник: https://interface31.ru/tech_it/2018/10/ustanovka-klienta-1spredpriyatie-83-na-debian-ubuntu.html

36

См. также

Комментарии
Избранное Подписка Сортировка: Древо
1. int18h 101 15.10.18 15:36 Сейчас в теме
тема HASP и прг.лицензий не раскрыта
ifal; kraynev-navi; DataReducer; +3 Ответить
2. int18h 101 15.10.18 15:41 Сейчас в теме
также можно сервер с посгрёй по шустрому:

sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg2
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable
docker pull temrdm/1c_postgres
docker pull temrdm/1c_server
docker run -d --name 1c_postgres -p 5432:5432 --restart=always -v /var/lib/postgres/data:/var/lib/postgresql/data -e POSTGRES_PASSWORD=postgres -h data.local.ru temrdm/1c_postgres
20. oldcopy 103 16.10.18 16:49 Сейчас в теме
(2)
также можно сервер с посгрёй по шустрому:


Зачем на клиенте сервер? Тем более старый? Тем более в докере? Тем более собранный непонятно кем?

В контейнерах: 1С 8.3.8-2027 (последнее обновление 2 года назад) и Postgres 9.2-1C (три года назад).
21. int18h 101 16.10.18 16:51 Сейчас в теме
(20) Что мешает обновить постгрю в контейнере или свой сделать? А по поводу "зачем?" иногда "нада" для разработки/тестирования/и т.д.
25. oldcopy 103 16.10.18 17:10 Сейчас в теме
(21) Здравый смысл. Еще в детстве нас учили - не подбирать и не совать в рот всякую гадость.

Чужие контейнеры (как и чужие скрипты) - это черный ящик, что там внутри знает только их автор. А быть там может все, что угодно. Вплоть до бекдоров и прочего вредоносного ПО.

Вы знаете того, кто собирал эти контейнеры? Я не знаю.

Теперь безотносительно контейнеров, чтобы "обновить" древний Postgres 9.2-1C нужно руками снести все его пакеты, потом скачать свежий и руками установить в нужной очередности, ибо dpkg -i *.deb тут не катит, потому как Postgres подтянет зависимости от обычного и работать эта солянка с 1С не будет. Поэтому ставить снова руками и по очереди.

Если так сильно хочется сервер, что прямо кушать не можете, то его можно просто включить:

systemctl enable srv1cv83
systemctl start srv1cv83

И доустановить свежий Postgres из нормального репозитория: https://interface31.ru/tech_it/2018/10/ustanovka-postgresql-10-dlya-1spredpriyatie-na-debian-ubuntu.html
Dementor; dr2c; +2 Ответить
3. oldcopy 103 15.10.18 15:53 Сейчас в теме
И не будет, потому что на дворе заканчивается 2018 год и 1С давно идет с программными лицензиями.
4. int18h 101 15.10.18 16:02 Сейчас в теме
5. Steelvan 15.10.18 18:45 Сейчас в теме
Замечания делает человек, который начинает предложение с маленькой буквы и заканчивает без точки, зачетно.
int18h; TaTaPuH-Magic; +2 Ответить
6. mrm1212 17 15.10.18 22:36 Сейчас в теме
В разгар санкций очень актуальная статья, винду как запретят, так все на убунту пересядем!!! =))))
8. gagash 16.10.18 08:35 Сейчас в теме
(6) А дистрибутив Ubuntu в Костромской области собирают или Архангельской, что-то забыл?
9. mrm1212 17 16.10.18 08:43 Сейчас в теме
(8) Ubuntu - свободно распространяемая ОС, запретить распространение в РФ ни кто не сможет..
13. webester 28 16.10.18 11:32 Сейчас в теме
(9)Мне бы вашу уверенность... "Не могут запретить" и "в РФ" рядом как два взаимоисключающих параграфа.
Brawler; pm74; +2 Ответить
17. int18h 101 16.10.18 15:00 Сейчас в теме
(6) Не пересядем! Canonical - британская контора) Скорее на какой-нибудь Альт или Астру =)
7. 79123890854 16.10.18 07:21 Сейчас в теме
А шрифты так и остались размытыми как-будто у меня резко зрение ослабло?
10. Timur.V 29 16.10.18 10:58 Сейчас в теме
(7)
Это зависит от того, какой дистрибутив linux вы решили установить и от монитора.
У меня нет проблем на LinuxMint 17, LinuxMint 18. Ubuntu 14 и 16 - тоже ок.
12. 79123890854 16.10.18 11:32 Сейчас в теме
(10)Что для вас ОК? То что на скриншотах из статьи это ОК? Я конечно имею ввиду шрифты именно в 1С в режиме управляемого приложения. В самой ОС все хорошо, а вот в 1С ужас ужас.
14. oldcopy 103 16.10.18 11:57 Сейчас в теме
(12) Я бы не сказал, что ужас, но определенные проблемы есть. 1C упорно тянет шрифты через ttf-mscorefonts-installer, которыми в плане сглаживания никто сильно в Linux не занимался, игнорируя системную libfreetype6. Но это уже не проблема Linux.
Прикрепленные файлы:
16. int18h 101 16.10.18 14:53 Сейчас в теме
(10) Просто все, что Вы назвали это по сути Ubuntu, а у Сanonical шрифты в дистрибутиве "изкоробки" более менее (за счет того же поднятого FreeType и набора шрифтов Ubuntu). Но в ОСи ШГ по-умолчанию! И, к сожалению, требует доводки болгаркой
26. user811967 16.10.18 17:33 Сейчас в теме
(7)Подтяните хинтинг шрифтов. По умолчанию используется оный для ЭЛТ-мониторов.
11. DenisCh 16.10.18 11:12 Сейчас в теме
Вот когда ломалку для линухоклиента и линухосервера сделают - тогда можно будет думать на эту тему )))
15. int18h 101 16.10.18 14:14 Сейчас в теме
"Ломалки" на ОСи не нужны!
18. katenok86 244 16.10.18 15:35 Сейчас в теме
А сервер то зачем ставит и скачивать?
19. DenisCh 16.10.18 15:49 Сейчас в теме
(18) А без него ты клиента не поставишь. Ибо зависимость
22. Timur.V 29 16.10.18 16:58 Сейчас в теме
(19)
Сервер 1с может стоять на windows, а клиенты 1c могут быть на Linux. Всё будет работать.
Можно всё устанавливать на Linux.
24. oldcopy 103 16.10.18 17:01 Сейчас в теме
(22) Тут вопрос не в этом. Спрашивали - зачем нужен пакет сервера, правильный ответ был - он нужен по зависимостям клиенту.

dpkg -I 1c-enterprise83-client_8.3.13-1513_amd64.deb 
 new Debian package, version 2.0.
 size 155218794 bytes: control archive=338 bytes.
     315 байт(а),     9 строк      control              
 Package: 1c-enterprise83-client
 Version: 8.3.13-1513
 Section: commercial
 Architecture: amd64
 Installed-Size: 410068
 Depends: 1c-enterprise83-common (= 8.3.13-1513), 1c-enterprise83-server (= 8.3.13-1513), libwebkitgtk-3.0-0 ( >= 1.2.5 )
 Maintainer: 1C <v8@1c.ru>
 Description: 1C:Enterprise 8.3 client applications
Показать
23. int18h 101 16.10.18 17:00 Сейчас в теме
(19) Хм не знай как сейчас но годика два назад люди клиент распаковывали + ldd + установка либ каких надо и работал клиент без установки сервера на локалхост. Сам не пробовал но логика подсказывает, что "мона". В арче вообще красота, если уметь в pacman - можно пакет свой собрать который качает последние debки и делает с ними что выше написал. вся обнова в одну строку pacman -U My1CPackageName (ну или както так)
27. Dementor 326 17.10.18 18:15 Сейчас в теме
(23) я с ldd когда-то игрался, когда нужно было ставить старый софт, который требовал версии библиотек уже выпиленных с репозитория (в основном бустовские). Приходилось каждую библиотеку выкапывать с архивов и вручную устанавливать - полдня убил. Мне кажется установка серверного пакета будет минимальным злом, не так уже он много места занимает.
28. oldcopy 103 17.10.18 18:35 Сейчас в теме
А в чем вообще проблема установить пакет сервера? Ладно были бы какие-то ограничения (лицензионные и т.п.), но нет - все доступно. Хотя на месте 1С было бы лучше и логичнее вынести общие библиотеки в тот же common. Чтобы для сервера ставить server + common, для клиента client + common.
int18h; CSiER; +2 Ответить
29. Vlx 286 18.10.18 12:13 Сейчас в теме
А кто-нибудь ставил 1С х 32 на Linux х 64?
Поделитесь опытом?
30. int18h 101 18.10.18 12:14 Сейчас в теме
(29) На что ругается при установке?
33. Vlx 286 18.10.18 13:14 Сейчас в теме
(30) Точно уже не помню. Пробовал на Debian.
Но вроде бы при установке нужен libwebkitgt 386, он в свою очередь другой пакет просит и т.д.
32. oldcopy 103 18.10.18 12:48 Сейчас в теме
(29) А зачем? Я еще понимаю, ставить x32 сервер, так как он стоит вдвое дешевле, но ради чего заморачиваться с клиентом? Сразу говорю - нормально не поставите, там по зависимостям очень много пакетов x32 надо подтянуть, многие из которых конфликтуют с x64 версиями.

Если очень хочется x32 клиента - возьмите x32 дистрибутив.
34. Vlx 286 18.10.18 13:23 Сейчас в теме
(32)
Зачем - есть причины.
Ставить операционку 32 наверное не имеет смысла, т.к. памяти рано или поздно будет больше 4 GB.
То что пакетов много - знаю, т.к. попробовал поставить и у меня не получилось.
35. oldcopy 103 18.10.18 14:19 Сейчас в теме
(34)
Зачем - есть причины.


И называется она - unipatch? Я угадал?
36. Vlx 286 18.10.18 14:21 Сейчас в теме
(35) Есть два ключа и прог.лицензия. Если вдруг чего не так нужна подстраховка.
31. int18h 101 18.10.18 12:18 Сейчас в теме
а вообще если debbased: dpkg --add-architecture i386 а дальше зависимости 1С только в конце :i386, например unixodbc:i386
Оставьте свое сообщение