Установка Платформы «1С:Предприятие» в ОС Linux
Перед началом установки необходимо скачать дистрибутивы, которые понадобятся в дальнейшем. В данном примере мы будем устанавливать:
- Сервер «1С:Предпритие» 64-bit версии 8.3.13.1644. Пакеты для установки доступны здесь:
- Если для сервера использоваться ключи аппаратной защиты HASP, то необходимо установить на сервер драйвер защиты HASP. Последние версии для различных операционных систем можно скачать:
Если в дальнейшем работа с сервером «1С:Предприятие» на Linux и управление будет осуществляться c других машин, необходимо убедиться в том, что ip-адрес компьютера, на котором расположен сервер, будет корректно разрешаться в его hostname. Откроем консоль сервера от имени пользователя root и получим адрес компьютера:
ifconfig
Имя компьютера можно получить так:
hostname -f
Теперь данные о соответствии ip-адреса и имени необходимо внести в файлы hosts тех машин, откуда будут устанавливаться соединения с кластером серверов:
IP-address hostname.local hostname
Для Windows он расположен обычно:
%windir%\system32\drivers\etc\hosts
/etc/hosts
В противном случае при установке клиентского соединения с рабочим процессом кластера будет возникать ошибка.
Установка платформы в Debian-системах на примере Ubuntu Server 16.04
- Откроем консоль сервера от имени пользователя root.
- Создадим директорию, куда поместим (любым удобным образом) архив с Deb-пакетами для установки Сервера 1С:Предприятие, скачанный предварительно.
mkdir -p /1c/soft/1c
- Войдем в каталог /1c/soft/1с:
cd /1c/soft/1c
Распакуем архив (при помощи команды tar xzf):
tar xzf deb64_8_3_13_1644.tar.gz
- Для установки пакетов удобнее всего воспользоваться утилитой gdebi. Если она не была ранее установлена, это можно сделать при помощи команды:
apt-get –y install gdebi
Устанавливаем сервер «1С:Предприятие»:
gdebi 1c-enterprise83-common_8.3.13-1644_amd64.debgdebi 1c-enterprise83-server_8.3.13-1644_amd64.debgdebi 1c-enterprise83-ws_8.3.13-1644_amd64.debgdebi 1c-enterprise83-common-nls_8.3.13-1644_amd64.debgdebi 1c-enterprise83-server-nls_8.3.13-1644_amd64.debgdebi 1c-enterprise83-ws-nls_8.3.13-1644_amd64.deb
Последние три nls-пакета содержат языковые файлы и требуют обязательной установки только в том случае, если будут использоваться языки, отличные от русского и английского.
Установка будет осуществлена в директорию /opt/1C/v8.3/x86_64.
- Для корректной работы приложений необходимо установить шрифты из состава Microsoft Core Fonts:
apt-get -y install ttf-mscorefonts-installer
Для того, чтобы система «увидела» установленные шрифты, нужно выполнить команду:
fc-cache –fv
- Устанавливаем дополнительные внешние библиотеки:
apt-get install libfreetype6 libgsf-1-common unixodbc glib2.0
- Запускаем службу:
systemctl start srv1cv83
Проверить статус работы можно при помощи команды:
systemctl status srv1cv83
Будет выполнена проверка, запущен ли сервис (Starting 1C:Enterprise 8.3 server: OK), и выведено детальное состояние сервиса.
Проверить, запущены ли процессы кластера, можно при помощи команды:
ps ax | grep "1C/v8.3"
Перейдем к установке драйвера HASP. Для данного примера скачиваем драйвер по адресу:
Для установки драйвера выполняем следующие действия:
- Создадим каталог /1c/soft/hasp:
mkdir -p /1c/soft/hasp
- В этот каталог любым удобным образом поместим скачанный пакет установки драйвера и перейдем в него:
cd /1c/soft/hasp
- Поскольку драйвер использует 32-битные библиотеки, устанавливаем их:
apt-get -y install libc6:i386
- Устанавливаем драйвер:
gdebi haspd_7.60-eter1ubuntu_amd64.deb
- Запускаем драйвер защиты HASP:
systemctl start haspd
Проверить статус можно так:
systemctl status haspd
Установка платформы в RPMS на примере CentOS 7
- Откроем консоль от имени root.
- Создадим директорию, куда поместим (любым удобным образом) архив с RPM-пакетами для установки Сервера 1С:Предприятие, скачанный предварительно.
mkdir -p /1c/soft/1c
- Перейдем в директорию /1c/soft/1с
cd /1c/soft/1c
tar xzf rpm64_8_3_13_1644.tar.gz
- Устанавливаем пакеты, извлеченные их архива:
yum install *
В данном примере будут установлены все пакеты, но, если в вашей системе не планируется использовать языки, отличные от русского и английского, nls-пакеты вы можете не устанавливать — они содержат только языковые файлы.
Для пакетов x86_64 установка будет осуществлена в директорию /opt/1C/v8.3/x86_64.
- Для корректной работы приложений необходимо установить шрифты из состава Microsoft Core Fonts.
- Скачиваем любым удобным образом (например, при помощи wget) файлы пакета с сервера SourceForge:
Надо скачать все .exe-файлы, кроме wd97vwr32.exe.
- Переименовываем все скачанные .exe-файлы, присвоив им расширение .zip, после чего распакуем их и удалим все, кроме имеющих расширение .ttf – это файлы шрифтов.
- Файлы шрифтов (.ttf-файлы) копируем в каталог /usr/share/fonts/truetype/
Для того, чтобы система «увидела» установленные шрифты, нужно выполнить команду:
fc-cache –fv
- Устаналиваем дополнительные внешние библиотеки:
yum install fontconfig freetype libgsf unixODBC
- Запускаем службу:
systemctl start srv1cv83
Проверить статус работы можно при помощи команды:
systemctl status srv1cv83
Будет выполнена проверка, запущен ли сервис (Starting 1C:Enterprise 8.3 server: OK), и выведено детальное состояние сервиса.
Проверить, запущены ли процессы кластера, можно при помощи команды:
ps ax | grep "1C/v8.3"
Перейдем установке драйвера HASP. Для данного примера скачиваем драйвер по адресу :
Для установки драйвера выполняем следующие действия:
- Создадим каталог /1c/soft/hasp:
mkdir -p /1c/soft/hasp
- В этот каталог любым удобным образом поместим скачанный пакет установки драйвера и перейдем в него:
- Поскольку драйвер использует 32-битные библиотеки, устанавливаем их:
yum install glibc.i686
- Устанавливаем драйвер:
yum install *
- Запускаем драйвер защиты HASP:
systemctl start haspd
Проверить статус можно так:
systemctl status haspd
Основные проблемы и вопросы по установке Платформы «1С:Предприятие» в Linu x
1. При работе возникают ошибки «Не найдена библиотека …»
В зависимости от вашего дистрибутива Linux и функционала системы для корректной работы 1С:Предприятие вам может понадобиться дополнительно самостоятельно установить внешние библиотеки. Полный список их представлен в документации:
Обратите внимание, что в документации указано именно имя библиотеки, а не имя пакета. Имя пакета, в который она входит, может отличаться в разных дистрибутивах. В какие именно пакеты входит библиотека, обычно можно найти в репозитории для вашей ОС.
2. Как запустить сервер в режиме отладки?
Для того, чтобы на сервере была доступна отладка, необходимо запустить его в ключом –debug. Для этого сначала остановим сервер «1С:Предприятие»:
systemctl stop srv1cv83
ВАЖНО! Не редактируйте параметры запуска сервера в процессе его работы, это может привести к ошибкам при его перезапуске.
Теперь необходимо отредактировать параметры его запуска в конфигурационном файле srv1cv83 (в данном примере с использованием редактора vim):
vim /etc/sysconfig/srv1cv83
Находим в редактируемом файле строку SRV1CV8_DEBUG= , убираем в начале этой строки символ комментария # и устанавливаем значение переменной SRV1CV8_DEBUG в 1:
SRV1CV8_DEBUG=1
Сохраняем изменения и выходим из файла.
Перезапускаем сервер «1С:Предприятия 8»:
systemctl restart srv1cv83
3. Где находится каталог данных кластера серверов и как его изменить?
По умолчанию каталог кластера находится в директории пользователя, от имени которого запущен сервер 1С:Предприятие — $HOMEDIR/.1cv83/1C/1Cv83, например:
/home/usr1cv8/.1cv8/1C/1cv8
Для того, чтобы изменить место изменить место расположения, необходимо, по аналогии с п. 1, изменить параметр SRV1CV8_DATA запуска в конфигурационном файле /etc/sysconfig/srv1cv83.
ВАЖНО! Не забудьте убедиться в наличии прав на директорию данных кластера у пользователя, от имени которого запущен сервер. Увидеть права можно при помощи команды:
ls -la /cluster_data
Предоставить права можно так:
chown -R usr1cv8 /cluster_data
В конфигурационном файле /etc/sysconfig/srv1cv83 также задаются порты, на которых будут работать процессы кластера, и другие параметры запуска.
4. Как настроить технологический журнал сервера в Linux ?
На сервере создадим каталоги, в который будут помещаться файлы журнала:
mkdir -p /var/log/1c/logs
Создадим каталог для настроек журнала /opt/1C/v8.3/x86_64/conf:
mkdir -p /opt/1C/v8.3/x86_64/conf
Поместим в этот каталог файл logcfg.xml со следующим (например) содержимым:
В данном случае собирается полный технологический журнал (не стоит делать так на постоянной основе в продуктиве), срок хранения файлов журналов — 24 часа, находиться они будут в директории /var/log/1c/logs.
ВАЖНО! Необходимо предоставить пользователю, от имени которого работает сервер 1С:Предприятие, права на запись в каталог логов. Например, так:
- Создадим группу пользователей grp1clogs, которой будут даны права на журнал:
groupadd grp1clogsusermod -a -G grp1clogs www-datausermod -a -G grp1clogs usr1cv8
- Дадим права этой группе на каталоги журнала:
chown -R usr1cv8:grp1clogs /var/log/1cchmod g+rw /var/log/1c
5. Почему не формируются дампы, если их сбор настроен в logcfg.xml?
По умолчанию в linux создание дампов отключено. Для настройки сбора дампов НЕ используется logcfg.xml, она осуществляется в ОС.
Как ее выполнить, описано в документации:
Записки IT специалиста
Единый дистрибутив 1С:Предприятие для Linux. Установка сервера
- Автор: Уваров А.С.
- 18.10.2021
Продолжаем изучать работу с единым дистрибутивом платформы 1С:Предприятие для Linux, который появился в версии 8.3.20. В прошлой статье мы рассмотрели установку клиентских приложений, а сегодня уделим внимание серверу 1С:Предприятия и серверным компонентам. Основной целью выпуска единого дистрибутива было заявлено упрощение процессов установки и сопровождения системы. Что касается клиентской части, то здесь мы полностью согласимся, но в отношении серверов такое упрощение не всегда идет на пользу. Обо всем этом в нашей статье.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Долгое время поставка 1С:Предприятие для Linux производилась в виде привычных DEB или RPM-пакетов, которые затем устанавливались с помощью пакетного менеджера системы. Это привычный и понятный системным администраторам механизм, позволяющий полностью контролировать и автоматизировать процесс развертывания, при наличии такой необходимости.
Новый способ предусматривает поставку в виде универсального run-файла, который содержит клиентскую и серверную часть, дополнительные компоненты и подходит как для RPM, так и для DEB-систем. Установка при этом производится в обход пакетного менеджера и слабо поддается контролю со стороны администратора. Если для клиентских систем это несущественно, то на серверах многие админы предпочитают держать руку на пульсе любых изменений системы.
Но единый дистрибутив — это закономерный итог текущей политики разработки 1С. Вместо следования философии UNIX-систем, когда каждая программа делает свое дело и делает его хорошо, сборки 1С постоянно собирались с жесткими зависимостями от определенных версий библиотек, что вызывало постоянные проблемы при разрешении зависимостей и требовало подключать сторонние репозитории, либо скачивать недостающие пакеты руками. Хотя это касалось в большей мере только клиентского приложения.
В дальнейшем 1С стала следовать принципу «все свое ношу с собой», постепенно включив в состав дистрибутива почти все библиотеки основных зависимостей. Единый дистрибутив — апофеоз этого процесса. Но нравится нам это или нет, 1С:Предприятие является ведущей платформой для построения учетных систем, поэтому давайте учиться жить и работать в новых условиях.
В нашем примере мы будем устанавливать сервер 1С:Предприятие на Ubuntu 20.04 LTS и Debian 10, однако данная инструкция одинаково пригодна для любого поддерживаемого платформой Linux-дистрибутива с поправками на работу с пакетным менеджером. Все приведенные ниже команды следует выполнять с правами суперпользователя.
Для установка на ОС семейства Альт воспользуйтесь следующим материалом: Установка сервера 1C:Предприятие, PostgreSQL и Apache2 на Альт Сервер 10
Установка платформы 1С:Предприятие
Начнем с установки требуемых зависимостей. Их немного, это набор шрифтов Microsoft True Type Core Fonts и библиотека UnixODBC, для работы через одноименный интерфейс.
В Debian для этого следует подключить репозитории с несвободным ПО, для этого откройте /etc/apt/sources.list и добавьте после main в каждую строку contrib и non-free.
В Debain 11 нужно также добавить репозиторий от предыдущего выпуска для установки библиотеки libenchant1c2a:
echo "deb http://ftp.ru.debian.org/debian buster main" > /etc/apt/sources.list.d/buster.list
Обновим список пакетов и установим зависимости:
apt update
apt install ttf-mscorefonts-installer libodbc1
Затем скачаем с официального сайта архив с единым дистрибутивом, после чего любым удобным способом передадим его на сервер. Будем считать, что вы разместили его в домашней директории текущего пользователя. Перейдем туда и распакуем архив:
cd ~
tar -xzf server64_8_3_20_1549.tar.gz
В нашем случае используется выпуск платформы с единым дистрибутивом 8.3.20.1549.
После чего запустим инсталлятор, если это сделать без указания опций, то он запустится в интерактивном режиме и вам потребуется отвечать на множество вопросов, поэтому мы будем использовать пакетный режим, который позволяет сразу указать требуемые компоненты.
В контексте серверного применения нам могут быть интересны:
- server — кластер серверов 1С:Предприятия
- server_admin — сервер администрирования кластера серверов 1С:Предприятия
- liberica_jre — Java Runtime Environment (JRE)
- config_storage_server — сервер хранилища конфигураций
- ws — модули расширения веб-сервера
С полным списком опции можно ознакомиться в официальной документации.
Допустим, мы хотим установить кластер серверов 1С:Предприятие и модуль расширения веб-сервера, для этого запустим инсталлятор со следующими ключами:
./setup-full-8.3.20.1549-x86_64.run --mode unattended --enable-components server,ws
Где —mode unattended — обозначает использование пакетного режима, а после —enable-components через запятую перечисляются требуемые компоненты. Если не указано иного, то устанавливаются русский и английский языки. Во время установки никаких сообщений не выводится, а сама она может занять продолжительное время.
Настройка автозапуска службы для платформы 8.3.20
Начиная с платформы 8.3.18, когда появилась возможность одновременной установки нескольких версий на платформе Linux инсталлятор не производит автоматическую регистрацию службы. Это нужно сделать самостоятельно. Для этого скопируем, точнее сделаем символические ссылки для скрипта запуска и файла конфигурации. В настоящий момент 1С:Предприятие продолжает использовать подсистему инициализации init, переход на systemd выполнен в платформе 8.3.21.
ln -s /opt/1cv8/x86_64/8.3.20.1549/srv1cv83 /etc/init.d/srv1cv83
ln -s /opt/1cv8/x86_64/8.3.20.1549/srv1cv83.conf /etc/default/srv1cv83
Затем добавим ее в автозагрузку:
update-rc.d srv1cv83 defaults
Управлять службой можно как «по старинке»:
service srv1cv83 start|stop|restart|status
Так и через systemd:
systemctl start|stop|restart|status srv1cv83
![]()
Настройка автозапуска службы для платформы 8.3.21 и новее
С выходом платформы 8.3.21 реализована поддержка systemd и работать со службой сервера 1С стало проще. Для регистрации юнита службы после установки платформы выполните:
systemctl link /opt/1cv8/x86_64/8.3.21.1302/srv1cv8-8.3.21.1302@.service
Обратите внимание, что следует использовать абсолютный путь и он включает в себя версию установленной платформы, в нашем случае это 8.3.21.1302.
Затем добавим сервис в автозагрузку:
systemctl enable srv1cv8-8.3.21.1302@
Для управления службой используйте стандартные команды systemd:
systemctl start|stop|restart|status srv1cv8-8.3.21.1302@default
В данном случае при обращении к службе следует использовать кроме ее имени также имя конкретного экземпляра, т.к. systemd позволяет запускать несколько экземпляров одной службы, по умолчанию имя экземпляра — default.
Дополнительные действия для платформы 8.3.20
На этом установку сервера 1С:Предприятие вроде бы можно считать оконченной, но есть один неприятный сюрприз. Перезагрузив сервер, вы неожиданно увидите приглашение ко входу в графическую оболочку. При этом сама оболочка будет установлена в весьма ограниченном варианте, даже терминала нет. Зато есть ярлыки 1С:Предприятие.
![]()
С одной стороны, мешать она никому не мешает и многие вообще могут не заметить ее появления, особенно если ходят на сервер сугубо по SSH. Но любое дополнительное ПО тратит ресурсы сервера и предоставляет дополнительную поверхность атаки, поэтому давайте удалим оболочку Gnome, тем более что для работы сервера 1С:Предприятие она не нужна:
apt purge gnome-shell gnome-control-center gnome-keyring
apt autoremove
Как вы уже догадались, оболочку на сервер устанавливает единый дистрибутив 1С:Предприятия и пока нет возможности воспрепятствовать этому, а следовательно указанные выше действия нужно будет выполнять после каждого запуска единого дистрибутива. Начиная с 8.3.21 этот недостаток исправлен.
Удаление платформы 1С:Предприятие
Так как новые версии платформы предусматривают одновременную установку сразу нескольких экземпляров, то обновление уже установленной системы будет сводиться к действиям по удалению старой платформы и установке новой.
Прежде всего остановим службу и удалим ее из автозагрузки, для платформы 8.3.20 выполним:
systemctl stop srv1cv83
update-rc.d -f srv1cv83 remove
Для платформы 8.3.21:
systemctl stop srv1cv8-8.3.21.1302@default
systemctl disable srv1cv8-8.3.21.1302@
После чего можно удалить саму 1С, воспользовавшись специальным скриптом, который расположен в папке платформы. Здесь снова используется абсолютный путь с указанием требуемой версии платформы.
/opt/1cv8/x86_64/8.3.21.1302/uninstaller-full
Таким образом для обновления сервера 1С:Предприятия вам понадобится:
- Остановить службу
- Выключить ее автозагрузку
- Удалить старую платформу
- Установить новую платформу
- Включить службу в автозагрузку
- Запустить службу
Как видим, особых сложностей с использованием единого дистрибутива 1:Предприятия для Linux нет. Но есть некоторые особенности и некорректное поведение инсталлятора, пытающегося установить на сервер графическую оболочку. Все это нужно учитывать при планировании развертывания. И если нам понравилось использование единого дистрибутива при установке клиентского приложения, то сказать тоже самое про сервер мы не можем. Но увы, альтернативы у нас нет, остается только надеяться, что разработчики 1С прислушаются к мнению сообщества и единый дистрибутив будет серьезно доработан и переработан.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
![]()
![]()
Или подпишись на наш Телеграм-канал:
Простая установка 1С на Linux (Ubuntu)

Продажа программ 1С, установка и настройка программы. Помощь в установке 1С. Консультации и обслуживание.
от 2600 руб.
Если вы приверженец бесплатных программных продуктов, например Ubuntu, то многие программы могут быть вам недоступны. В случае с 1С такое положение вещей стало бы большой проблемой, так как разработки этой отечественной компании очень популярны в России, а для автоматизации некоторых процессов и вовсе незаменимы. Именно поэтому разработчики предусмотрели, что среди клиентов могут быть пользователи Linux. Прочитав статью, вы узнаете, как воспользоваться настроенными пакетами для установки 1С на Ubuntu или любые другие системы семейства Linux.
Скачивание и подготовка файлов 1С
Для того чтобы начать установку 1С, надо подготовить дистрибутивы. Начнем с вопроса: «Для какой ОС мы подбираем 1С – для 32- или 64-битной?». После заходим на сайт, где компания 1С выкладывает дистрибутивы. Введя логин и пароль, заходим в раздел с дистрибутивами и там, найдя нужные нам в списке, сохраняем на компьютер следующие архивы:
- Клиент 1С:Предприятие для DEB-based Linux-систем;
- Сервер 1С:Предприятие для DEB-based Linux-систем.

На Ubuntu используется формат файлов DEB. Но поскольку мы скачали с сайта архивы, надо все скачанные пакеты распаковать и переместить в один каталог. В результате должен получиться такой список файлов:
- 1c-enterprise83-client_8.3.16-1148_amd64.deb;
- 1c-enterprise83-client-nls_8.3.16-1148_amd64.deb;
- 1c-enterprise83-thin-client_8.3.16-1148_amd64.deb;
- 1c-enterprise83- thin-client -nls_8.3.16-1148_amd64.deb;
- 1c-enterprise83-common_8.3.16-1148_amd64.deb;
- 1c-enterprise83-common-nls_88.3.16-1148_amd64.deb;
- 1c-enterprise83-crs_8.3.16-1148_amd64.deb;
- 1c-enterprise83-server_8.3.16-1148_amd64.deb;
- 1c-enterprise83-server-nls_8.3.16-1148_amd64.deb;
- 1c-enterprise83-ws_8.3.16-1148_amd64.deb;
- 1c-enterprise83-ws-nls_8.3.16-11482_amd64.deb.
На этом этапе подготовка заканчивается и можно приступать непосредственно к установке 1С на Линукс.
Процесс установки 1С на Ubuntu
Чтобы установить 1С на Linux, необходимо открыть терминал («Приложения»>«Стандартные») и перейти в папку, где сложены все файлы.

В этом нам поможет команда «cd» (пример использования – «cd /etc/apt»). После этого, необходимо запустить установку скачанных пакетов в определенном порядке. Для этого последовательно вводим следующие команды в запущенный терминал:
- sudo dpkg -i 1c-enterprise83-common_8.3.16-1148_amd64.deb
- sudo dpkg -i 1c-enterprise83-common-nls_8.3.16-1148_amd64.deb
- sudo dpkg -i 1c-enterprise83-server_8.3.16-1148_amd64.deb
- sudo dpkg -i 1c-enterprise83-server-nls_8.3.16-1148_amd64.deb
- sudo dpkg -i 1c-enterprise83-ws_8.3.16-1148_amd64.deb
- sudo dpkg -i 1c-enterprise83-ws-nls_8.3.16-1148_amd64.deb
- sudo dpkg -i 1c-enterprise83-crs_8.3.16-1148_amd64.deb
- sudo dpkg -i 1c-enterprise83-thin-client_8.3.16-1148_amd64.deb
- sudo dpkg -i 1c-enterprise83-thin-client-nls_8.3.16-1148_amd64.deb
- sudo dpkg -i 1c-enterprise83-client_8.3.16-1148_amd64.deb
- sudo dpkg -i 1c-enterprise83-client-nls_8.3.16-1148_amd64.deb

При установке на Ubuntu могут возникнуть проблемы с отсутствием пакета «libwebkitgtk-1.0-0». Решить ее достаточно просто с помощью последовательного ввода команд в терминал «apt-get install libwebkitgtk-1.0-0» и «apt-get -f install».
Установка сервера 1С на Ubuntu 20.04
Установка сервера 1С на Linux с сервером СУБД PostgreSQL выгодна по нескольким причинам. Собственник бизнеса может получить существенную экономию за счёт использования свободно распространяемого ПО. Для сервера 1С можно использовать практически любое облако, что позволит экономить на приобретении оборудования, соединить географически разбросанные точки, использовать недорогие устройства для подключения в режиме терминального доступа, например, с использованием стандартного RDP-клиента Windows. Возможна установка на отдельно расположенном в уголке системном блоке, без подключённого монитора, дома или в офисе.
В этой статье я расскажу как установить 1С сервер на Ubuntu 20.04 с Postgres Pro Std 13, а также web-сервер на Apache2 и опубликовать туда созданную базу.
Установка сервера 1С на Ubuntu 20.04
Я принял решение развернуть тестовый стенд в Hyper-V на своём ноутбуке. Использовался ноутбук с такими основными параметрами:
Виртуальный контейнер Hyper-V:
- 1 виртуальный процессор.
- 3 Гб динамического ОЗУ.
- Виртуальный жёсткий диск на 20 Гб.
- DVD-привод с ISO образом Ubuntu Desktop 20.04.2 (64-bit).
Ubuntu Desktop разрядностью 64 bit я выбрал сознательно. Во-первых, Postgres Pro бывает только 64 bit. Во-вторых, мне нужно протестировать не только установку сервера 1С, но ещё и установку клиента 1С:Предприятие для Linux, чтобы подключиться из этой ОС к своему рабочему серверу, и наоборот. Установку и настройку Ubuntu 20.04, а также установку сервера XRDP оставлю вне рамок этой статьи.
1. Загрузка необходимых пакетов
В первую очередь я авторизовался на сайте users.v8.1c.ru для скачивания дистрибутивов платформы.

На снимке экрана я подчеркнул пакеты, которые скачал:

Затем мне необходимо скачать драйвер ключа защиты HASP для Linux, чтобы получать лицензии 1С по сети и с USB-ключа. У меня не заработала версия 7.90, и я пошёл по пути наименьшего сопротивления, скачав на тестовый стенд HASPD 7.40 (описание процесса приведу ниже). В целях корректного выполнения задачи по установке самого свежего ПО приведу ссылку на скачивание HASPD 7.90 и рекомендую ставить именно его.

2. Получение инструкции по установке Postgresql Pro
Далее произвожу подготовку к установке СУБД. Я уже регистрировался на сайте производителя, поэтому захожу в личный кабинет, указываю операционную систему и дистрибутив. Соглашаюсь с лицензионным соглашением и получаю инструкцию для установки Postgres Pro Std в Ubuntu 20.04. Вы можете использовать её для установки этой программы.

Обратите внимание, что для использования любой версии PostgreSQL Pro необходимо покупать лицензию, но программу можно получить бесплатно для тестирования, изучения и разработки.
3. Обновление Ubuntu и установка пакетов
Все действия я буду производить из графического режима Ubuntu Desktop. Однако всё, что я делаю, относится в равной степени и к Ubuntu Server 20 64-bit. В графическом режиме Ubuntu есть утилита terminal, в которой и будут производиться все манипуляции. Для удалённого подключения к Linux в консольном режиме существует большое количество приложений, использующих SSH. Обычно я использую Putty RUS.

Для настройки репозитория Postgres Pro Std потребуется curl. И поставлю свой любимый файловый менеджер mc. До начала обновления пакетов Ubuntu в открытом терминале пишу:
sudo apt -y install mc curl
Пробую поставить пакет libpq, входящий в дистрибутив PostgreSQL, с сайта 1С и получаю ошибку о несоответствии версии библиотеки libssl.so. 1.0.0, а у меня развёрнута версия 1.0.3. Это свидетельствует от том, что в Ubuntu 20.04 более новые библиотеки, чем используются дистрибутивами пакетов.
Поэтому необходимо ещё добавить репозитории для установки всех пакетов, которые устарели в Ubuntu 20.04, однако нужны для установки HASPD и 1С. Поэтому выполняю команду:
echo ‘deb http://ru.archive.ubuntu.com/ubuntu/ bionic main universe’ >> /etc/apt/sources.list
sudo apt update

Соглашаюсь со всем, что просит apt (можно нажимать Enter).

После завершения перезагрузите систему, но перед этим убедитесь что дистрибутивы 1C и PostgreSQL Pro успешно загружены. После этого можно двигаться дальше. Ставлю необходимые для функционирования 1С пакеты:
apt install libwebkitgtk-3.0-0 libjavascriptcoregtk-3.0-0 libmagickwand-6.q16-6 libgsf-1-114 libkrb5-3 libgssapi-krb5-2 ttf-mscorefonts-installer
Запрещаю системе их обновлять:
apt-mark hold libwebkitgtk-3.0-0 libjavascriptcoregtk-3.0-0 libmagickwand-6.q16-6 libgsf-1-114 libkrb5-3 libgssapi-krb5-2 ttf-mscorefonts-installer
Ставлю необходимые пакеты для установки драйвера HASP:
apt install dkms flex bison
4. Добавление репозитория PostgreSQL Pro
Для добавления репозитория PostgreSQL Pro выполните такие команды:
curl -o apt-repo-add.sh https://repo.postgrespro.ru/pgpro-13/keys/apt-repo-add.sh
5. Установка и запуск HASPD
Установка HASPD в Ubuntu 20.04 довольно проблематична, в версии 7.90 не захотел устанавливаться aksusbd — модуль, который работает с USB-устройствами — ключами HASP, поэтому служба не стартовала. Скачал модули для Ubuntu 15.04 (64-bit) и для HASPD версии 7.40.
Менеджер пакетов apt хорош тем, что если в зависимостях пакета есть другие пакеты, то в 90 из 100% случаев он найдёт и установит самые подходящие. Поэтому разворачиваю и копирую оба файла с расширением .deb службы haspd в директорию /usr/src/haspd7_40/:
sudo mkdir /usr/src/haspd7_40
sudo cp hasp* /usr/src/haspd7_40
sudo cd /usr/src/haspd7_40
sudo apt -y install ./*.deb

Результат установки должен быть таким, как на приведённом выше скриншоте. Чтобы автоматически при загрузке ОС запускалась служба в Ubuntu, выполняю:
systemctl enable haspd
И перезапускаю службу:
systemctl restart haspd
Проверить состояние службы можно так:
systemctl status haspd
6. Установка Postgres Pro Std
Вначале необходимо добавить поддержку русского языка в систему. Ставлю локализацию для нормального функционирования Postgres Pro Std:
sudo locale-gen en_US.UTF-8
sudo locale-gen ru_RU.UTF-8
sudo update-locale LANG=ru_RU.UTF8
sudo dpkg-reconfigure locales
Для установки самой программы выполните:
sudo apt -y install postgrespro-std-13 postgrespro-std-13-contrib
systemctl stop postgrespro-std-13
Удаляю автоматически созданную базу, так как она не подходит для 1С:
rm -r /var/lib/pgpro/std-13/data/*
Из директории, куда установился Postgres Pro Std, запускаю инициализацию базы для 1С:
/opt/pgpro/std-13/bin/pg-setup initdb —tune=1c
Затем стандартные действия по настройке автозапуска, старта службы и проверке статуса. Должно быть так, как приведено ниже:
systemctl enable postgrespro-std-13
systemctl start postgrespro-std-13
systemctl status postgrespro-std-13
7. Настройка СУБД Postgres Pro Std
Заходим из консоли под пользователем postgres. Таким способом мы получим доступ к psql без указания пароля и сможем настроить себе доступы:
Запускаем консоль СУБД:
Я не стал возиться с созданием пользователя, поэтому применяю суперпользователя postgres. Задаю пароль secret1c:
alter useR postgres with encrypted password ‘secret1c’;
Вывод должен быть ОК. Затем выходим из консоли:
И возвращаемся в терминал из окружения postgres:
8. Установка сервера 1С
Дальше надо разобраться как установить 1C в Ubuntu 20.04. Распаковываю дистрибутивы 1С и раскладываю их по папочкам в /usr/src/1cv83_18_1334. Папка cli — клиентская часть 1с, serv — серверная часть, thincli — тонкий клиент (про него напишу отдельно).

Первым ставлю сервер 1С:
sudo apt install ./*.deb
Лучше каждый файл ставить по отдельности, так как существует чёткая последовательность: common, crs, server, ws.

Потому что в результате всё может не установиться, хотя у меня получилось.
9. Настройка автозагрузки сервера 1С
По непонятной причине, в последние полгода при установке 1С сервера не создаётся ссылка для службы. Поэтому создаю её самостоятельно:
ln -s /opt/1cv8/x86_64/8.3.18.1334/srv1cv83 /etc/init.d/srv1cv83
После этого можно настраивать автозапуск службы:
systemctl enable srv1cv83
systemctl restart srv1cv83
systemctl status srv1cv83
10. Установка толстого и тонкого клиентов 1С
Сначала перехожу в директорию /usr/src/1cv83_18_1334/cli
Затем для установки толстого клиента выполняю:
sudo apt install ./1c-enterprice-8.3.18.1334-client*.deb
А для установки тонкого клиента:
sudo apt install ./1c-enterprice-8.3.18.1334-thin-client*.deb

Обратите внимание, что при установке тонкого клиента (thin-client) сервер 1С удаляется. Я тонкого клиента ставить на сервер 1С не буду.
11. Особенности размещения файла настроек HASP для 1С в Linux
Первая заключается в том, что если потребуется получать лицензию от ключа на другой машине, то необходим файл nethasp.ini. Но если в Windows его достаточно положить в установочную директорию 1С, подкаталог conf, то в Linux его нужно разместить ниже по дереву: в директорию релиза. Я для этого создал символическую ссылку на каталог в /opt/1cv8/conf:
sudo ln -s /opt/1cv8/conf/ /opt/1cv8/x86_64/8.3.18.1334/conf/
Теперь 1С будет видеть мои сетевые ключи.
12. Проверка соединения с базой данных
Для проверки работы толстого клиента, пробую подключится ко внешнему 1C серверу с помощью 1С:Документооборот:

Заработал, и довольно быстро для толстого клиента и виртуальной машины. С кодировками русского языка проблем не возникает.
13. Создание базы данных на сервере 1С
Создаю пустую базу для разработки на сервере СУБД. Указываю наименование информационной базы и её расположение. В данном примере будет использоваться база данных с именем test.
14. Настройки для подключения к серверу 1С и СУБД
Когда вы подключаетесь к серверу необходимо указывать либо доменное имя + имя, либо прописывать IP + имя сервера 1С Ubuntu в файле /etc/hosts вашей машины. Postgres Pro Std относительно сервера находится локально, поэтому указываем адрес 127.0.0.1. Защищённое соединение я не настраивал по тем же соображениям: сервер СУБД находится локально. Указываю логин суперпользователя postgres и пароль secret1c, которые установил при начальной настройке СУБД.

Теперь можно экспериментировать с пустой базой test.
15. Запуск базы данных на сервере 1С в разных режимах

Запускаю в режиме конфигуратора с правами суперпользователя root:
16. Публикация конфигурации 1С на web-сервере
Команда для установки web-севера Apache 2 выглядит вот так:
sudo apt -y install apache2

После того как конфигуратор запустился от суперпользователя, можно публиковать базу на web-сервере. Для этого в режиме конфигуратора нужно открыть меню Администрирование и выбрать пункт Публикация на веб-сервере.

Указываю имя БД на web-сервере, в моём случае test. Выбираю в строке Веб-сервер значение Apache 2.4. Указываю домашний каталог для веб-приложения 1С. В моём случае /home/user/testDB/web. Нажимаю кнопку Опубликовать, а затем соглашаюсь перезапустить Apache2.
17. Проверка запуска базы данных 1С в режиме веб-приложения
Для проверки можно с самого сервера перейти по адресу http://127.0.0.1/test. Или зайти с любого другого сетевого устройства (планшет, смартфон, компьютер) по сетевому адресу или имени сервера 1С:

Выводы
Теперь вы знаете как выполняется установка 1C Ubuntu 20.04. При установке предварительно закачанных пакетов сервера 1С требуется минимум усилий и внимания к деталям, что позволяет автоматизировать установку скриптом на bash.
В современной Ubuntu 64-bit при установке приходится понижать версии различных пакетов, в том числе ответственных за шифрование и обеспечение защиты системы в целом. Для серверов, так или иначе подключённых в общий доступ, необходимо настраивать файрвол (брандмауэр), применять дополнительные пакеты для защиты, например, от перебора паролей fail2ban или использовать сторонние сервисы, созданные для предотвращения автоматизированных или направленных атак.
В целом производительность ОС Ubuntu 20.04 (64-bit) позволяет использовать более «тяжёлые» базы данных, использовать кластер серверов 1С и СУБД, подключать большое количество пользователей как в режиме тонкого клиента 1С, так и в режиме RDP (удалённых рабочих столов) с гарантированно минимальными затратами на аппаратную часть сервера и лицензирование необходимого ПО.
С точки зрения конфигурации сервера на 10 пользователей, моя любимая система выглядит так:
Процессор AMD Ryzen 7 PRO на материнской плате MSI B450M MORTAR MAX, с четырьмя модулями оперативной памяти, видеокартой AMD Radeon R9 Gamer Series 8Gb, с двумя хранилищами на 1000 Gb SSD M.2 (накопитель Kingston KC2000). Такой системный блок, в сборе с корпусом и блоком питания, сегодня может стоить приблизительно 85 000 рублей. В связи с тем, что пропускная способность накопителей и оперативной памяти заявлены приблизительно равными, обмен между хранилищем данных и ОЗУ будет происходить примерно на одинаковой скорости. Поэтому в такой конфигурации не потребуется проводить тонкий тюнинг сервера 1С, СУБД.










