52

当我打开终端 Hyper 时,我收到以下错误消息:

[oh-my-zsh] Insecure completion-dependent directories detected:
drwxrwxr-x  7 dwaynethe2nd  admin  224 Apr 25 15:00 /usr/local/share/zsh
drwxrwxr-x  4 dwaynethe2nd  admin  128 Apr 25 14:53 /usr/local/share/zsh/site-functions
4

4 回答 4

120

这是 ZSH 的问题,你的 shell,而不是 Hyper,你的终端。我今天早些时候实际上遇到了同样的问题。这个问题在 Github 上有一些解决方案,我会在这里引用其中的一些,但我建议您点击链接并阅读那里的评论。

第一个解决方案是更改有问题目录的所有权。

在不了解您的环境的情况下,我不会推荐这个,但对于大多数人来说,这将解决这个问题:

chmod 755 /usr/local/share/zsh
chmod 755 /usr/local/share/zsh/site-functions

第二种解决方案是在文件中设置ZSH_DISABLE_COMPFIX=true(或"true"用引号引起来).zshrc,告诉 ZSH 不要检查不安全的目录。

第三个解决方案,也是为我解决问题的解决方案,是使用-u标志初始化 compinit。这将使用找到的所有目录compaudit而不检查它们的安全问题。为此,您必须更改.zshrc文件或配置自动完成的任何位置。

于 2020-04-25T22:19:18.917 回答
4

在我的 Mac 上,帮助的是运行brew doctor

该程序告诉我要运行的确切命令!

于 2021-11-19T03:18:09.860 回答
0

执行两个命令解决了我的问题。

  1. sudo chown -R $(whoami) /usr/local/share/zsh /usr/local/share/zsh/site-functions
  2. chmod u+w /usr/local/share/zsh/usr/local/share/zsh/site-functions
于 2022-02-14T09:38:41.330 回答
0

重新安装 brew 为我解决了这个问题。

卸载冲泡:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"

安装冲泡:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
于 2021-09-20T19:19:31.840 回答