web-dev-qa-db-ja.com

「zsh compinit:安全でないディレクトリ」を修正するには?

fakerootzshを実行すると、常に次の警告が表示されます。

zsh compinit: insecure directories, run compaudit for list.
Ignore insecure directories and continue [y] or abort compinit [n]? 

を押して続行できます y fakerootが機能します。

このエラーメッセージとその修正方法を知りたいのですが。

(押すと n fakerootは引き続き続きます(whoamiで検証されます)。これは奇妙に思えます。)

6
grooveplex

これにより、エラーがなくなりました。

cd /usr/local/share/zsh
Sudo chmod -R 755 ./site-functions
Sudo chown -R root:root ./site-functions

ただし、エラーが何を意味したのか、なぜ発生したのかはまだわかりません。

クレジット: StackOverflowのこの回答 これは、ソリューションを zshメーリングリストの投稿 から得たものです

12
grooveplex

私はそこに書かれたものを単にフォローしました。

zsh compinit: insecure directories, run compaudit for list.
Ignore insecure directories and continue [y] or abort compinit [n]? 

私はこれらを無視しました。その後、compauditを実行しました。

# compaudit

2つのディレクトリが表示され、

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

そのため、セキュリティで保護されていないということは、アクセス許可に問題があることを意味します。セキュリティを確保するためにアクセス許可を変更すると、エラーはなくなりました。

また、両方のディレクトリが空であることも確認したため、両方を削除しましたが、これはお勧めしませんが、それでも削除しました。

1
luv.preet