362 subscribers

Установка 1C сервера 8.3.16.* на Ubuntu Server

Установка 1C сервера 8.3.16.* на Ubuntu Server

Установка 1C сервера на Ubuntu вопрос идущий с нами сквозь поколения. Эникеи вырастают и становятся админами, админы вырастают и становятся девопсами, девопсы вырастают и умирают, а 1С все есть. И не просто есть, а есть там где и был, почти что в каменном веке, топчется на месте. Ни официальных контейнеров, никакой адекватной формы дистрибуции, сплошная некро копро зоо и прочая филия. Проприетарная и закрытая напрочь. Но куда деваться, против монополии не попрёшь, приходится подстраиваться. Потому пришло время обновить статеечку про установку 1С Сервера на Ubuntu Server. И увы даже не на 20ю. Ставить мы будем 1С 8.3.16.1973

Устанавливаем Сервер 1С 8.3 на Ubuntu

Подразумевается что Ubuntu Server 18.04 x64 вы уже установили. Если нет то надо установить Ubuntu Server 18.04 x64. Можно и десктопную убунту, инструкция подойдет и для серверной и для десктопной версии, но смысл установки десктопной версии для функционала сервера категорически отсутствует. Разве что на этом сервере вы хотите поднять сервер терминалов, штобы у вас всё летало быстро, как понос.

1. Подключаемся к нашему серверу через SSH

К нашему чистому серверу, на котором нету ни домашнего архива фотографий, ни бегают какие-то ещё сервисы. Сервер должен быть чистый. Clear install. Если вы обновляете сервер то эта статья вам не подойдёт. По крайней мере до тех пор пока вы не снесёт

2. Обновляем убунту командой

sudo apt-get update && sudo apt-get dist-upgrade -y

3. Ставим библиотеки необходимые для работы Сервера 1С

Тут вопрос достаточно тонкий, каждая библиотека нужна для реализации конкретного функционала и если вы этот функционал использовать не будете, эти библиотеку можно не устанавливать.
Заходим на сайт https://its.1c.ru ->
Инструкции по разработке на 1С -> Платформа 1С:Предприятие. Документация -> Переходим по ссылку Платформа 1С:Предприятие 8.3.16. В открывшейся доке переходим на Руководство администратора -> Глава 1. Требования к аппаратуре и программному обеспечению. Мотаем до пункта 1.7.2. Для ОС Linux. Где нас будет ждать список того что нужно поставить на сервер прежде чем выкатывать туда Сервер 1С Linux.
При этом разработчики документации будут всячески вводить вас в блуду названиями некоторых пакетов

  1. webkitgtk-3.0.0 (в репе libwebkitgtk-3.0-0)
  2. libfontconfig
  3. libgsf-1 (я ставлю все 3 пакета libgsf-1-114, libgsf-1-common и libgsf-1-dev, можно ограничиться libgsf-1-114)
  4. libglib-2.0 (по факту libglib2.0-0)
  5. libodbc (по факту unixodbc)
  6. libkrb5 (по факту libkrb5-3)
  7. libgssapi-krb5-2 (скорее всего уже стоит)
  8. Microsoft Core Fonts (триклятый ttf-mscorefonts-installer)

Пуляем в нашу консольку команду по установке всего и сразу

sudo apt-get -y install libwebkitgtk-3.0-0 libfontconfig libgsf-1-114 libgsf-1-common libgsf-1-dev libglib2.0-0 unixodbc libkrb5-3 libgssapi-krb5-2 ttf-mscorefonts-installer

4. Заливаем архив с сервером 1с

Архив скачанный с сайта 1С, будет называться deb64_8_3_16_1973.tar.gz. Заливаем архив с пакетами сервера на убунту в папку /tmpКак вариант, можно подключиться из венды к нашему серверу по SFTP через WinSCP Можно поднять внутри сети какой-нибудь сервер и скачать архив с помощью wget. Конечно же я рекомендую WinSCP ибо если у вас уже нет какой-то файлопомойки – это самый очевидный вариант.

5. Извлекаем архив

Переходим в папку /tmp

cd /tmp

Смотрим там ли наш архив, с помощью команды ll

ll

Убеждаемся что он там, и извлекаем из него пакеты

tar -xvf ./deb64_8_3_16_*.tar.gz

6. Устанавливаем пакеты сервера 1С

В /tmp у нас выкатилось 7 пакетов

1c-enterprise83-common-nls_8.3.16-1973_amd64.deb
1c-enterprise83-common_8.3.16-1973_amd64.deb
1c-enterprise83-crs_8.3.16-1973_amd64.deb
1c-enterprise83-server-nls_8.3.16-1973_amd64.deb
1c-enterprise83-server_8.3.16-1973_amd64.deb
1c-enterprise83-ws-nls_8.3.16-1973_amd64.deb
1c-enterprise83-ws_8.3.16-1973_amd64.deb

Зависимости организованы в следующем порядке: common<-server<-ws
Ставим в следующем порядке:

sudo dpkg -i 1c-enterprise83-common_8.3.16-*_amd64.deb
sudo dpkg -i 1c-enterprise83-server_8.3.16-*_amd64.deb
sudo dpkg -i 1c-enterprise83-ws_8.3.16-*_amd64.deb
sudo dpkg -i 1c-enterprise83-crs_8.3.16-*_amd64.deb
# Если нужно, можно установить ещё языковые пакеты
sudo dpkg -i 1c-enterprise83-server-nls_8.3.16-*_amd64.deb
sudo dpkg -i 1c-enterprise83-ws-nls_8.3.16-*_amd64.deb
sudo dpkg -i 1c-enterprise83-common-nls_8.3.16-*_amd64.deb

Если языковые пакеты вам не нужны, просто не копируйте последние 3 строки.

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

  • Команда dpkg обрабатывает все пакеты в в том же порядке, в котором их отображает команда ls или же ls -l
  • Случилось это по чистой случайности или же по воле великих админских богов, но расположенные в алфавитном порядке пакеты извлеченные из архива, как раз складываются в таком порядке что при установке каждого пакета, все предидущие пакеты от которых он мог зависеть уже установлены.
  • Если вдруг порядок пакетов когда-то изменится, то ставить их надо в следующем порядке:common – независит ни от чего
    common-nls – зависит от common
    server – зависит от common
    server-nls – зависит от server
    ws – зависит от server
    ws-nls – зависит от ws
  • Таким образом вы не сможете установить пакет ws, пока не установите server, который в свою очередь требует common
  • Пакеты *-nls – языковые пакеты. Если вам не требуется функционал который они предоставляют их можно не устанавливать. Кто-то может поспорить, у меня все сервера работают без nls пакетов. Выбор за вами. Для чистоты последующих экспериментов я поставлю все пакеты.

7. Запускаем сервер 1С

Сервер 1С 8.3.16 для Linux не запускается автоматически после установки, убедиться в этом можно выполнив любую из двух команд

systemctl status srv1cv83

Результатом будет следующее сообщение:

Состояние srv1cv83 на 8.3.16.* сразу после установки
Состояние srv1cv83 на 8.3.16.* сразу после установки
Состояние srv1cv83 на 8.3.16.* сразу после установки

Запускаем сервер

sudo systemctl start srv1cv83

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

Установка 1C сервера 8.3.16.* на Ubuntu Server

8. Автозагрузка srv1cv83 последних версий платформы на Ubuntu 18.04

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

sudo systemctl enable srv1cv83

Собственно поздравляю. Вы успешно установили Сервер 1С 8.3.16.* на Ubuntu 18.04. Его уже можно использовать совместно с внешним СУБД.

Ставьте лайки, подписывайтесь и пишите комментарии, это помогает развитию контента 🙂