1С:Предприятие 8.3 на Debian: сервер, клиент и первая база без Wine
Содержание
Установить 1С на Linux Debian можно нативно, без Wine: у платформы 8.3 есть родные 64-битные сборки сервера, толстого и тонкого клиента
. Вы скачиваете дистрибутив «для Linux», ставите зависимости и шрифты, запускаете установщик setup-full-<версия>-x86_64.run и регистрируете службу сервера в systemd. На всё уходит 30–60 минут.
Частое заблуждение — что 1С под Linux работает только через Wine. Это верно для 1С 7.7 и очень старых сборок. Для 8.3 Wine не нужен и даже вреден: нативный клиент быстрее, стабильнее и официально поддерживается.
Что проверить в Debian перед установкой 1С
Начните с выбора версии платформы. Каждый релиз 1С поддерживает свой список дистрибутивов. Debian 11 и 12 поддерживаются актуальными версиями 8.3. На самом свежем Debian может не оказаться нужных библиотек — тогда либо берите более новую платформу, либо стабильный выпуск Debian.
Минимальные требования для небольшой базы на 5–10 пользователей:
- 💻 64-битная система (32-битные сборки для сервера давно не актуальны);
- 🧠 от 4 ГБ оперативной памяти на сервер 1С, ещё 4–8 ГБ, если на той же машине PostgreSQL;
- 💾 SSD под базы данных — разница с HDD заметна сразу;
- 🔑 права
rootилиsudoна время установки; - 🌐 постоянный IP-адрес и имя хоста, которое разрешается с клиентских машин.
Обновите систему и включите русскую локаль
Сервер 1С ожидает русскую локаль в UTF-8. Без неё возможны «кракозябры» в журналах и ошибки сортировки.
sudo apt update && sudo apt upgrade -y
sudo dpkg-reconfigure locales
# отметьте ru_RU.UTF-8, локаль по умолчанию можно оставить en_US.UTF-8
Поставьте шрифты и библиотеки
Без шрифтов Microsoft печатные формы «плывут», а в интерфейсе появляются квадраты. Пакет ttf-mscorefonts-installer лежит в разделе contrib, поэтому сначала добавьте его в /etc/apt/sources.list (строка вида deb http://deb.debian.org/debian bookworm main contrib).
sudo apt update
sudo apt install -y fontconfig ttf-mscorefonts-installer libgsf-1-114 \
libwebkit2gtk-4.0-37 unixodbc
sudo fc-cache -fv
Библиотека libwebkit2gtk нужна графическому клиенту: через неё отображаются HTML-поля, справка и формы интернет-поддержки. На чистом сервере без рабочего стола её можно не ставить.
Имя хоста проверьте командой hostname -f. Если клиенты будут подключаться по имени, оно должно разрешаться и на самом сервере, и на рабочих местах — через DNS или /etc/hosts.
Установка сервера 1С на Debian: установщик и служба
Дистрибутив берут в личном кабинете на портале обновлений 1С — нужна действующая подписка или договор с партнёром. Выбирайте пункт «Технологическая платформа 1С:Предприятия (64-bit) для Linux». Начиная с версии 8.3.20 внутри архива один универсальный установщик с расширением .run вместо набора отдельных deb-пакетов.
Запустите установщик
mkdir ~/1c && cd ~/1c
tar -xzf server64_8_3_*.tar.gz # имя архива зависит от версии
chmod +x setup-full-*-x86_64.run
sudo ./setup-full-*-x86_64.run --mode unattended \
--enable-components server,server_admin,ws,ru
Что означают компоненты:
| Компонент | Что ставит | Когда нужен |
|---|---|---|
server | Сервер 1С:Предприятия | Всегда на сервере |
server_admin | Сервер администрирования ras и утилита rac | Для управления кластером из консоли |
ws | Модули расширения веб-сервера | Если планируете веб-клиент или HTTP-сервисы |
client_full | Толстый клиент и конфигуратор | На рабочем месте администратора |
client_thin | Тонкий клиент | На рабочих местах пользователей |
ru | Русский интерфейс | Практически всегда |
Без параметра --mode unattended откроется графический мастер. На сервере без рабочего стола он может не запуститься — тогда используйте тихий режим.
Платформа ложится в /opt/1cv8/x86_64/<версия>/. Установщик создаёт системного пользователя usr1cv8, от имени которого работает сервер. Данные кластера хранятся в /home/usr1cv8/.1cv8/1C/1cv8/.
Зарегистрируйте и запустите службу
С версии 8.3.21 в каталог платформы кладётся готовый unit-файл для systemd. Для другой версии подставьте свой номер:
VER=8.3.24.1467
sudo systemctl link /opt/1cv8/x86_64/$VER/srv1cv8-$VER@.service
sudo systemctl enable srv1cv8-$VER@default
sudo systemctl start srv1cv8-$VER@default
sudo systemctl status srv1cv8-$VER@default
В статусе должно быть active (running). В старых версиях служба запускалась скриптом /etc/init.d/srv1cv83 — если ставите платформу ниже 8.3.21, ищите его.
Проверьте, что сервер слушает порты:
sudo ss -tlnp | grep -E '1540|1541|156'
Откройте порты
Клиент сначала обращается к агенту сервера (порт 1540), затем к менеджеру кластера (1541) и рабочим процессам. Диапазон портов рабочих процессов по умолчанию — 1560–1591, он задаётся в свойствах рабочего сервера.
sudo ufw allow 1540:1541/tcp
sudo ufw allow 1560:1591/tcp
sudo ufw allow 1545/tcp # только если нужен удалённый доступ к ras
СУБД для информационных баз: PostgreSQL на Debian
Серверу 1С нужна СУБД. На Debian обычно выбирают PostgreSQL, но не из стандартного репозитория, а сборку с патчами для 1С. Её публикует фирма 1С на портале обновлений, есть и коммерческая Postgres Pro. Обычный PostgreSQL из apt с 1С работать не будет: нет нужных расширений, например типа mchar.
После установки задайте пароль служебному пользователю:
sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD 'надёжный_пароль';"
Если PostgreSQL стоит на той же машине, что и сервер 1С, открывать порт 5432 наружу не нужно.
Версию PostgreSQL сверяйте с требованиями вашей платформы. Слишком новая СУБД может не поддерживаться выбранным релизом 1С.
Клиент 1С на Debian: нативно или через Wine
На рабочем месте ставят клиентскую часть тем же установщиком:
sudo ./setup-full-*-x86_64.run --mode unattended \
--enable-components client_full,client_thin,ru
После установки ярлыки «1С:Предприятие» появятся в меню рабочего стола. Из терминала толстый клиент запускается файлом /opt/1cv8/x86_64/<версия>/1cv8, тонкий — 1cv8c в том же каталоге. Список баз хранится в ~/.1C/1cestart/ibases.v8i — его можно перенести с Windows-машины.
Когда Wine всё-таки нужен
Нативный клиент открывает любые конфигурации 8.3. Wine остаётся только для двух случаев:
- 🗄 база на 1С 7.7 — родного клиента под Linux у неё нет;
- 🧩 внешняя компонента или драйвер оборудования, выпущенные только под Windows.
Во втором случае лучше сначала поискать Linux-версию компоненты у разработчика. Связка «1С 8.3 под Wine» на практике медленнее и капризнее нативного клиента.
Другие способы работать с 1С с Debian-машины
Если ставить клиент на каждое рабочее место не хочется, есть три обходных пути:
| Способ | Когда подходит | Ограничения |
|---|---|---|
| Веб-клиент в браузере | Удалённые сотрудники, разные ОС | Нужна веб-публикация базы, часть оборудования не работает |
| RDP к Windows-серверу | Есть терминальный сервер с 1С | Нужны лицензии Windows на терминальный доступ |
| Виртуальная машина с Windows | Одна специфичная программа под Windows | Расход памяти, отдельная лицензия Windows |
Для обычной бухгалтерии и учёта нативного тонкого клиента хватает с запасом.
Лицензии на клиенте и сервере
Программную лицензию активируют при первом запуске клиента или через утилиту ring. Она привязывается к параметрам компьютера: сменили сетевую карту или переставили систему — может потребоваться повторная активация.
Для аппаратного ключа HASP на Debian нужен драйвер aksusbd от производителя ключей. Без него платформа ключ не увидит. Серверная лицензия ставится на машину с сервером 1С, клиентские — на сервер или на рабочие места, в зависимости от схемы.
Без лицензии платформа базу не откроет — исключение только учебная версия.
Подключение к серверу 1С и создание первой базы
Базу создают из клиента, кластер уже готов после старта службы.
- Запустите 1С и нажмите
Добавить. - Выберите
Создание новой информационной базы, затем шаблон конфигурации или пустую базу. - Укажите вариант размещения
На сервере 1С:Предприятия. - Заполните поля: кластер серверов
— имя или IP сервера Debian, имя базы — латиницей без пробелов, тип СУБД —
PostgreSQL. - Сервер баз данных —
localhost, если СУБД на той же машине; пользователь —postgresи его пароль. - Отметьте
Создать базу данных в случае ее отсутствияи нажмитеДалее.
Строка подключения в списке баз будет выглядеть как Srvr="debian-1c";Ref="buh";.
Управление кластером из консоли
Графической консоли администрирования под Linux нет. Есть утилита rac, которая работает через сервер администрирования ras:
sudo -u usr1cv8 /opt/1cv8/x86_64/$VER/ras cluster --daemon
/opt/1cv8/x86_64/$VER/rac cluster list
/opt/1cv8/x86_64/$VER/rac infobase summary list --cluster=<uuid>
Остальные команды смотрите в справке rac help. С Windows-машины можно подключиться к
ras стандартной консолью администрирования — укажите адрес сервера и порт 1545.
Веб-клиент через Apache
Если нужен доступ из браузера, поставьте Apache и опубликуйте базу утилитой webinst из каталога платформы:
sudo apt install -y apache2
sudo /opt/1cv8/x86_64/$VER/webinst -apache24 -wsdir buh \
-dir /var/www/buh -connstr "Srvr=localhost;Ref=buh;"
sudo systemctl restart apache2
База откроется по адресу http://<сервер>/buh. Для доступа из интернета обязательно настройте HTTPS.
Чтобы 1С на Debian работала быстро
Медленная 1С на Linux чаще всего упирается не в платформу, а в настройки СУБД и дисков.
- ⚙️ PostgreSQL. Начальная точка:
shared_buffers— около 25% памяти,effective_cache_size— 50–75%. Значения по умолчанию рассчитаны на очень слабые машины. - 💽 Диски. Базу и журнал транзакций держите на SSD. Каталог временных файлов сервера 1С тоже лучше на быстром диске.
- 🧠 Память. Подключите своп хотя бы на 2–4 ГБ. Без него при пиковой нагрузке ядро может завершить рабочий процесс
rphostпо нехватке памяти — пользователи получат обрыв сеанса. - 🔁 Рабочие процессы. Число процессов и лимиты памяти задаются в свойствах рабочего сервера. Для 10–20 пользователей хватает настроек по умолчанию.
- 🕐 Регламент. Обслуживание БД (
VACUUM,ANALYZE) по расписанию ночью заметно ускоряет отчёты на больших базах.
Перезапуск службы сервера 1С обрывает сеансы всех пользователей. Меняйте параметры кластера и перезапускайте srv1cv8 вне рабочего времени, предупредив сотрудников.
Ошибки при установке и запуске 1С на Debian
Большинство проблем решается установкой недостающего пакета или правкой сети. Первым делом проверьте, каких библиотек не хватает исполняемому файлу:
ldd /opt/1cv8/x86_64/$VER/1cv8 | grep "not found"
Каждая строка в выводе — пакет, который нужно доустановить. Название пакета по имени библиотеки ищут командой apt-file search <имя>.
Если служба падает сразу после старта, смотрите журнал: journalctl -u srv1cv8-$VER@default -n 50. Частая причина — неверные права на /home/usr1cv8/.1cv8. Владельцем каталога должен быть usr1cv8.