在Ubuntu 12 服务器上源码安装 OpenERP 8.0

 原文:http://vivianyw.blog.163.com/blog/static/134547422201421112349489/

1. 安装SSH:

sudo apt-get install openssh-server denyhosts

2. 更新系统组件

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

3.增加OpenERP用户

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

openerp用户被加入system组,该用户不能够从终端登录。需要openerp用户操作时,可以切换

sudo su - openerp -s /bin/bash

完成相关操作后可以用

exit

退出openerp用户shell

4.安装并配置数据库

这里我们选择安装PostgreSQL的最新版(9.3版本),而Ubuntu 12服务器中包含的源是9.1版,首先建立源列表文件/etc/apt/sources.list.d/pgdg.list

sudo vi /etc/apt/sources.list.d/pgdg.list

在其中输入

deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main

保存,退出vi。导入源的签名文件并更新源列表,

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | 
  sudo apt-key add -
sudo apt-get update

安装postgreSQL 9.3

sudo apt-get install postgresql-9.3

进入postgres用户shell(postgres是数据库默认的管理员,由安装程序创建)

sudo su - postgres

为OE创建数据库用户,按照提示输入用户密码。

createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt openerp

退出postgres用户shell

exit

5.安装OE的Python依赖包

sudo apt-get install python-dateutil python-docutils python-feedparser python-gdata 
 python-jinja2 python-ldap python-libxslt1 python-lxml python-mako python-mock python-openid 
 python-psycopg2 python-psutil python-pybabel python-pychart python-pydot python-pyparsing 
 python-reportlab python-simplejson python-tz python-unittest2 python-vatnumber python-vobject 
 python-webdav python-werkzeug python-xlwt python-yaml python-zsi python-pyPdf

6.安装OE服务器

首先下载OE源码包,这里下载OpenERP8.0最新开发版本

wget http://nightly.openerp.com/trunk/nightly/src/openerp-8.0dev-latest.tar.gz

把源文件解压到openerp用户家目录下

cd /opt/openerp
sudo tar xvf ~/openerp-8.0dev-latest.tar.gz

把文件的所有者改为openerp用户

sudo chown -R openerp: *

这里建议把服务器组件的安装目录修改为server,以便于后续修改时不必修改配置文件。

sudo mv -T openerp-8.0dev-20140226-000101 server

注意这里,目录名"openerp-8.0dev-20140226-000101"会因为你下载的时间不同而有所不同。

7.配置OpenERP服务

复制OE的默认配置文件到/etc/并修改所有者及权限。

sudo cp /opt/openerp/server/install/openerp-server.conf /etc/
sudo chown openerp: /etc/openerp-server.conf
sudo chmod 640 /etc/openerp-server.conf

修改配置文件,

sudo vi /etc/openerp-server.conf

这里需要修改数据库用户的密码,为第四步时设定的密码,并增加日志文件的路径

[options]

; This is the password that allows database operations:

; admin_passwd = admin

db_host = 127.0.0.1

db_port = 5432

db_user = openerp

db_password = passwod

logfile = /var/log/openerp/openerp-server.log

使用openerp用户shell登录,验证openerp是否已正确安装

sudo su - openerp -s /bin/bash
/opt/openerp/server/openerp-server

最后一行显示 openerp.service.server: HTTP service (werkzeug) running on 0.0.0.0:8069表面openerp服务器组件已经安装正确,这是你可以用从浏览器输入http://IP:8069来连接oe(其中IP是OE服务器的IP,本机可以用localhost:8069,或者127.0.0.1:8069连接。此时你可以按Ctr+C停止OE服务。

如果发现错误提示,通常是依赖包没有真确安装。按照第五步的方法安装缺少的依赖包。

8.增加启动脚本

增加启动脚本/etc/init.d/openerp

sudo vi /etc/init.d/openerp

输入如下内容,保存退出

#!/bin/sh 
### BEGIN INIT INFO 
# Provides: openerp-server 
# Required-Start: $remote_fs $syslog 
# Required-Stop: $remote_fs $syslog 
# Should-Start: $network 
# Should-Stop: $network 
# Default-Start: 2 3 4 5 
# Default-Stop: 0 1 6 
# Short-Description: Enterprise Resource Management software 
# Description: Open ERP is a complete ERP and CRM software. 
### END INIT INFO 

PATH=/bin:/sbin:/usr/bin
DAEMON=/opt/openerp/server/openerp-server
NAME=openerp-server DESC=openerp-server

# Specify the user name (Default: openerp).
USER=openerp

# Specify an alternate config file (Default: /etc/openerp-server.conf).
CONFIGFILE="/etc/openerp-server.conf"

# pidfile
PIDFILE=/var/run/$NAME.pid 

# Additional options that are passed to the Daemon. 
DAEMON_OPTS="-c $CONFIGFILE" 

[ -x $DAEMON ] || exit 0 
[ -f $CONFIGFILE ] || exit 0 

checkpid() {
   [ -f $PIDFILE ] || return 1 
   pid=`cat $PIDFILE` [ -d /proc/$pid ] && return 0 return 1 
}

case "${1}" in
start)
   echo -n "Starting ${DESC}: " 
   start-stop-daemon --start --quiet --pidfile ${PIDFILE} 
   --chuid ${USER} --background --make-pidfile 
   --exec ${DAEMON} -- ${DAEMON_OPTS}
   echo "${NAME}."
   ;;
stop)
   echo -n "Stopping ${DESC}: "
   start-stop-daemon --stop --quiet --pidfile ${PIDFILE} 
   --oknodo echo "${NAME}."
   ;;
restart|force-reload)
   echo -n "Restarting ${DESC}: "
   start-stop-daemon --stop --quiet --pidfile ${PIDFILE} 
   --oknodo
   sleep 1
   start-stop-daemon --start --quiet --pidfile ${PIDFILE} 
   --chuid ${USER} --background --make-pidfile 
   --exec ${DAEMON} -- ${DAEMON_OPTS}
   echo "${NAME}."
   ;;
*)
   N=/etc/init.d/${NAME}
   echo "Usage: ${NAME} {start|stop|restart|force-reload}" >&2
   exit 1
   ;;
esac
exit 0 

保存退出设置脚权限:
sudo chmod 655 /etc/init.d/openerp 建立日志文件的目录,并修改权限 sudo mkdir
/var/log/openerp sudo chown openerp:root /var/log/openerp 测试脚本是否可以正常工作 sudo /etc/init.d/openerp start netstat -at 两个命令之间间隔一段时期,让OE服务器启动,结果中表明有一行 tcp 0 0 *:8069 *:* LISTEN 表明脚本启动OE成功。查看日志文件, less /var/log/openerp/openerp-server.log 使用浏览器web客户端打开,可以进入数据库管理页面。建议在此修改数据库管理员用户密码。默认的用户名和密码问admin、admin。然后停止openerp sudo /etc/init.d/openerp stop 访问日志文件及网络监听,确认服务已经停止 netstat -at 9.设计开机自动启动 sudo update-rc.d openerp defaults 重启服务器,用web客户端连接。 创建数据库,开始openerp之旅吧! 10. 解决中文乱码的问题 系统中/usr/share/fonts/truetype/ttf-dejavu路径下放的是unicode的字体DejaVuSans.ttf,这个字体中并没有相对应的中文字体在里面,因而造成OpenERP报表乱码,http://code.google.com/p/qinsdisk/downloads/list 上有合成字体 DejaVuSansYuanTi, 含中文字体。 下载后: DejaVuSansYuanTi-Regular.ttf 改为 DejaVuSans.ttf”, DejaVuSansYuanTi-Bold.ttf 改为 “DejaVuSans-Bold.ttf”, DejaVuSansYuanTi-Italic.ttf 改为“DejaVuSans-Oblique.ttf”, DejaVuSansYuanTi-BoldItalic.ttf 改为“DejaVuSans-BoldOblique.ttf 然后把这四个字体上传到服务器usr/share/fonts/truetype/ttf-dejavu目录中,重启服务器, 能够解决部分地方中卫显示为黑方块或小方格的问题! 彻底解决中文显示的问题,请安装oecn-base-font模块。
原文地址:https://www.cnblogs.com/chjbbs/p/3819631.html