Установка будет производится с самими последними на данный момент версиями OpenERP сервера и веб-клиента(openerp_*-6.0.3)

Для корректной работы которых нужен python2.6 версии и выше, а также postgreSQL 1.8 версии и выше

Итак начнем пожалуй с установки(обновления, если Вы уже используете) PostgreSQL сервера. Как обновить сервер доступно описано и показано на слежующем веб-ресурсе – http://www.davidghedini.com/pg/entry/installing_postgresql_9_on_cpanel

Так как у меня “чистый” сервер, начну с установки:

ШАГ – 1

Добавляем и устанавливаем репозиторий:

cd /usr/local/src/
wget http://yum.pgrpms.org/9.1/redhat/rhel-5-x86_64/pgdg-centos91-9.1-4.noarch.rpm
rpm -ivh pgdg-centos91-9.1-4.noarch.rpm
 
==============================
warning: pgdg-centos91-9.1-4.noarch.rpm: Header V3 DSA signature: NOKEY, key ID 442df0f8
Preparing... ########################################### [100%]
1:pgdg-centos91 ########################################### [100%]

Дальше идем в репозитарии yum и исключаем postgresql от обновления:

vim /etc/yum.repos.d/CentOS-Base.repo

В секции [base] и [updates] добавляем exclude=postgresql*

После этого проверяем какая версия PostgreSQL доступна из репозитория и запускаем его установку:

yum list postgres*
yum install postgresql91 postgresql91-devel postgresql91-server postgresql91-libs postgresql91-contrib

Дальше нужно инициализировать конфигурационные файлы PostgreSQL(важно чтобы использовался charset UTF8 иначе OpenERP не сможет прописать нужную конфигурацыю в созданную БД):

ln -s /var/lib/pgsql/9.1/data/ /var/lib/pgsql
ln -s /var/lib/pgsql/9.1/backups/ /var/lib/pgsql/
su - postgres

Из-под пользователя postgres запускаем команду:

/usr/pgsql-9.1/bin/initdb --locale=en_US.UTF-8 --encoding=UNICODE

После инициализации конфигурационных файлов и установки локали по умолчанию, стартуем сервер PostgreSQL из-под того же пользователя postgres:

/usr/pgsql-9.1/bin/pg_ctl -D /var/lib/pgsql/9.1/data -l logfile start

Создаем пользователя myopenerp с правами суперпользователя:

createuser --createdb --no-createrole --pwprompt myopenerp
createuser --createdb --no-createrole --pwprompt myopenerp
 
==============================
Enter password for new role:
Enter it again:
Shall the new role be a superuser? (y/n) y

Создаем БД myopenerp и назначаем ей созданного пользователя:

createdb -O myopenerp myopenerp

Осталось проверить все ли сделано корректно:

psql
psql (9.1.3)
Type "help" for help.
 
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+-----------+----------+-------------+-------------+-----------------------
myopenerp | myopenerp | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
(4 rows)

Как видим БД myopenerp была создана в корректной кодировке

На этом наша работа с PostgreSQL закончена

Шаг – 2

Установка и настройка python2.7 версии:

cd /usr/local/src/
wget http://www.python.org/ftp/python/2.7.1/Python-2.7.1.tgz
tar xzvf Python-2.7.1.tgz
cd Python-2.7.1
./configure
make
make install
echo "/usr/local/lib" > /etc/ld.so.conf.d/python2.7.conf
ldconfig

Итак python2.7 установлен и используется по умолчанию(после этого, чтобы использовать yum нужно будет вернутся к версии python2.4, которая шла по умолчанию и включает в себя модуль yum)
Теперь нужно скачать все необходимые модули, хотелось чтобы их было намного меньше, но что уж тут поделаеш:

cd /usr/local/src/
wget 194.28.85.220/OpenERP.tar.gz

Шаг – 3

Установка сопутсвующих компонентов для OpenERP

В данный архив я включил все необходимые модули, а также скрипты запуска OpenERP сервера и клиента, плюс ко всему модуль python-dateutil чтобы исправить баг, который относится к python3.0 версии

Дальше все по аналогии:

tar xzvf OpenERP.tar.gz
cd for_OpenERP/
for i in *; do tar xzvf $i;done

Все архивы распаковали, теперь можна переходить к их установке

Для начала установим easy_install

cd setuptools-0.6c12dev-r88795
/usr/local/bin/python2.7 setup.py install

Теперь производим установку нужных пакетов используя easy_install

easy_install-2.7 Cython
easy_install-2.7 pip
pip-2.7 install pydot
pip-2.7 install mako
pip-2.7 install reportlab
pip-2.7 install pywebdav
pip-2.7 install pytz

Установка psycopg2:

cd /usr/local/src/for_OpenERP/psycopg2-2.4.4
export PATH=/usr/pgsql-9.1/bin:$PATH
pip-2.7 install psycopg2
 
cd /usr/local/src/
wget ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.8.tar.gz
wget ftp://xmlsoft.org/libxml2/libxslt-1.1.26.tar.gz
tar xzvf libxslt-1.1.26.tar.gz
tar xzvf libxml2-sources-2.7.8.tar.gz
cd libxml2-2.7.8
./configure --with-python=/usr/local/bin/python2.7
make && make install
 
cd /usr/local/src/libxslt-1.1.26
./configure --with-libxml-prefix=/usr/local --with-python=/usr/local/bin/python2.7
make && make install
 
cd /usr/local/src/for_OpenERP/libxml2-python-2.4.16
/usr/local/bin/python2.7 setup.py install
easy_install-2.7 lxml
 
cd /usr/local/src/for_OpenERP/python-dateutil-1.5
/usr/local/bin/python2.7 setup.py install

Дальше все пакеты из директории /usr/local/src/for_OpenERP(PyXML-0.8.4, PyYAML-3.10) устанавливаются по одной и той же аналогии, заходим в директорию с исходниками и запускаем

/usr/local/bin/python2.7 setup.py install

Ну теперь собственно можем переходить к установке самого openerp-server

Шаг – 4

Установка OpenERP сервера

Создаем пользователя из-под которого будем запускать сервер(конфигурационные файлы запуска демонов используют именно этого пользователя, поэтому если захотите изменить его, пожалуйста потрудитесь исправить и их)

adduser openerp

Затем переходим к сборке самого сервера:

cd /usr/local/src/for_OpenERP/openerp-server-6.0.3
/usr/local/bin/python2.7 setup.py install

После этого собственно сам сервер установлен, теперь нужно его настроить и прописать конфигурационные файлы подключения к ранее созданной БД myopenerp

Переходим под пользователя openerp и запускаем команду инициализации сервера OpenERP в корневой директории пользователя openerp, после этого будет создан файл .openerp_serverrc в котором мы и будем прописивать подключении к БД

Експортируем путь к установленным библиотекам python2.7 для пользователя openerp

добавляем строку “export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib” в ~openerp/.bashrc

su - openerp

Запускаем команду инициализации сервера OpenERP:

openerp-server -s

Изменяем файлик /home/openerp/.openerp_serverrc

Изменяем следующие поля

db_host = localhost
db_name = myopenerp
db_password = myopenerp
db_port = 5432
db_user = myopenerp

Если не возник конфликт пакетов и в результате Вы увидели строку:

[2012-05-31 13:06:14,184][myopenerp] INFO:server:OpenERP server is running, waiting for connections…

значить инициализация сервера произошла успешно, можно преривать работу демона и приниматься на скрипт старта: /etc/init.d/openerp-server

cp /usr/local/src/for_OpenERP/openerp-server /etc/init.d/
chmod 755 /etc/init.d/openerp-server

Создаем лог файл для OpenERP сервера:

touch /var/log/openerp-server.log
chown openerp: /var/run/openerp
chmod 755 /etc/init.d/openerp-server
chown openerp: /etc/init.d/openerp-server
/etc/init.d/openerp-server start
Starting openerp-server: done.
netstat -nltp |grep python2.7
tcp 0 0 0.0.0.0:8069 0.0.0.0:* LISTEN 23485/python2.7
tcp 0 0 0.0.0.0:8070 0.0.0.0:* LISTEN 23485/python2.7
tcp 0 0 0.0.0.0:8071 0.0.0.0:* LISTEN 23485/python2.7

Ну вот собственно и все сервер запущен, переходим к установке Web клиента, чтобы можно было работать с OpenERP через браузер
Шаг – 5

Установка OpenERP-Web

cd /usr/local/src/for_OpenERP/openerp-web-6.0.3
/usr/local/bin/python2.7 setup.py install
 
cp /usr/local/src/for_OpenERP/openerp-web /etc/init.d/
chmod 755 /etc/init.d/openerp-web
 
cp /usr/local/lib/python2.7/site-packages/openerp_web-6.0.3-py2.7.egg/doc/openerp-web.cfg /etc/openerp-web.cfg
/etc/init.d/openerp-web start
Starting openerp-web: done.
 
netstat -nltp |grep python2.7 |grep 8080
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 23864/python2.7

На данном этапе установка OpenERP закончена, загружаем в браузере http://IP:8080 ,вводим пользователя admin и такой же пароль(если конечно Вы не прописали свой собственный пароль в /home/openerp/.openerp_serverrc)