1. 程式人生 > >在Ubuntu Kylin 16.04 LTS 上源碼方式安裝odoo

在Ubuntu Kylin 16.04 LTS 上源碼方式安裝odoo

htm 關系 安裝python aid 使用 pkg created 更新 pyc

  1. 更新Ubuntu服務器軟件源

    運行以下代碼:

    sudo apt-get update #更新軟件源

    sudo apt-get dist-upgrade #更新軟件包,自動查找依賴關系

    sudo shutdown -r now #重啟服務器,以更新改變的內容

  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(特別註意本條的細節,否則會導致安裝成功後無法生成pdf文檔)

    運行如下命令安裝Odoo 9.0版本依賴的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 python-decorator python-passlib python-requests

    註意這裏的python-pypdf庫為全小寫不能有大寫的,否則無法安裝成功,導致pdf文檔無法生成

    下載安裝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,註意根據操作系統選擇相應版本

    sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb #安裝wkhtmltopdf

    sudo cp /usr/local/bin/wkhtmltopdf /usr/bin/wkhtmltopdf #安裝完成後將可執行文件復制到usr/bin中

    sudo chown root:root /usr/bin/wkhtmltopdf #更改所有者為root用戶

    sudo chmod +x /usr/bin/wkhtmltopdf #並增加可執行屬性

    wkhtmltopdf www.baidu.com ~/baidu.pdf #打印一個網頁到home目錄,如果成功生成pdf則表明安裝成功

    sudo apt-get install ttf-wqy-zenhei #安裝中文字體

    sudo apt-get install ttf-wqy-microhei #安裝中文字體

  5. 安裝Odoo服務器代碼(此處一般需要等待較長時間)

    sudo apt-get install git #安裝git軟件

    sudo su - odoo9 -s /bin/bash #切換到odoo9用戶

    git clone -b 9.0 https://github.com/odoo/odoo.git . #下載Odoo9.0代碼

    exit #退出odoo9用戶

  6. 安裝nodejs、node-less(這一步會經常出現問題)

    這一步不能忘掉,否則將來登錄Odoo帳套時,界面中會有報錯信息:Could not execute command lessc

    在這裏提供兩種方法安裝nodejs:

    第一種,參照教程裏面的方法,但是筆者在安裝成功後出現了運行錯誤,於是用第二種方法修復了:

    apt-get install -y npm

    sudo ln -s /usr/bin/nodejs /usr/bin/node

    npm install -g less less-plugin-clean-css

    apt-get install node-less

    第二種,源碼安裝(此種方式安裝可獲得最新源代碼):

    wget https://nodejs.org/dist/v4.4.3/node-v4.4.3.tar.gz #獲取最新源代碼

    tar zxvf node-v4.4.3.tar.gz #解壓縮

    cd node-v4.4.3/

    ./configure

    make install

    apt-get install node-less

    cd /usr/lib/nodejs/less/node_module #此步驟及下步驟是筆者在運行出現錯誤後重裝的操作

    npm install clean-css

  7. 配置Odoo程序

    默認的配置文件openerp-server.conf包括基本的設置,這裏需要做一點改動:

    sudo cp /opt/odoo9/odoo/debian/openerp-server.conf /etc/odoo9-server.conf #把文件復制到/etc目錄,這裏要註意odoo的安裝目錄是否變化

    sudo chown odoo9: /etc/odoo9-server.conf #將所有權賦予odoo用戶和用戶組

    sudo chmod 640 /etc/odoo9-server.conf #只允許odoo用戶和root用戶讀取

    下面用Ubuntu自帶的nano編輯器編輯它, 運行如下命令打開配置文件:

    sudo nano /etc/odoo9-server.conf #註意文件名不要弄錯

    需要改動的內容如下,

    1、admin_passpw = wlbnt #設置odoo安裝賬套的主控密碼

    2、db_user = odoo9 #前面新建的數據庫用戶

    3、db_password = passwd #設置密碼

    4、addons_path = /opt/odoo9/odoo/addons/ #此處註意安裝目錄的問題

    5、logfile = /var/log/odoo9/odoo9-server.log

    配置文件編輯好後,按Ctrl+O,然後回車覆蓋保存,然後Ctrl+X退出nano程序。配置文件裏指定了日誌文件的存儲位置,因此要創建這個目錄,同時還得讓它能被odoo9用戶讀寫:

    sudo mkdir /var/log/odoo9

    sudo chown odoo9:root /var/log/odoo9

    現在可以嘗試啟動Odoo服務器:

    sudo su - odoo9 -s /bin/bash #先切換到odoo9用戶,

    ./openerp-server -c /etc/odoo9-server.conf #運行Odoo

    在瀏覽器輸入http://ip地址:8069/,因為是全新安裝,還未創建過帳套,所以默認會進入數據庫管理界面。

    如果一切正常,按 Ctrl+C停止服務器,然後用exit命令離開odoo9用戶,回到你自己登陸的shell。如果報錯,則需要查看odoo-server.log排查錯誤。(為方便起見,可以先將配置文件中的logfile一行註釋掉,這樣就可以直接在控制臺看到報錯信息)

  8. 安裝啟動腳本

    啟動、停止Odoo服務需要多個步驟的操作,比較繁瑣,可以安裝啟動腳本以批處理的方式處理這些步驟。可以去參考資料裏面下載修改好的文件(這裏要特別註意如果odoo的安裝目錄同下載的文件裏面的文件目錄不同,不能在windows下修改和保存文件,否則會導致文件無法運行),復制到/etc/init.d/,然後把它改成可執行文件,賦給root用戶:

    sudo chmod 755 /etc/init.d/odoo9-server

    sudo chown root: /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. 9

    將Odoo設為開機自啟動

    讓啟動腳本隨著Ubuntu服務器的開、關機而自動啟動、關閉Odoo服務。

    sudo update-rc.d odoo9-server defaults

    現在就可以重啟動你的服務器,當你再登錄進來的時候,Odoo應該已經在運行了。輸入如下命令查看Odoo是否已在運行:

    ps aux | grep odoo9

    至此,odoo9就已經安裝完成並可開機自動運行

在Ubuntu Kylin 16.04 LTS 上源碼方式安裝odoo