多用户Mac上Watchman的Homebrew权限

时间:2019-05-03 23:43:23

标签: macos react-native permissions homebrew watchman

我的Macbook Pro上有两个运行macOD Mojave 10.14.2的用户-一个用于工作,另一个用于个人。

我在安装了react native cli&watchman的两个用户上都设置了React Native

brew install watchman

sudo npm install -g react-native-cli

这有效,我能够使用npm start

运行本地服务器

我尝试对其他用户执行相同操作,但是由于权限问题,无法使用自制软件安装watchman。

我跑了以下

sudo chown -R $(whoami):admin $(brew --prefix)/*

然后解决了。我再次能够运行本地开发服务器。


除了现在,当我返回其他用户时,无法再次运行服务器。

运行npm start

时出现以下错误

Loading dependency graph...libc++abi.dylib: terminating with uncaught exception of type std::__1::system_error: open: /usr/local/var/run/watchman/yev-state: Permission denied

Watchman: watchman --no-pretty get-sockname returned with exit code=null, signal=SIGABRT, stderr= libc++abi.dylib: terminating with uncaught exception of type std::__1::system_error: open: /usr/local/var/run/watchman/yev-state: Permission denied

我尝试再次运行sudo chown -R $(whoami):admin $(brew --prefix)/*,但这次没有解决。

我还查看了如何为多用户macs配置Homebrew,并发现了this short article

我创建了一个名为“ brew”的用户组,在其中添加了我的工作和个人用户,并运行了以下内容:

sudo chgrp -R brew $(brew --prefix)/*

sudo chmod -R g+w $(brew --prefix)/*

仍然没有骰子。

我无法在可以自由使用用户自制软件或在两个用户上运行开发服务器(由于守卫权限错误)的情况下使用它。每次更改用户时,我都必须“修复”权限问题。

2 个答案:

答案 0 :(得分:1)

Connect Database server1 forests server2 forests Server3 forests testDB DB-s1-f1 DB-s2-f1 DB-s3-f1 testDB DB-s1-f2 DB-s2-f2 DB-s3-f2 目录需要具有权限/usr/local/var/run/watchman,以便任何用户都可以在其中创建自己的状态目录:

2777

此外,值班员执行一些健全性检查,以查看状态目录是否看起来像具有危害的权限;我怀疑您的广泛的递归sudo chmod 2777 /usr/local/var/run/watchman chmod调用会触发该事件,因此我建议这是一个非常安全的做法,尽管假设其他用户有一个正常的值班员也可以这样做:

chown

答案 1 :(得分:0)

您可以轻松完成chmod 0700 /usr/local/var/run/watchman/*