Mac通过brew安装Elasticsearch后无法启动Kibana也无法卸载如何解决
解决方案
1. 彻底卸载Elasticsearch
你遇到的No available formula or cask with the name "elasticsearch"报错,是因为Elastic官方包已经从Homebrew核心仓库移除,现在官方维护的ES包都在elastic的私有tap下。提示里的elasticsearch@6是Homebrew旧版本仓库里留存的6.x版本的Elasticsearch独立包,带@后缀的是brew中按大版本拆分的独立发行包。
卸载步骤如下:
- 第一步先查询当前brew实际安装的ES相关包名:
brew list | grep elasticsearch
执行后会输出你设备上已安装的ES完整包名,通常为带版本号的格式(如elasticsearch@8)或带tap前缀的格式(如elastic/tap/elasticsearch) - 第二步用查到的完整包名执行卸载:
brew uninstall 你查到的完整包名
卸载失败就加强制参数:brew uninstall --force 你查到的完整包名 - 若grep无输出,说明包本体已被移除,直接手动清理残留文件即可:
- Intel芯片Mac执行:
rm -rf /usr/local/etc/elasticsearch rm -rf /usr/local/var/lib/elasticsearch/ rm -rf /usr/local/var/log/elasticsearch/ rm ~/Library/LaunchAgents/homebrew.mxcl.elasticsearch*.plist launchctl remove homebrew.mxcl.elasticsearch - M系列芯片Mac执行:
rm -rf /opt/homebrew/etc/elasticsearch rm -rf /opt/homebrew/var/lib/elasticsearch/ rm -rf /opt/homebrew/var/log/elasticsearch/ rm ~/Library/LaunchAgents/homebrew.mxcl.elasticsearch*.plist launchctl remove homebrew.mxcl.elasticsearch
launchctl remove命令报错找不到对应服务,直接忽略即可。 - Intel芯片Mac执行:
2. 修复Kibana启动报错
你遇到的Cannot delete files/folders outside the current working directory报错,核心是Kibana要操作的目录超出权限范围,或者和ES版本不匹配,按以下步骤修复:
- 首先确认Kibana和Elasticsearch的大版本完全一致,比如ES是7.17版本,Kibana也必须安装7.17版本,大版本不匹配必然触发该类异常
- 清理Kibana异常缓存目录:
- Intel芯片Mac默认Kibana数据目录为
/usr/local/var/kibana,M系列芯片Mac默认目录为/opt/homebrew/var/kibana,执行删除:rm -rf 对应Kibana数据目录路径
- Intel芯片Mac默认Kibana数据目录为
- 给Kibana目录赋当前用户权限,把下面的
你的Mac用户名替换为你实际的系统用户名:sudo chown -R 你的Mac用户名:staff 对应Kibana数据目录路径 - 重新启动Kibana即可,用brew启动的命令为:
brew services restart kibana
内容的提问来源于stack exchange,提问作者stanvooz
相关产品推荐
相关产品推荐

