在Ubuntu Server 14.04上源码安装Odoo 9.0
1. 更新Ubuntu服务器软件源
sudo apt-get update #更新软件源 |
2. 新建系统用户用于运行Odoo程序
运行如下命令创建系统用户:
sudo adduser --system --home=/opt/odoo9 --group odoo9 #新建系统用户odoo9,指定home目录为/opt/odoo9 |
系统用户不能用于登录并且没有shell,但当需要以它的身份进行特定操作时,可以用su命令切换用户:
sudo su - odoo9 -s /bin/bash # 将当前终端登录切换到odoo9用户,并使用/bin/bash这个shell |
命令运行后会自动从当前目录切换到odoo9用户的home目录/opt/odoo9。操作完毕后输入exit命令,离开odoo9用户的shell,回到登录所用的用户。
3. 安装和配置数据库服务器PostgreSQL
先运行如下命令查看PostgreSQL数据库的版本:
psql –version #查看PostgreSQL版本 |
如报错,则表明之前未安装过PostgreSQL,那么可以通过如下命令安装:
sudo apt-get install postgresql #安装PostgreSQL |
接下来切换到postgres用户,它是PostgreSQL默认的初始用户,以它的身份操作我们就有配置数据库的权限:
sudo su - postgres |
然后以postgres的身份创建一个新的数据库用户odoo9,Odoo程序将用该用户访问数据库。
createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt odoo9 |
根据系统输入密码,记住你这里设置的密码。最后运行exit退出postgres用户。
4. 安装Python运行库和wkhtmltopdf
运行如下命令安装Odoo 9.0版本依赖的python运行库:
sudo apt-get install python-dateutil python-docutils python-feedparser python-gdata \ |
下载安装wkhtmltopdf(Odoo使用wkhtmltopdf来输出pdf):
sudo wget http://download.gna.org/wkhtmltopdf/0.12/0.12.1/wkhtmltox-0.12.1_linux-trusty-amd64.deb #下载wkhtmltopdf,注意根据操作系统选择相应版本 |
5. 安装Odoo服务器代码
sudo apt-get install git #安装git软件 |
6. 安装nodejs、node-less
这一步不能忘掉,否则将来登录Odoo帐套时,界面中会有报错信息:Could not execute command lessc
apt-get install -y npm |
7. 配置Odoo程序
默认的配置文件openerp-server.conf包括基本的设置,这里需要做一点改动。
sudo cp /opt/odoo9/debian/openerp-server.conf /etc/odoo9-server.conf #把文件复制到/etc目录 |
下面用Ubuntu自带的nano编辑器编辑它, 运行如下命令打开配置文件:
sudo nano /etc/odoo-server.conf |
然后改动如下,
图1 配置文件设置
配置文件编辑好后,按Ctrl+O
,然后回车覆盖保存,然后Ctrl+X退出nano程序。
配置文件里指定了日志文件的存储位置,因此要创建这个目录,同时还得让它能被odoo9用户读写:
sudo mkdir /var/log/odoo9 |
现在可以尝试启动Odoo服务器:
sudo su - odoo9 -s /bin/bash #先切换到odoo9用户, |
在浏览器输入http://ip地址:8069/,因为是全新安装,还未创建过帐套,所以默认会进入数据库管理界面。
图2 数据库管理界面
如果一切正常,按 Ctrl+C停止服务器,然后用exit命令离开odoo9用户,回到你自己登陆的shell。如果报错,则需要查看odoo-server.log排查错误。(为方便起见,可以先将配置文件中的logfile一行注释掉,这样就可以直接在控制台看到报错信息)
8. 安装启动脚本
启动、停止Odoo服务需要多个步骤的操作,比较繁琐,可以安装启动脚本以批处理的方式处理这些步骤。Odoo程序提供了一个现成的脚本openerp-server.init
,位于/opt/odoo9/server/install/
目录。但需要一点小改动,因为我们不是按odoo的默认安装方式装的。这里有个修改好的脚本文件,下载此脚本拷贝到/etc/init.d/
,然后把它改成可执行文件,赋给root用户:
点击下载odoo9-server.tar
或者复制以下脚本
#!/bin/sh |
sudo chmod 755 /etc/init.d/odoo9-server |
要启动Odoo服务器,输入:
sudo /etc/init.d/odoo9-server start |
这时可以查看日志文件,查看Odoo是否已经启动:
less /var/log/odoo9/odoo9-server.log |
要退出less命令的查看界面,只需按一下q键。如果启动过程中出现问题,可以依据日志文件的内容查找原因。
下边检查odoo服务器是否可以被恰当地停止:
sudo /etc/init.d/odoo9-server stop |
检查下日志文件,确定下服务已经停止,也可以用top命令查看Ubuntu服务器正在运行的进程表来确认。(退出top命令的查看界面也是按q键)
9. 将Odoo设为开机自启动
让启动脚本随着Ubuntu服务器的开、关机而自动启动、关闭Odoo服务。
sudo update-rc.d odoo9-server defaults |
现在就可以重启动你的服务器,当你再登录进来的时候,Odoo应该已经在运行了。输入如下命令查看Odoo是否已在运行:
ps aux | grep odoo9 |
在Ubuntu Server 14.04上源码安装Odoo 9.0的更多相关文章
- ubuntu server 14.04 上安装jdk1.8
ubuntu server 14.04 上安装jdk1.8 1.使用apt-get安装oracle-jdk安装oracle jdk sudo apt-get install python-softwa ...
- 在Ubuntu Server上源码安装OpenERP 8.0,并配置wsgi和nginx运行环境
原文: How to install OpenERP 8.0 Alpha on a fresh Debian / Ubuntu server. OpenERP的安装,可以有多种方式,通过添加源,到 h ...
- ubuntu14.04上源码安装openssl1.0.2k
卸载自带openssl sudo apt-get remove openssl 解压文件tar -xzf openssl-1.0.2k.tar.gz 配置 sudo ./config shared - ...
- 在Ubuntu 12 服务器上源码安装 OpenERP 8.0
原文:http://vivianyw.blog.163.com/blog/static/134547422201421112349489/ 1. 安装SSH: sudo apt-get install ...
- ubuntu 14.04上源码编译安装php7
wget https://downloads.php.net/~ab/php-7.0.0alpha2.tar.bz2 //用winscp把下载好的文件上传到网站中 tar jxf php-7.0.0a ...
- Ubuntu Server 14.04 集成
方便工作出差显示项目整合了下平时常用软件: OS: Ubuntu Server 14.04 VM:VMware Workstation 12.1.0 (不同版本好像会不兼容) 已经安装软件: 1. s ...
- Ubuntu server 14.04 交叉编译Unicorn-engine
Ubuntu server 14.04 交叉编译Unicorn-engine 编译的过程基本上按照的是unicorn/COMPILE-WINDOWS.md描述的进行编译的,不过还是改了一些地方.在Ub ...
- Ubuntu Server 14.04在VMware安装的一些事儿
这几天一直在折腾Ubuntu Server 14.04,故记录下: 安装前的准备: 1.建议安装英文版,像15.04.16.04等安装中文版时存在bug,而且中文版字体显示也有问题. 2.Ubuntu ...
- ubuntu server 14.04 LTS下搭建LAMP环境之最详细笔记之一U盘安装双系统
前言: 一直在WIN上使用PHP,不喜欢用WAMP,每次都是手动在windows配置环境,偶尔有一次装了小红帽玩了两天,感觉不是很习惯就换了回来,过了没几天见讨论LAMP环境,于是安装了ubuntu的 ...
随机推荐
- 使用vue-cli搭建vue项目简单教程
一直没有时间来写些东西,今天就写写vue脚手架吧,初建一个vue项目. vue是近段时间来特别火的一个mvvm框架,小巧.简单.易学,如果你的前端基础还好的话,学起来挺简单的.官网地址: https: ...
- java笔试之求最大连续bit数
功能: 求一个byte数字对应的二进制数字中1的最大连续数,例如3的二进制为00000011,最大连续2个1 输入: 一个byte型的数字 输出: 无 返回: 对应的二进制数字中1 ...
- Linux-c 线程锁
typedef struct _my_mutex { pthread_mutex_t mutex; //互斥锁 pthread_mutexattr_t mta; //互斥锁属性 } my_mute ...
- vc 识别移动硬盘 U盘,本地硬盘
说明:有时候我们在做设备监控的时候,要识别一些链接设备,在使用函数GetDriveType的时候,U盘可以返回DRIVE_REMOVABLE,而本地硬盘硬盘和移动硬盘DRIVE_FIXED,因此还需要 ...
- Python全栈开发:Mysql(一)
一.概述 1.什么是数据库 ? 答:数据的仓库,如:在ATM的示例中我们创建了一个 db 目录,称其为数据库 2.什么是 MySQL.Oracle.SQLite.Access.MS SQL Serve ...
- shell 版本号比较_用shell如何比较软件版本号的大小
比如你想写个脚本来比较两个版本号 (如"1.2.30" 和"1.3.0")来辨认哪个版本是最新的,有可以比较两个版本号字符串的shell脚本吗? 当你写了一个s ...
- 使用了@Slf4j log没有info的方法 .info()方法爆红或者log爆红
在springboot项目中,使用注解@Slf4j时,log变量不能用. 导包用的是 import lombok.extern.slf4j.Slf4j; <dependency> < ...
- ThinkPHP支持模型的分层
ThinkPHP支持模型的分层 ,除了Model层之外,我们可以项目的需要设计和创建其他的模型层. 大理石平台支架 通常情况下,不同的分层模型仍然是继承系统的\Think\Model类或其子类,所以, ...
- laravel框架5.5 连接redis和redis集群
'redis' => [ 'client' => 'predis', 'default' => [ 'host' => env('REDIS_HOST', '127.0.0.1 ...
- Android 之 BroadcaseReceiver
1.在AndroidManifest.xml中注册 <receiver android:name=".MyReceiver"> <intent-filter &g ...