Подробный гайд: Настройка сервера 1С:Предприятие на базе ALT Linux (Альт Линукс)
Настройка сервера 1С:Предприятие на базе ALT Linux (Альт Линукс) — это многоэтапный процесс, требующий внимательности к деталям, особенно к настройкам СУБД и правам доступа.
Ниже представлен подробный гайд по установке и настройке сервера 1С:Предприятие 8.3 (сервер без клиента) с использованием PostgreSQL в качестве СУБД.
Подготовка и требования
- Дистрибутивы: Вам понадобятся установочные пакеты сервера 1С (формат
.rpm, скачанные с releases.1c.ruu) и дистрибутив ALT Linux Server. - Права: Все действия выполняются от имени
rootили черезsudo. - Архитектура: Гайд подразумевает установку СУБД и Сервера 1С на один физический сервер (для средних баз). Для крупных внедрений их рекомендуется разносить.
Шаг 1: Подготовка ОС ALT Linux
Перед установкой необходимо обновить систему и настроить базовые параметры.
1. Обновление пакетов:
apt-get update
apt-get dist-upgrade -y
2. Настройка часового пояса и времени (критично для 1С и PostgreSQL):
timedatectl set-timezone Europe/Moscow # Укажите ваш часовой пояс
systemctl enable --now chronyd # Синхронизация времени
3. Настройка локали:
Серверу 1С и PostgreSQL необходима локаль UTF-8.
Проверьте:
localectl status
Если не установлена ru_RU.UTF-8, выполните:
localectl set-locale ru_RU.UTF-8
4. Отключение прозрачных огромных страниц (THP):
PostgreSQL и 1С плохо работают с THP. Отключите их:
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
Чтобы настройка сохранилась после перезагрузки, добавьте ее в /etc/rc.local или создайте systemd-юнит.
Шаг 2: Установка и настройка PostgreSQL
Для 1С рекомендуется использовать PostgreSQL версии 13, 14 или 15.
Примечание:
Исторически 1С требовала "пропатченный" PostgreSQL, но начиная с платформы 8.3.18+ отлично работает стандартный PostgreSQL или Postgres Pro при правильной настройке.
1. Установка:
apt-get install postgresql-server postgresql-contrib -y
2. Инициализация кластера:
service postgresql initdb
3. Настройка postgresql.conf:
Файл конфигурации обычно находится в /var/lib/pgsql/data/postgresql.conf.
Откройте его:
nano /var/lib/pgsql/data/postgresql.conf
Внесите параметры (пример для сервера с 16 ГБ ОЗУ, используйте калькуляторы PostgreSQL для точных значений):
listen_addresses = '*' # Если 1С и БД на разных серверах, или 'localhost', если на одном
port = 5432
max_connections = 200 # Зависит от количества пользователей 1С
shared_buffers = 4GB # 25% от ОЗУ
effective_cache_size = 12GB # 75% от ОЗУ
work_mem = 16MB
maintenance_work_mem = 512MB
temp_buffers = 32MB
default_statistics_target = 100 # Важно для планов запросов 1С
4. Настройка доступа (pg_hba.conf):
Откройте /var/lib/pgsql/data/pg_hba.conf и разрешите подключения:
# Разрешить локальные подключения
local all all trust
host all all 127.0.0.1/32 md5
# Если сервер 1С на другой машине, укажите его IP:
host all all <IP_сервера_1С>/32 md5
5. Запуск службы:
systemctl enable --now postgresql
6. Создание пользователя БД для 1С:
su - postgres
createuser -P usr1cv8 # Задайте сложный пароль
# Дать права суперпользователя (на этапе создания базы необходимо)
alteruser -P postgres # Убедитесь, что знаете пароль postgres
exit
Шаг 3: Установка Сервера 1С:Предприятие
1. Загрузка пакетов:
Скачайте архив с сервером 1С для Linux (x86_64) и распакуйте его в папку, например /tmp/1c.
Вам нужны пакеты:
1c-enterprise-server-*.rpm1c-enterprise-server-common-*.rpm1c-enterprise-ws-*.rpm1c-enterprise-crs-*.rpm(для версий 8.3.20+)
2. Установка пакетов через apt-get (рекомендуется для подтягивания зависимостей):
cd /tmp/1c
apt-get install ./1c-enterprise-*.rpm
Во время установки может потребоваться принять лицензионное соглашение.
3. Проверка службы:
В зависимости от версии пакетов служба может называться srv1cv8 или srv1cv83.
systemctl status srv1cv8
Если служба не запущена, включите её:
systemctl enable --now srv1cv8
4. Пользователь и права:
При установке создается системный пользователь usr1cv8. Убедитесь, что у него есть права на директории 1С:
chown -R usr1cv8:grp1cv8 /opt/1cv8/ /var/opt/1cv8/
Шаг 4: Настройка кластера 1С и создание базы данных
Управление кластером 1С в Linux осуществляется через консоль администрирования (графическую, если есть клиент, или веб-консоль).
1. Порты 1С:
Убедитесь, что в брандмауэре открыты порты:
1540,1541(агент сервера)1560-1591(рабочие процессы)
iptables -A INPUT -p tcp --dport 1540:1591 -j ACCEPT
2. Создание базы данных:
- Откройте графическую консоль администрирования серверов 1С на рабочем месте администратора.
- Подключитесь к серверу:
Имя_сервера:1541. - Создайте новый Кластер.
- В свойствах кластера укажите СУБД: PostgreSQL.
- Укажите параметры подключения к БД: сервер (127.0.0.1), порт (5432), имя БД (например,
base1c), пользователь (usr1cv8илиpostgres) и пароль. - Нажмите "Создать базу данных". Сервер 1С сам создаст пустую БД в PostgreSQL.
Шаг 5: Публикация базы на веб-сервере (Опционально)
Если вам нужен доступ к 1С через браузер или мобильное приложение:
1. Установка Apache:
apt-get install apache2 -y
2. Публикация через webinst:
Перейдите в каталог установленной 1С (путь зависит от версии, например 8.3.22.1234):
cd /opt/1cv8/x86_64/8.3.22.1234/
Выполните команду публикации (пример для Apache):
./webinst -apache -wsdir base1c -dir /var/www/html/base1c -connstr "Srvr='127.0.0.1';Ref='base1c';" -confpath /var/www/html/base1c -wrkconn "Srvr='127.0.0.1';Ref='base1c';"
Замените base1c на имя вашей информационной базы в кластере 1С.
3. Перезапуск Apache:
systemctl restart apache2
Теперь база доступна по адресу: http://<IP-сервера>/base1c
Шаг 6: Лицензирование
Сервер 1С требует лицензии (программной или аппаратной).
1. Программные лицензии:
При первом запуске сервера или подключении клиента, если лицензия не найдена, служба 1С остановится. Вам нужно активировать лицензию через утилиту license или положить файл .lic в каталог /opt/1cv8/conf/ (или /var/opt/1cv8/license/).
2. Аппаратные ключи (USB):
Если ключ вставлен в сервер, установите пакет 1c-enterprise-hasp и убедитесь, что демон haspd запущен:
systemctl status haspd
Частые проблемы и их решение (Troubleshooting)
- Ошибка "Недостаточно памяти" или "Соединение с сервером прервано":
- Проверьте настройки
shared_buffersиwork_memв PostgreSQL. - Убедитесь, что отключен THP (Шаг 1.4).
- Проверьте настройки
- Сервер 1С не запускается:
- Проверьте логи:
journalctl -u srv1cv8 -fили файлы в/var/log/1c/. - Часто проблема в правах:
chown -R usr1cv8:grp1cv8 /var/opt/1cv8/.
- Проверьте логи:
- Ошибка подключения к БД (Ошибка соединения с ИБ):
- Проверьте
pg_hba.conf— разрешен ли доступ для пользователя, под которым 1С стучится в PostgreSQL. - Проверьте, слушает ли PostgreSQL сеть (
netstat -tulnp | grep 5432).
- Проверьте
- Тормоза при работе:
- В 1С на Linux критически важна настройка
default_statistics_target = 100в PostgreSQL и регулярное выполнениеANALYZE(обновление статистики). В 1С для этого есть регламентное задание "Обновление статистики".
- В 1С на Linux критически важна настройка
Полезные команды
- Проверить порты 1С:
netstat -tulnp | grep 15 - Перезапуск 1С:
systemctl restart srv1cv8 - Логи PostgreSQL:
/var/lib/pgsql/data/log/(или/var/log/pgsql/)
Этот гайд покрывает базовую, но надежную установку. Для высоконагруженных систем (от 100 пользователей) потребуется тюнинг ядра Linux (sysctl.conf), настройка пула соединений (PgBouncer) и балансировка нагрузки.
Мы делимся этой технической информацией, чтобы помочь вам в решении задач — используйте её с пониманием. Статья носит рекомендательный характер, поэтому, пожалуйста, применяйте описанные методы осмотрительно.