Гид по технологиям

Как установить OpenERP 6 на сервер Ubuntu 10.04 LTS

7 min read Установка Обновлено 03 Oct 2025
Установка OpenERP 6 на Ubuntu 10.04 LTS
Установка OpenERP 6 на Ubuntu 10.04 LTS

Краткое содержание

  • Требования и подготовка сервера
  • Создание системного пользователя для OpenERP
  • Установка и настройка PostgreSQL
  • Установка зависимостей Python и кода OpenERP
  • Пример конфигурационного файла и запуск сервера
  • Резервное копирование, обновление, отладка и рекомендации по безопасности

Введение

Это руководство было основано на оригинальном руководстве и адаптировано для читателей, которые предпочитают ручную установку OpenERP 6 на Ubuntu 10.04 LTS. Ручная установка даёт больше контроля над версиями, обновлениями и пользовательскими модулями. Ubuntu 10.04 уже устарела и не получает обновлений безопасности — по возможности планируйте миграцию на более современную платформу.

Важно: перед установкой убедитесь, что у вас есть резервные копии данных и план отката.

Основные цели установки

  • Доступность только через зашифрованные каналы (SSL) для GTK-клиента, веб-интерфейса, WebDAV и CalDAV
  • Простота обновления и кастомизации без «черного ящика» пакетов

Предварительные требования

  • Сервер с Ubuntu 10.04 LTS (желательно минимальная установка)
  • Доступ по SSH с учётной записью пользователя с sudo-привилегиями
  • Доступ в интернет для загрузки пакетов и исходников

Важно: для продакшена рекомендуется настроить брандмауэр, ограничить SSH доступ по ключам и использовать VPN или проксирование при необходимости.


Шаг 1. Сборка сервера и базовая защита

Установите минимальную систему и затем установите OpenSSH и базовый инструмент защиты от грубой силы (например, denyhosts). Это простые шаги, доступные сразу после первого перезагрузки сервера.

sudo apt-get install openssh-server denyhosts

Затем обновите систему до последних патчей:

sudo apt-get update  
sudo apt-get dist-upgrade

Рекомендуется перезагрузить сервер и проверять доступность по SSH.

Примечание: настройка SSH на основе ключей значительно повышает безопасность по сравнению с паролями.


Шаг 2. Создаём системного пользователя OpenERP

Создайте системного пользователя без интерактивного входа, чей домашний каталог будет /opt/openerp — это место, куда поместим код приложения.

sudo adduser --system --home=/opt/openerp --group openerp

Пояснение: системный пользователь обычно имеет UID < 1000, оболочку /bin/false и логины отключены. /opt/openerp будет создан автоматически.


Шаг 3. Установка и настройка PostgreSQL

Установите сервер базы данных PostgreSQL:

sudo apt-get install postgresql

Переключитесь на пользователя postgres и создайте роль/пользователя для OpenERP (вам будет предложено ввести пароль):

sudo su - postgres
createuser --createdb --username postgres --no-createrole --pwprompt openerp

После создания роли выйдите:

exit

Совет: запомните (или безопасно сохраните) пароль, введённый для роли openerp — он будет использован в конфигурации OpenERP.

Безопасность: продумайте ограничения доступа к PostgreSQL (pg_hba.conf) — по умолчанию связь локальная, но в продуктивной среде стоит ограничить доступ по IP и использовать SSL для внешних подключений.


Шаг 4. Установка Python-библиотек, необходимых серверу

Установите основные Python-пакеты, которые требуются OpenERP 6 для работы сервера и генерации отчётов:

sudo apt-get install python python-psycopg2 python-reportlab \  
python-egenix-mxdatetime python-tz python-pychart python-mako \  
python-pydot python-lxml python-vobject python-yaml python-dateutil \  
python-pychart python-pydot python-webdav

Если планируете использовать веб-клиент, установите дополнительные библиотеки:

sudo apt-get install python-cherrypy3 python-formencode python-pybabel \  
python-simplejson python-pyparsing

Примечание: пакеты в репозитории Ubuntu 10.04 могут быть устаревшими. Для критичных задач рассмотрите изоляцию окружения (виртуальные окружения, chroot или контейнеры) или обновление ОС.


Шаг 5. Загрузка и установка кода OpenERP

Скачайте исходники в домашнюю папку (или любую другую, где вы работаете):

wget http://www.openerp.com/download/stable/source/openerp-server-6.0.2.tar.gz

Веб-клиент (опционально):

wget http://www.openerp.com/download/stable/source/openerp-web-6.0.2.tar.gz

Распакуйте их в /opt/openerp и присвойте владельца openerp:

cd /opt/openerp  
sudo tar xvf ~/openerp-server-6.0.2.tar.gz  
sudo tar xvf ~/openerp-web-6.0.2.tar.gz

Измените владельца файлов и сгруппируйте каталоги под понятные имена:

sudo chown -R openerp: *  

sudo cp -a openerp-server-6.0.2 server  
sudo cp -a openerp-web-6.0.2 web

Подход: используем копирование вместо символических ссылок, чтобы обновление представляло собой простое перезаписывание файлов и при этом локальные настройки/модули оставались в каталоге server/bin/addons.


Шаг 6. Пример конфигурации OpenERP и запуск

Ниже приведён пример конфигурационного файла, добрый для начальной настройки. Сохраните его как /etc/openerp-server.conf и защитите права доступа.

[options]
; This is the password that allows database operations
; Will be written to by the server when password is changed
; !! Keep this file secure !!
; admin_passwd = admin
root_path = /opt/openerp/server/bin
without_demo = False
verbose = False
; Database settings
db_user = openerp
db_password = ********
; Please uncomment the following line *after* you have created the
; database. It activates the auto module check on startup.
; db_name = False
db_port = False
db_host = False
db_maxconn = 64
; Networking Settings
xmlrpc = True
xmlrpc_interface =
xmlrpc_port = 8069
netrpc = True
netrpc_interface =
netrpc_port = 8070
; Uncomment these for xml-rpc over SSL
;xmlrpcs = True
;xmlrpcs_interface =
;xmlrpcs_port = 8071
;secure_pkey_file = /etc/ssl/openerp/server.pkey
;secure_cert_file = /etc/ssl/openerp/server.crt
; Log settings
logfile = /var/log/openerp/openerp-server.log
syslog = False
logrotate = True
log_level = info
; False prevents the client displaying the list of databases
list_db = True
addons_path = /opt/openerp/server/bin/addons
demo = {}
soap = False
reportgz = False
translate_modules = ['all']
; Static http parameters
static_http_enable = False
static_http_document_root = /var/www/html
static_http_url_prefix = /
; Outbound email configuration
;smtp_user = [email protected]
;email_from = "OpenERP Support" <[email protected]>
;smtp_port = 25
;smtp_password = ********
;smtp_ssl = True
;smtp_server = mail.example.com

Защитите файл конфигурации и назначьте владельца:

sudo chown openerp:root /etc/openerp-server.conf  
sudo chmod 640 /etc/openerp-server.conf

Отредактируйте db_password, указав пароль, который вы задали на этапе создания пользователя PostgreSQL:

sudo nano /etc/openerp-server.conf

Проверочный запуск (временно от имени текущего пользователя):

/opt/openerp/server/bin/openerp-server.py --config=/etc/openerp-server.conf

Нажмите Ctrl+C, чтобы остановить тестовый запуск. Для корректной работы сервер должен запускаться от пользователя openerp — ниже приведены примеры автозапуска.


Запуск как служба (Upstart для Ubuntu 10.04)

Пример простого Upstart-конфигурационного файла /etc/init/openerp.conf:

description "OpenERP server"

start on runlevel [2345]
stop on runlevel [!2345]

respawn

setuid openerp
setgid openerp

env PATH=/opt/openerp/server/bin:/usr/bin:/bin

exec /opt/openerp/server/bin/openerp-server.py --config=/etc/openerp-server.conf

Сохраните файл и управляйте службой командами:

sudo start openerp
sudo stop openerp
sudo status openerp

Альтернатива: если вы предпочитаете SysV-скрипт, можно использовать init.d-скрипт, обеспечив корректные start/stop действия и запуск от пользователя openerp.


Резервное копирование и восстановление

Резервное копирование PostgreSQL (рекомендуется делать ежедневно и перед апгрейдом):

  • Для конкретной базы данных:
pg_dump -U openerp -F c -b -v -f /var/backups/openerp-db.dump <имя_базы>
  • Для всех баз (полный дамп):
pg_dumpall -U openerp > /var/backups/openerp-all.sql

Восстановление из дампа:

pg_restore -U openerp -d <имя_новой_бд> /var/backups/openerp-db.dump

Совет: тестируйте процесс восстановления регулярно на тестовой машине.


Обновление OpenERP (процесс и советы)

Подход, используемый в этом руководстве, предполагает скачивание новой версии исходников в /opt/openerp, проверку на тестовой среде и затем перезапись папки server/ web/ командами cp -a. Рекомендуемый порядок:

  1. Скопируйте текущую рабочую директорию на тестовую машину.
  2. Распакуйте новую версию в /opt/openerp (как отдельную папку, напр. openerp-server-6.0.3).
  3. Протестируйте совместимость пользовательских модулей и шаблонов отчётов.
  4. Выполните backup БД и файлов.
  5. Переключите/перезапишите production server: sudo cp -a openerp-server-6.0.3 server
  6. Перезапустите службу и проверяйте логи.

Если что-то идёт не так — откат возможен, восстановив файлы и базу из резервной копии.


Отладка и типичные проблемы

  • Сервер не запускается — проверьте права на конфигурационный файл (/etc/openerp-server.conf) и владельца процессов. Убедитесь, что службы запускаются под пользователем openerp.
  • Ошибка подключения к БД — проверьте db_user и db_password в конфиге; проверьте настройки в /etc/postgresql/*/pg_hba.conf и доступ локального сокета/порта.
  • Проблемы с модулями — проверьте addons_path и права доступа к каталогам модулей.
  • Логи: /var/log/openerp/openerp-server.log (поменяйте log_level на debug для более подробной информации)

Примеры команд для проверки процессов и портов:

sudo netstat -plnt | grep 8069
ps aux | grep openerp
tail -f /var/log/openerp/openerp-server.log

Безопасность и SSL

  • Для защищённого доступа к веб-клиенту и XML-RPC используйте обратный прокси (nginx/apache) с SSL и перенаправлением на локальные порты сервера OpenERP.
  • Альтернативно можно активировать xmlrpcs и указать secure_cert_file/secure_pkey_file в конфиге, но часто проще и безопаснее использовать отдельный веб-сервер/прокси.
  • Ограничьте список IP, которым разрешён доступ к интерфейсу администратора PostgreSQL.
  • Защитите /etc/openerp-server.conf: в нём хранится пароль базы.

Важно: Ubuntu 10.04 не получает обновлений — в долгосрочной перспективе миграция ОС поможет снизить риск уязвимостей.


Роли и чек-листы (быстрые контрольные списки)

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

  • Установил и сконфигурировал SSH с ключами
  • Настроил denyhosts/iptables
  • Обновил систему и перезагрузил
  • Создал системного пользователя openerp

DBA:

  • Установил PostgreSQL
  • Создал роль openerp и сохранил пароль
  • Настроил резервное копирование и тест восстановления
  • Ограничил доступ в pg_hba.conf

Разработчик/интегратор:

  • Установил зависимости Python
  • Проверил путь addons_path и права
  • Протестировал кастомные модули на тестовой копии базы

Риск-матрица и меры смягчения

  • Устаревшая ОС (высокий риск): мигрировать на поддерживаемую версию Debian/Ubuntu или контейнеризацию.
  • Потеря данных при апгрейде (средний): всегда делать backup БД и файлов и тестировать восстановление.
  • Утечка паролей из конфигурации (средний): защитить /etc/openerp-server.conf правами 640 и владельцем openerp:root.
  • Доступ по незащищённым соединениям (высокий): использовать SSL/обратный прокси.

Критерии приёмки

  1. OpenERP запускается как служба под пользователем openerp без ошибок в логах.
  2. Веб-интерфейс доступен через HTTPS (если настроен обратный прокси).
  3. OpenERP имеет доступ к PostgreSQL и может создавать БД.
  4. Настроено регулярное резервное копирование и протестировано восстановление.
  5. Права на конфигурационные файлы и каталоги корректны (открытых 777 прав нет).

Частые ошибки и решения

  • “could not connect to server”: проверьте, запущен ли PostgreSQL и соответствует ли db_host/db_port в конфиге.
  • “permission denied” при запуске: убедитесь, что служба запускается от openerp и что файлы имеют владельца openerp.
  • Веб-клиент не видит модуль: проверьте addons_path и убедитесь, что модуль находится в доступном каталоге и имеет корректную структуру.

Миграционные заметки

OpenERP 6 отличается от 5.x по структуре модулей и API. При миграции:

  • Тестируйте модули на копии данных.
  • Проверьте сторонние модули на совместимость.
  • Рассмотрите инструменты миграции баз и экспорт/импорт данных при необходимости.

Глоссарий (одна строка на термин)

  • OpenERP: ERP-система с открытым исходным кодом, далее переименованная в Odoo.
  • PostgreSQL: реляционная СУБД, используемая OpenERP как хранилище данных.
  • Upstart: система инициализации служб в Ubuntu 10.04.
  • Addons: каталоги с модулями, расширяющими функциональность OpenERP.

Итог и рекомендации

Установка OpenERP вручную на Ubuntu 10.04 даёт высокий контроль над окружением: версии, кастомными модулями и процессом обновления. Однако Ubuntu 10.04 — устаревшая платформа; по возможности планируйте перенос на поддерживаемую ОС и тестируйте процедуры обновления и восстановления заранее.

Полезные действия по завершении инсталляции:

  • Настройте мониторинг (нагрузка, доступность портов, состояние БД)
  • Автоматизируйте резервное копирование и проверку целостности
  • Документируйте процесс обновления и список кастомных модулей

В конце: если у вас есть специфичные требования (SSL через nginx, LDAP/Active Directory, особенности модулей), я могу помочь адаптировать конфигурацию и предоставить шаблоны конфигураций для обратного прокси, firewall или систем мониторинга.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Как разработать iOS‑приложение с нуля
Мобильная разработка

Как разработать iOS‑приложение с нуля

Чёрный экран в Google Chrome — как исправить
браузер

Чёрный экран в Google Chrome — как исправить

AI‑инструменты для письма: руководство
AI инструменты

AI‑инструменты для письма: руководство

Установка OpenERP 6 на Ubuntu 10.04 LTS
Установка

Установка OpenERP 6 на Ubuntu 10.04 LTS

Как изменить гамму монитора в Windows
Мониторы

Как изменить гамму монитора в Windows

ИГ: курс по Kali Linux и реальные риски
Кибербезопасность

ИГ: курс по Kali Linux и реальные риски