警告:PATH中的不安全世界可写dir/usr/local/bin,模式040777

Xan*_*man 160 permissions macos warnings rubygems ruby-on-rails

每次运行此命令时rails server:

警告:PATH中的不安全世界可写dir/usr/local/bin,模式040777

我在这里搜索了一个解决方案,他们说要输入: chmod go-w /usr/local/bin

但我得到这个错误:

chmod:无法更改/ usr/local/bin上的文件模式:不允许操作

我顺便使用OS X.

Jon*_*ler 266

您需要具有root访问权限才能执行此操作.如果您还不是管理用户,请以管理员身份登录.然后使用'sudo'更改权限:

sudo chmod go-w /usr/local/bin
Run Code Online (Sandbox Code Playgroud)

显然,这意味着你不能再在/ usr/local/bin中安装材料,除非通过'sudo',但你可能不应该这样做.


pet*_*erk 63

我在MacOSX 10.6.8中遇到了同样的错误 - 似乎ruby检查路径中的任何目录(包括父项)是否是全局可写的.在我的情况下,没有/ usr/local/bin存在,因为没有创建它.

所以我必须这样做

sudo chmod 775 /usr/local
Run Code Online (Sandbox Code Playgroud)

摆脱警告.

这里的一个问题是MacOS中的任何非root:wheel进程需要在/ usr/local中创建任何东西吗?

  • 是的,`775 => root(7)group(7)其他(5),7 => read(4)+ write(2)+ execute(1),5 => read(4)+ execute(1) ` (9认同)

Jan*_*der 7

尝试: sudo chmod go-w /usr/local/bin

/ usr/local/bin目录由root(即管理员)帐户拥有,因此即使您可以写入该帐户,也无法更改其权限.该sudo命令意味着"以root身份运行以下命令",其工作方式与在"系统偏好设置"对话框中单击该锁定图标非常相似.


小智 7

我在OSX中遇到了同样的问题.可以通过运行"磁盘工具"来修复权限来修复它.我同意Peter Nixey:在我的情况下,这是因为我的3G加密狗安装或重新安装其驱动程序.之后修复权限可以解决问题.


小智 7

我正在使用Mountain Lion.我做的是寻找/ usr/local和获取信息.在它上面有共享和权限.确保只有用户和管理员才是唯一具有读写权限的用户.其他任何人都应该只有读取权限.这解决了我的问题.

它通常有用的是你的运行磁盘实用程序和修复权限.