【问题标题】:Odoo installation ''error: [Errno 98] Address already in use''Odoo 安装''错误:[Errno 98] 地址已在使用中''
【发布时间】:2017-07-06 15:13:11
【问题描述】:

我按照这个 odoo 安装指南进行操作,最后我得到了一个错误 当我运行 odoo-bin 文件时,它给了我这个错误

teo@teo-Lenovo-Yoga-3-14:/opt/odoo/odoo-10.0$ ./odoo-bin 
2017-07-06 15:03:20,583 3754 INFO ? odoo: Odoo version 10.0
2017-07-06 15:03:20,583 3754 INFO ? odoo: addons paths: ['/home/teo/.local/share/Odoo/addons/10.0', u'/opt/odoo/odoo-10.0/odoo/addons', u'/opt/odoo/odoo-10.0/addons']
2017-07-06 15:03:20,583 3754 INFO ? odoo: database: default@default:default
2017-07-06 15:03:20,601 3754 INFO ? odoo.service.server: HTTP service (werkzeug) running on 0.0.0.0:8069
Exception in thread odoo.service.httpd:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 754, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/opt/odoo/odoo-10.0/odoo/service/server.py", line 251, in http_thread
    self.httpd = ThreadedWSGIServerReloadable(self.interface, self.port, app)
  File "/opt/odoo/odoo-10.0/odoo/service/server.py", line 106, in __init__
    handler=RequestHandler)
  File "/usr/lib/python2.7/dist-packages/werkzeug/serving.py", line 440, in __init__
    HTTPServer.__init__(self, (host, int(port)), handler)
  File "/usr/lib/python2.7/SocketServer.py", line 417, in __init__
    self.server_bind()
  File "/opt/odoo/odoo-10.0/odoo/service/server.py", line 116, in server_bind
    super(ThreadedWSGIServerReloadable, self).server_bind()
  File "/usr/lib/python2.7/BaseHTTPServer.py", line 108, in server_bind
    SocketServer.TCPServer.server_bind(self)
  File "/usr/lib/python2.7/SocketServer.py", line 431, in server_bind
    self.socket.bind(self.server_address)
  File "/usr/lib/python2.7/socket.py", line 228, in meth
    return getattr(self._sock,name)(*args)
error: [Errno 98] Address already in use

我认为它可能与 odoo.conf 文件有关,因为我指定了一个端口,但它仍然假定默认端口为 8069

这是我的 odoo.conf 文件

[options]

; This is the password that allows database operations:

; admin_passwd = PASSWORD

db_host = False

db_port = 8470

db_user = odoo

db_password = False

addons_path = /opt/odoo/odoo-10.0/addons

;Log Settings

logfile = /var/log/odoo/odoo.log

log_level = error

有没有人知道发生了什么,作为记录,我之前尝试安装 odoo 但失败了,所以我已经为例如创建了 DB 用户

【问题讨论】:

  • 抱歉文件过时 db_port = 8470
  • 停止服务器并重新运行。使用 ctrl+z 停止

标签: python odoo odoo-10


【解决方案1】:

因为odoo服务在系统启动时会自动启动,所以你必须手动杀死odoo-service,然后运行./odoo-bin文件,此时你应该可以看到odoo再次运行了。

sudo pkill -9 python

通过这样做,您将阻止 python 找到 odoo 服务 process id 并随后终止该进程。

ps aux | grep odoo
sudo kill <process id> 

有多个pid用odoo运行,以/etc/odoo-server.conf结尾,你必须选择。

我认为最好的选择可能是

sudo pkill -9 python

一切顺利,我希望我解决了你的问题。

【讨论】:

  • sudo pkill -9 python 为我工作
【解决方案2】:

您的 odoo 配置设置了另一个数据库端口,但 8069 是用于 xmlrpc 请求的端口。如果你想在配置中改变它,你必须设置xmlrpc_port = 8470

【讨论】:

    【解决方案3】:

    您收到此错误是因为您有相同的端口繁忙,您需要终止现有进程,然后您可以重试。

    检查过程:

    ps -aux|grep odoo.py
    
    kill 09 [process id ]
    

    您可以在此处查看更多使用 Apache2 和 WSGI 的安装教程enter link description here

    【讨论】:

      【解决方案4】:

      对于这个 [Errno 98] 错误,您使用以下两个命令:

      root@odoo:~# ps aux | grep odoo
      

      现在你得到了这个类型代码 postgres 26041 0.1 2.3 1568276 196668 ? Sl Sep25 5:24 python ./odoo-bin

      root@odoo:~# sudo kill -9 26041
      

      那么您的错误将得到修复。

      【讨论】:

        【解决方案5】:

        [Errno 98] 错误您使用以下两个命令 通过以下命令获取正在运行的进程的id

        root@odoo:~# ps ax | grep servername

        然后杀死已经运行的进程

        sudo kill -9 process_id

        【讨论】:

          【解决方案6】:

          您有另一个使用 8069 端口运行的进程。杀死正在杀死python的进程。

          使用 odoo 中的配置文件,您可以通过 xmlrpc_port = 2003 更改为 8069 的不同端口。

          例如:

          [options]
          ; This is the password that allows database operations:
          admin_passwd = admin
          db_host = 0.0.0.0
          db_port = 5432
          db_user = randall
          db_password = admin
          dbfilter = odoo
          addons_path = /usr/lib/python2.7/dist-packages/openerp/addons
          addons_path = /software/odoo/10.0/odoo-server/addons,/software/odoo/10.0/custom-addons,
          xmlrpc_interface = 127.0.0.1
          xmlrpc_port = 2002
          

          问候,

          【讨论】:

            【解决方案7】:

            如果您的 odoo 已设置,则在您启动 ubuntu 时它已经在运行。 可以在

            中找到

            /etc/init.d/odoo-server

            使用此命令杀死现有服务

            ps -ef|grep odoo-bin

            sudo kill ####

            【讨论】:

              【解决方案8】:

              用@ShivaGuntuku 回答解决了,只是添加了另一种解决问题的方法:

              您正尝试在端口 8470 上运行 Odoo,但正如错误所说(地址已在使用中),另一个应用程序已在该端口上运行(可能是另一个 Odoo 进程)。

              因此,只需终止在该端口上运行的进程:

              sudo fuser -k 8470/tcp
              

              然后再次启动您的 Odoo 服务。

              【讨论】:

                猜你喜欢
                • 2015-06-04
                • 2011-05-26
                • 1970-01-01
                • 2020-10-13
                • 2021-05-14
                • 2020-05-18
                相关资源
                最近更新 更多