You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

EC2实例中ejabberd运行正常但ejabberdctl命令找不到求助

解决ejabberdctl命令找不到的问题
  • 先确认ejabberdctl的安装路径
    ejabberd通过.run包安装的默认路径一般是/opt/ejabberd/bin/,先检查这个路径下有没有该文件:

    ls /opt/ejabberd/bin/
    

    如果能看到ejabberdctl,说明文件存在,只是sudo的环境变量没包含这个路径。

  • 用绝对路径执行命令
    直接用完整路径运行注册命令,替换成你实际找到的路径即可:

    sudo /opt/ejabberd/bin/ejabberdctl register admin bkstg adm1nbkstg@#2023
    
  • 把ejabberd的bin目录加到sudo的PATH里(一劳永逸)
    要是不想每次都输长路径,就修改sudo的环境变量配置:

    1. 用visudo编辑/etc/sudoers文件(必须用这个命令,防止语法错误导致sudo失效):
      sudo visudo
      
    2. 找到Defaults secure_path这一行,在末尾追加: /opt/ejabberd/bin,比如改成:
      Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/opt/ejabberd/bin
      
    3. 保存退出后,就能直接用sudo ejabberdctl命令了。
  • 找不到默认路径就全局查找
    如果/opt/ejabberd/bin/里没有文件,用find命令搜整个系统:

    sudo find / -name ejabberdctl
    

    找到路径后,重复上面的绝对路径或添加PATH的操作就行。

内容的提问来源于stack exchange,提问作者Vikram

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 04:12:43