Жизнь без Windows, установка серверов на Arch, часть1

13.09.22

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

Пошаговое описание установки сервера 1С 8.3.21 и Postgresql 14 на Arch Linux (актуальность лето 2022)

Преамбула: холивары на тему "Арч в продакшн" попрошу изливать в специализированные темы на форуме. Данная статья никоим образом не призывает использовать указанный дистрибутив, но написана исключительно для тех, кто взвесив все "за" и "против" самостоятельно пришёл к такому решению, либо хочет оценить его сложность в сравнении с другими вариантами.

Предполагается, что читатель немного подготовлен и уже научился устанавливать простые дистрибутивы типа Ubuntu, Mint, Астра и т.д. с графическим окружением, а также смог установить и успешно запустить клиента 1С. Статей на эту тему полно, расписывать смысла нет.

Установка Arch Linux

Инструкция будет "по верхам", раскрывающая отклонения от установки по умочанию. Рекомендую для начала потренироваться в виртуальном окружении, для этого установите QEMU/KVM и virt-manager. Подробный порядок установки QEMU/KVM для своего дистрибутива вы легко найдете в сети, ничего сложного там нет. При выборе железа для виртуального сервера установите контроллер VirtIO SCSI и диск типа SCSI, сетевая карта тоже VirtIO. Удалите ненужные для сервера устройства Планшет и Звук:

 

* В боевом окружении вы скорее всего будете использовать несколько дисков и партиций, особенно для СУБД Postgres, но в данной статье всё будет на одном небольшом диске тренировочной машины.

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

# archinstall
 

Список того что я поменял:

  • Mirror region указал Russia (зеркало репозиториев, необязательно)
  • Выбрал локаль ru_RU.UTF8
  • Разметку диска автоматически на ext4
  • Поменял Hostname на server2
  • Добавил пользователя user1 и дал ему права sudo
  • Выбрал профиль Server, включил sshd
  • Выбрал ядро linux-zen вместо стокового (если политика ИБ требует, то hardened)
  • Дополнительные пакеты mc и base-devel (необязательно, можно установить и позже если надо)
  • Настроил сетевую карту Manual configuration - DHCP
  • Установил Timezone на московское время

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

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

Для выяснения адреса тут же в графической консоли virt-manager логинимся на сервер созданным при установке пользователем user1 и набираем команду ip address:

 

Теперь окно virt-manager можно закрыть и в дальнейшем работа с сервером осуществляется только через удаленную консоль ssh. Наберите в консоли своего рабочего компьютера следующую команду (при первом заходе набираем yes) и далее пароль для user1:

ssh user1@10.1.0.230
 

 

Установка сервера 1С 8.3.21

Скачайте и распакуйте у себя на компьютере полный дистрибутив платформы x64 для Linux. Чтобы копировать файлы с линукса на линукс никакие серверы samba или ftp поднимать и настраивать не требуется, просто зайдите на своем компе в каталог с требуемым файлом и воспользуйтесь командой scp:

$ scp setup-full-8.3.21.1393-x86_64.run user1@10.1.0.230:/home/user1

Файл будет скопирован через протокол ssh в домашний каталог пользователя user1 на сервере. Заходим на сервер с помощью ssh и запускаем установщик с привилегией sudo:

$ cd /home/user1
$ sudo ./setup-full-8.3.21.1393-x86_64.run

Нам нужно установить только сервер, веб-расширение (если требуется), и обязательно администрирование, нажимая в ответ на вопросы 'y' или 'n':

 

После завершения все необходимые файлы установились в каталог /opt/1cv8. Это основной каталог программ 1С в Linux, аналог C:\Program Files\1cv8, для изменения файлов в нём требуются административные права, в Linux это команда sudo.
Для запуска агента сервера 1С в качестве службы необходимо провести несложные манипуляции.

Копируем файл описания службы в системный каталог с новым именем, с этим именем и будет запускаться служба (в команде версия платформы указывается актуальная, в данном случае это 8.3.21.1393), имя службы у нас будет srv1cv8:

$ sudo cp /opt/1cv8/x86_64/8.3.21.1393/srv1cv8-8.3.21.1393@.service /usr/lib/systemd/system/srv1cv8.service

Если требуется режим отладки то редактируем скопированный файл (редактор nano не был установлен, поэтому сначала установим его):

$ sudo pacman -S nano
$ sudo nano /usr/lib/systemd/system/srv1cv8.service

Находим следующую строчку и дописываем в конец -debug

Environment=SRV1CV8_DEBUG=-debug

Жмем Ctrl-O, Enter, Ctrl-X для выхода из редактора. Разрешаем автозапуск службы командой:

$ sudo systemctl enable srv1cv8
Created symlink /etc/systemd/system/multi-user.target.wants/srv1cv8.service U94; /usr/lib/systemd/system/srv1cv8.service.

Запускаем:

$ sudo systemctl start srv1cv8

Проверяем статус службы:

[user1@server2 ~]$ systemctl status srv1cv8
`79; srv1cv8.service - 1C:Enterprise Server 8.3 (8.3.21.1393) ()
     Loaded: loaded (/usr/lib/systemd/system/srv1cv8.service; enabled; vendor preset: disabled)
     Active: active (running) since Fri 2022-07-08 15:14:19 MSK; 1s ago
   Main PID: 1325 (ragent)
      Tasks: 82 (limit: 4687)
     Memory: 59.2M
        CPU: 245ms
     CGroup: /system.slice/srv1cv8.service
             _00;^72;1325 /opt/1cv8/x86_64/8.3.21.1393/ragent -d /home/usr1cv8/.1cv8/1C/1cv8 -port 1540 -regport 1541 -range 1560:1591 -seclev 0 ->
             ^92;^72;1338 /opt/1cv8/x86_64/8.3.21.1393/rmngr -port 1541 -host server2 -range 1560:1591 -d /home/usr1cv8/.1cv8/1C/1cv8/ -debug -tcp>

Если у вас такой же вывод, то поздравляю! Сервер 1С запущен и работает. Но этого нам недостаточно, ведь еще нужно администрировать кластер, а в среде линукс это можно делать только с помощью службы ras.

Создайте с помощью nano или mc новый файл конфигурации службы /usr/lib/systemd/system/srv1cv8-ras.service и введите в него следующее содержание:

[Unit]
Description=1C:Enterprise Remote Administration Service
After=network.target
Requires=network.target
[Service]
Type=simple
ExecStart=/opt/1cv8/x86_64/8.3.21.1393/ras cluster --port=1545
KillSignal=SIGINT
PrivateTmp=true
Restart=on-failure
RestartSec=5
User=usr1cv8
Group=grp1cv8
[Install]
WantedBy=multi-user.target

При необходимости поменяйте порт на другой номер, отличный от 1545.

Включим, запустим и проверим статус службы:

[user1@server2 ~]$ sudo systemctl enable srv1cv8-ras
Created symlink /etc/systemd/system/multi-user.target.wants/srv1cv8-ras.service U94; /usr/lib/systemd/system/srv1cv8-ras.service.
[user1@server2 ~]$ sudo systemctl start srv1cv8-ras
[user1@server2 ~]$ sudo systemctl status srv1cv8-ras
`79; srv1cv8-ras.service - 1C:Enterprise Remote Administration Service
     Loaded: loaded (/usr/lib/systemd/system/srv1cv8-ras.service; enabled; vendor preset: disabled)
     Active: active (running) since Fri 2022-07-08 15:30:53 MSK; 5s ago
   Main PID: 24467 (ras)
      Tasks: 12 (limit: 4687)
     Memory: 17.3M
        CPU: 21ms
     CGroup: /system.slice/srv1cv8-ras.service
             ^92;^72;24467 /opt/1cv8/x86_64/8.3.21.1393/ras cluster --port=1545

июл 08 15:30:53 server2 systemd[1]: Started 1C:Enterprise Remote Administration Service.
июл 08 15:30:53 server2 ras[24467]: 1C:Enterprise 8.3 (x86-64)  (8.3.21.1393) Remote Administration Server started. Ctrl+C to exit.
[user1@server2 ~]$ 

После всех настроек на всякий случай перезагрузим весь сервер и снова проверим статус всех служб. Также проверим какие порты слушает наш сервер:

[root@server2 user1]# netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      345/sshd: /usr/bin/ 
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      337/systemd-resolve 
tcp        0      0 0.0.0.0:5355            0.0.0.0:*               LISTEN      337/systemd-resolve 
tcp        0      0 127.0.0.54:53           0.0.0.0:*               LISTEN      337/systemd-resolve 
tcp        0      0 0.0.0.0:1560            0.0.0.0:*               LISTEN      843/rphost          
tcp        0      0 0.0.0.0:1541            0.0.0.0:*               LISTEN      373/rmngr           
tcp        0      0 0.0.0.0:1540            0.0.0.0:*               LISTEN      344/ragent          
tcp        0      0 0.0.0.0:1545            0.0.0.0:*               LISTEN      343/ras             
tcp6       0      0 :::22                   :::*                    LISTEN      345/sshd: /usr/bin/ 
tcp6       0      0 :::5355                 :::*                    LISTEN      337/systemd-resolve 
tcp6       0      0 :::1560                 :::*                    LISTEN      843/rphost          
tcp6       0      0 :::1541                 :::*                    LISTEN      373/rmngr           
tcp6       0      0 :::1540                 :::*                    LISTEN      344/ragent          
udp        0      0 0.0.0.0:5355            0.0.0.0:*                           337/systemd-resolve 
udp        0      0 0.0.0.0:1541            0.0.0.0:*                           373/rmngr           
udp        0      0 0.0.0.0:1560            0.0.0.0:*                           843/rphost          
udp        0      0 0.0.0.0:34357           0.0.0.0:*                           344/ragent          
udp        0      0 127.0.0.54:53           0.0.0.0:*                           337/systemd-resolve 
udp        0      0 127.0.0.53:53           0.0.0.0:*                           337/systemd-resolve 
udp        0      0 10.1.0.230:68           0.0.0.0:*                           264/systemd-network 
udp6       0      0 :::37989                :::*                                843/rphost          
udp6       0      0 :::5355                 :::*                                337/systemd-resolve 
udp6       0      0 :::1541                 :::*                                373/rmngr           
udp6       0      0 :::1560                 :::*                                843/rphost          
udp6       0      0 :::57572                :::*                                344/ragent          
[root@server2 user1]# 

Для администрирования кластера создаем у себя на компьютере с помощью конфигуратора новую пустую файловую базу 1С и открываем его тонким клиентом, необходимо включить Функкции для технического специалиста и найти обработку Управление серверами

 

 

Готово! Уже можно работать с отдельным сервером СУБД.

Во второй части будет установка Postgresql 14 на этот же сервер.

Вступайте в нашу телеграмм-группу Инфостарт

arch linux postgres postgresql установка настройка 8.3.21

См. также

Linux Системный администратор Бесплатно (free)

Особенности настройки Astra Linux для получения зависимостей пакетов на примере установки платформы 8.3.27.1688.

18.08.2025    1037    Bessome    0    

3

Linux Системный администратор Бесплатно (free)

Статья рассматривает следующие вопросы для ОС Debian: - правильную установку компилятора gcc для сборки компонент из шаблона VNCOMP82, а также скрипт для обновления до версии gcc 3.4.6 (минимально рекомендуемая версия) под старые версии debian 3.x - актуальную ссылку на учебный диск фирмы 1С (свободная лицензия), который содержит шаблоны для внешних компонент по технологии NATIVE. - доработка шаблона VNCOMP82 под debian 64 bit. Использованные в статье скрипты можно использовать для настройки основного окружения. В статье не рассматриваются вопросы, связанные с установкой дистрибутивов.

11.08.2025    958    user1206119    12    

2

Linux Системный администратор Программист Бесплатно (free)

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

28.07.2025    1288    aidar_safin    3    

8

Администрирование веб-серверов Linux Системный администратор Программист 1С v8.3 Бесплатно (free)

Проблема: При переходе с Windows на Linux многие сталкиваются с затруднениями при настройке аутентификации ОС в веб-клиенте 1С через Apache 2.4 (Debian). Решение: Команда Magnit Tech (Центр экспертизы 1С и Сопровождение 1C) разработала готовую инструкцию по настройке веб-клиента 1С на Debian 12 с поддержкой как Windows, так и Linux-серверов. Экономьте время — внедряйте проверенное!

25.07.2025    2325    biryukmikh    13    

24

Linux Системный администратор Бесплатно (free)

Благодаря Ansible процесс развертывания и тонкой настройки сервера 1С на Linux можно полностью автоматизировать. В статье расскажем, как с помощью Ansible-плейбуков быстро и без ошибок подготовить инфраструктуру для работы 1С:Предприятие. Разберемся, как подготовить WSL для локального тестирования Ansible-сценариев перед их запуском на реальных серверах. Рассмотрим автоматизированное создание виртуальных машин с помощью Ansible, которое значительно ускоряет развертывание инфраструктуры. На практическом примере покажем, как дорабатывать роли в плейбуках для адаптации под конкретные задачи. Уделим внимание оптимизации Linux-сервера для 1С: настройке ОС, установке необходимых зависимостей и параметров для стабильной работы. Разберем процесс установки платформы 1С, настройки службы и логирования, а также интеграцию систем мониторинга (Zabbix и других) для контроля состояния сервера в реальном времени.

23.07.2025    1577    aidar_safin    0    

11

Администрирование СУБД Linux Сервера Системный администратор Программист Бесплатно (free)

В современных Windows 10 и 11 можно использовать WSL (Windows Subsystem for Linux) для запуска Linux окружения. Возникает соблазнительная мысль: может, PostgreSQL и сервер 1С запустить в WSL. Или даже хуже: в Docker на WSL. Знал бы, что будет сложно - даже не начинал :) Сложность кроется в том, что WSL это не полноценные виртуалки, а легковестные контейнеры Hyper-V с особенностями сети и GUI. Из плюсов, наверно, только размер и скорость запуска.

21.07.2025    1871    FSerg    2    

7

Администрирование СУБД Linux Системный администратор Программист 1С v8.3 Бесплатно (free)

Преимущества использования PostgreSQL как объектно-реляционной СУБД и Linux в качестве операционной системы сервера

02.06.2025    4505    PROSTO-1C    12    

2

Обновление 1С Linux Системный администратор Программист Бесплатно (free)

Пошаговая инструкция для обновления платформы 1С на сервере Linux Debian.

28.03.2025    3147    California_Dreaming    3    

5
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. malikov_pro 1347 08.07.22 20:57 Сейчас в теме
Вариант под ubuntu https://infostart.ru/1c/articles/1613181/, с ключами для 8.3.21 разобрался. По PG так же готовая установка, возможно под arch адаптировать нужно
2. App0st0l 31 09.09.22 17:24 Сейчас в теме
Запускаем:

$ sudo systemctl enable srv1cv8


Здесь наверное $ sudo systemctl start srv1cv8
3. cdiamond 235 13.09.22 07:19 Сейчас в теме
4. onec.developer 174 17.02.23 08:48 Сейчас в теме
Где обещанная вторая часть? =)
5. cdiamond 235 22.03.24 11:46 Сейчас в теме
все новые статьи читайте на моем личном сайте almaz-sharipov.ru, т.к. не хочу ограничивать себя в высказываниях в адрес 1С и подставлять хостера или работодателя.
Для отправки сообщения требуется регистрация/авторизация