Здравствуйте, Коллега.
Пора бы обновить нашу базу знаний по установкам нового PostgreSQL 16, Сервера 1С и клиентов на Ubuntu 22.04
И да, мы будем использовать новые подходы, методы при установке софта, чтоб поинтереснее )
Для начала, в какой среде будем работать:
Наша задача:
- Создать клиент-серверный вариант работы в 1С на Linux (Мини – сервер на 5 пользователей)
- Установить СУБД PostgreSQL 16 от «PostgresPro» (Сервер: 192.168.131.10)
- Установить Сервер x64 1С 8.3.23 на Ubuntu server (Сервер: 192.168.131.10)
- Установить и настроить клиенты 1С 8.3.23 на Ubuntu Desktop
Предполагается, что Ubuntu server 22.04 на который мы установим как PostgreSQL так и Сервер 1С установлен (Установка по умолчанию).
Подключаемся к нему по SSH используя обычную командную строку CMD, можете использовать и Putty если вам так будет удобнее:
Так все команды и инструкции мы сможем выполнять простым копированием строк в окно консоли CMD, удобно расположившись за своим ПК под управлением Windows или Linux, что не имеет значения.
И так запускаем CMD и выполним подключение к удаленному серверу по SSH
1 |
ssh bogdankuhar@192.168.131.10 |
Всю работу я буду выполнять от имени пользователя bogdankuhar на локальном сервере Ubuntu server 22.04 с IP 192.168.131.10 – который обязательно делаем статическим)
Для начала проверим «локаль»:
1 |
locale |
Как видим на скрине выше, у нас все ок!
Если у вас локаль не ru_RU.UTF-8,
Тогда установим нужную:
1 2 3 4 5 6 7 |
locale-gen en_US ru_RU locale-gen ru_RU.UTF-8 export LANG=ru_RU.UTF-8 dpkg-reconfigure locales |
Сперва проверим, возможно наш ubuntu server нуждается в обновлении (ОБЯЗАТЕЛЬНО! Обновляем!).
1 |
sudo apt update && sudo apt upgrade |
После обновления приступаем к установке PostgreSQL 16
Инструкцию по установке получаем здесь >>>
Открываем нашу инструкцию, что пришла нам на email и копируем первую команду:
1 |
sudo wget https://repo.postgrespro.ru/1c-16/keys/pgpro-repo-add.sh |
Затем, согласно инструкции:
1 |
sudo sh pgpro-repo-add.sh |
И сама установка:
1 |
sudo apt-get install postgrespro-1c-16 |
Пишем “yes”
Готово! PostgreSQL установлен, проверим работает ли он.
1 |
systemctl status postgrespro-1c-16 |
Видим зеленым “active (running)” значит все ок!
PostgreSQL 16 работает + уже настроен “базово” для работы с 1С, кроме необходимых патчей, также внесены необходимые настройки и в сам конфиг.
Нам остается задать пароль для нашего рута postgres от имени которого мы и будем создавать и подключать базы на “Сервере 1С”
(Для лучшей безопасности, можно создать и еще одну роль на сервере PostgreSQL, чтоб не использовать рута).
Выполняем подключения используя утилиту PSQL:
1 |
sudo -u postgres psql |
И зададим пароль для postgres
1 |
ALTER USER postgres WITH PASSWORD 'postgres'; |
Первая часть работы завершена!
Идем на ИТС и скачаем нужные нам дистрибутивы “Сервер 1С x64” и “Платформу 1С на Linux” для их установки на Ubuntu Server и Ubuntu Desktop 22.04
На примере релиза 1С 8.3.23.1912 мы все реализуем!
(Важно!, чтоб клиент и Сервер 1С, были одной и той же версии, включая минорную 1912)
Технологическая платформа 1С 8.3 – номер версии – 8.3.23.1912
Выбираем Сервер 1С: Предприятия (64-bit) для DEB-based Linux-систем
Поместим дистрибутив сервера, что мы скачали, на диск D,
чтоб потом его было проще скопировать на Ubuntu server по SCP
Запускаем еще раз CMD:
1 |
scp D:\INSTALL\1C_8\deb64_8_3_23_1912.tar.gz bogdankuhar@192.168.131.10:/tmp |
Произойдет копирование дистрибутива сервера в папку tmp на Ubuntu Server 22.04
После того как файл будет передан на сервер, посмотрим, что у нас теперь есть внутри каталога tmp.
1 |
cd /tmp |
1 |
ls |
Как видим мы успешно отправили файл в каталог tmp!
Распакуем его там же:
1 |
sudo tar -xzvf deb64_8_3_23_1912.tar.gz |
Установим пакеты все вместе командой:
1 |
sudo dpkg -i *.deb |
Для управления данным экземпляром сервера как обычными службами выполним:
1 |
sudo cp /opt/1cv8/x86_64/8.3.23.1912/srv1cv8-8.3.23.1912\@.service /lib/systemd/system/srv1cv8-8.3.23.1912.service |
Подправим немного права:
1 |
sudo chown root:root /lib/systemd/system/srv1cv8-8.3.23.1912.service |
Обновим список сервисов:
1 |
sudo systemctl daemon-reload |
Активируем запуск сервера при загрузке системы:
1 |
sudo systemctl enable srv1cv8-8.3.23.1912.service |
Запустим и проверим состояние службы (должна быть в состоянии active зеленым цветом!):
1 |
sudo systemctl start srv1cv8-8.3.23.1912.service |
И статус:
1 |
systemctl status srv1cv8-8.3.23.1912.service |
Готово!
Сервер 1С x64 8.3.23.1912 был успешно установлен на Ubuntu server 22.04 LTS
Дополнительно Вам в процессе работы с 1С могут потребоваться вот эти пакеты (Которые также можно установить):
1 2 3 4 5 6 7 |
sudo apt-get install imagemagick sudo apt-get install unixodbc sudo apt-get install ttf-mscorefonts-installer sudo apt-get install libgsf-1-114 |
Осталось установить технологическую платформу (Клиенты) 1С x64 8.3.23.1912 на Ubuntu Desktop 22.04 и создать информационную базу 1С.
Для этого:
- Качаем технологическую платформу 1С x64 8.3.23.1912 (для Linux конечно)
- Копируем также на ПК пользователя
- Запуск инсталляции
- Дополнительные пакеты (Установка)
- Создание новой базы на сервере
Конечно, все также пошагово пройдем вместе!
На ИТС качаем вот эту платформу:
Зарегистрируйтесь, чтоб продолжить чтение статьи
Зарегистрироваться / Войти
Если на этапе создания базы Вы словили ошибку, рекомендую посмотреть это короткое видео >>
Если сервер 1С у вас расположен не вместе из сервером СУБД, тогда читаем это >>>
Откройте для себя техническую сторону 1С с нашим курсом: Администратор 1С.
Практические навыки, экспертное руководство — всё, что нужно для успешного администрирования!
как опубликовать на том же сервере базу 1С на веб сервер для доступа тонких клиентов?
Эта информация есть на курсе Администратор 1С
Богдан, спасибо за Ваши труды! Я не знаю где вы берёте столько времени и сил, но это достойно уважения!
Спасибо 🙂
Рад, что находите полезной мою работу!
Спасибо за статью! Почему отдали предпочтение сборке от PostgresPro, а не от 1с?
Здравствуйте. Команда PostgresPro профессионально и давно занимается именно СУБД PostgreSQL, как то больше доверяю им в этом плане.
Богдан, спасибо большое за статью!
есть вопрос:
почему Сервер 1С инсталируется “по-старому” (из .deb-пакетов через dpkg), тогда как Клиент – “по-новому”, инсталлятора (.run) ?
при том, что для Сервера 1С тоже есть инсталлятор (.run) и он прекрасно работает в LINUX’е где НЕТ GUI …
Здравствуйте. Можно и так и так, я на курсе Администратор 1С как раз показываю как установить Сервер 1C на Ubuntu server 22.04 используя .run Вот в открытом доступе есть мой урок: https://youtu.be/EzAx2nUQlyo?si=wboXTh3FRvkSE0ls
В выше представленной статье (способе) есть преимущества , нет ничего лишнего, если требуется исключительно установить Сервер 1С.
В любом случаи у кого на руках окажутся deb пакеты будут знать как их установить. (У меня уже был случай, когда клиент обратился, мол нет у меня .run что делать ?) Это и сподвигло меня написать статью, где мы вот таким образом установим сервер 1С
Цитата с ИТС 1С: “три nls-пакета содержат языковые файлы и требуют обязательной установки только в том случае, если будут использоваться языки, отличные от русского и английского.” Посему обычно их ставить не надо.
Здравствуйте.
Да, я всегда устанавливаю так как есть языки другие. Но если вы установите не обязательные nls пакеты абсолютно ничего не случится, это безобидные легкие пакеты
Вы копируете файл
sudo cp /opt/1cv8/x86_64/8.3.23.1912/srv1cv8-8.3.23.1912\@.service /lib/systemd/system/srv1cv8-8.3.23.1912.service
А в ИТС пишут, что “необходимо зарегистрировать юнит кластера серверов в systemd:
systemctl link /opt/1cv8/x86_64/8.3.23.1912/srv1cv8-8.3.23.1912@.service
“
Да, с версии 8.3.21 читаем:
В версии 8.3.21 на ОС Linux мы перейдем на использование unit-файлов systemd для запуска сервера 1С:Предприятия (ранее для этого использовались скрипты подсистемы init, ныне считающейся устаревшей). Также будут добавлены unit-файлы systemd для запуска сервера администрирования ras.
Это повысит удобство запуска и конфигурирования экземпляров сервиса 1С:Предприятия для внедрений на Linux, в частности, при необходимости множественного запуска разных экземпляров сервиса.
Я и использую systemd как видите в статье. Но подход другой! Обновление конфигурации systemd с помощью systemctl daemon-reload после копирования файла службы. А при использовании systemctl link, создание символической ссылки автоматически обновляет конфигурацию systemd.
В обоих случаях моя цель – зарегистрировать службу в systemd, но используются разные подходы. А так одно и тоже. Спасибо вам за дополнение!
Приветствую вас Богдан!
Спасибо за статью все классно, подробно расписано.
А есть такая же статья или видео для RPM (типа AlmaLinux).
Я видел где-то ты замеры делал скорости для 1С, Centos (Almalinux) оказался быстрее, чем Ubuntu.
Здравствуйте, Константин.
Пожалуйста!
Нет, по AlmaLinux статьи не писал, и пока не планирую.
Я на какой-нибудь другой RPM – сервер, есть?
Пока только Ubuntu
Добрый день! Видел свободно распространяемые Ваши уроки и наслышан о Вашем курсе. А есть ли в курсе или в статьях на каких-либо ресурсах информация о том как применить (установить и активировать) программную лицензию 1С сервера под Ubuntu без графической оболочки. Ранее пользовались аппаратными, сейчас аппаратную поставить отказались.
если не ошибаюсь при подключении клиентом (с windows или linux не важно) к не активированному серверу будет запрошена лицензия, где можно будет с помощью мастера выполнить активацию программной лицензией, процесс ничем не отличается от активации windows сервера
Здравствуйте.
Нет, пока такой информации.
В статье не указано, как включить отладку.
Видимо смотреть в /lib/systemd/system/srv1cv8-8.3.23.1912.service
Environment=SRV1CV8_DEBUG=”-debug -http”
или просто Environment=SRV1CV8_DEBUG=-debug
Подскажите, а как потом обновить сервер? Я так понимаю нужно удалить старую версию и поставить новую, 1C пишут что надо запустить uninstaller-full, а его нету… Ставил версию 8.3.24.1368, сейчас хочу поставить 8.3.24.1467