问题描述
Watchman 抓取失败.使用节点爬虫重试一次.通常这个当守望者不运行时发生.创建一个空的 .watchmanconfig
项目根文件夹中的文件或初始化一个 git 或 hg项目中的存储库.
错误:watchman --no-pretty get-sockname返回退出代码=1,信号=空,标准错误=2018-03-23T11:33:13,360: [0x7fff9755f3c0] 所有者/usr/local/var/run/watchman/root-state 是 uid 501 并且不匹配你的 euid 0
Error: watchman --no-pretty get-sockname returned with exit code=1, signal=null, stderr= 2018-03-23T11:33:13,360: [0x7fff9755f3c0] the owner of /usr/local/var/run/watchman/root-state is uid 501 and doesn't match your euid 0
推荐答案
您正在以 root 身份运行 watchman,但状态目录(可能包含触发器定义并因此允许生成任意命令)不归 root 所有.这是一个安全问题,因此守望者拒绝启动.
You're running watchman as root but the state dir, which may contain trigger definitions and thus allow spawning arbitrary commands, is not owned by root. This is a security issue and thus watchman is refusing to start.
解决此问题的最安全方法是通过运行以下命令删除状态目录:
The safest way to resolve this is to remove the state dir by running:
rm -rf/usr/local/var/run/watchman/root-state
我建议您避免使用 sudo
运行希望使用 watchman 的工具,以避免再次发生这种情况.
I'd recommend that you avoid running tools that wish to use watchman using sudo
to avoid this happening again.
这篇关于守望者爬行失败.使用节点爬虫重试一次的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!