mingyunyuziyou

安装OhMyZsh插件后提示错误:“zsh compinit: insecure directories”
问题描述:安装(手动下载)完zsh插件后,执行 source ~/.zshrc,显示以下提示:zsh compin...
扫描右侧二维码阅读全文
26
2022/06

安装OhMyZsh插件后提示错误:“zsh compinit: insecure directories”

问题描述:

  1. 安装(手动下载)完zsh插件后,执行 source ~/.zshrc,显示以下提示:
zsh compinit: insecure directories, run compaudit for list.
Ignore insecure directories and continue [y] or abort compinit [n]?

img

原因分析

警告中出现 compaudit ,通过资料得知

compaudit 的原理

出于安全原因,compinit 还会检查补全系统是否会使用不属于 root
或当前用户所有的文件,或者目录中的文件是全局或组可写的,或者不属于 root
或当前用户所有的文件。如果找到这样的文件或目录,compinit
会询问是否真的应该使用补全系统。为避免这些测试并使找到的所有文件无需询问即可使用,
请使用选项 -u,并使用选项 -i 使 compinit安装OhMyZsh插件后提示错误:
“zsh compinit: insecure directories”
静默忽略所有不安全的文件和目录。当给出 -C 选项时,将完全跳过此安全检查。

运行compaudit命令返回不安全的目录:

There are insecure directories:
/usr/local/share/zsh/site-functions
/usr/local/share/zsh

解决方法

执行以下命令修改权限shell

cd /usr/local/share/zsh
sudo chmod -R 755 site-functions

再次执行 source ~/.zshrc,若是问题还未解决,这时你就须要修改 site-functions 的全部者

OSX 10.9及如下系统执行以下命令:

cd /usr/local/share/
sudo chown -R root:root site-functions

OSX 10.9以上系统执行以下命令(user:staff 是 OSX 系统默认权限):

cd /usr/local/share/
sudo chmod -R 755 zsh
sudo chown -R root:staff zshphp artisan make:auth

再次执行 source ~/.zshrc,OK!

Last modification:June 26th, 2022 at 12:32 am
If you think my article is useful to you, please feel free to appreciate

Leave a Comment