Разрешения 777 здесь не обязательно плохие - вы, вероятно, никогда не столкнетесь с проблемами с разрешениями, и я бы сказал, что это не слишком серьезная проблема безопасности.
В любом случае, "нормальные" разрешения для /usr/local/share
которые требуются Homebrew, должны быть (рекурсивно) 755, то есть rwxr-xr-x
.
chmod -R 755 /usr/local/share
По крайней мере, brew
не нужно разрешение sudo, чтобы что-то там делать. Только /usr/local
принадлежит root
, но доступен для записи для группы staff
, в которой должен находиться ваш пользователь.
Для исправления существующих установок Homebrew, ознакомьтесь с этой сущностью, которая представляет собой скрипт, который попытается исправить ваши /usr/local
разрешения.
В качестве примера, вот список каталогов одной из моих (нормальных) установок Homebrew, единственное исключение, для которого требуется ссылка на ghostscript
sudo brew link
:
aeneas:local werner$ ls -la /usr/local/share/
total 40
drwxr-xr-x 11 werner staff 374 Mar 5 14:53 .
drwxrwxr-x 14 werner staff 476 Feb 28 12:51 ..
drwxr-xr-x 6 werner staff 204 Mar 5 14:54 aclocal
drwxr-xr-x 8 werner staff 272 Mar 5 14:53 doc
lrwxr-xr-x 1 werner staff 34 Feb 8 12:26 ffmpeg -> ../Cellar/ffmpeg/0.10/share/ffmpeg
drwxr-xr-x 4 werner wheel 136 Apr 16 2010 ghostscript
lrwxr-xr-x 1 werner staff 36 Mar 5 14:53 git-core -> ../Cellar/git/1.7.9.2/share/git-core
lrwxr-xr-x 1 werner staff 35 Mar 5 14:53 git-gui -> ../Cellar/git/1.7.9.2/share/git-gui
lrwxr-xr-x 1 werner staff 32 Mar 5 14:53 gitk -> ../Cellar/git/1.7.9.2/share/gitk
lrwxr-xr-x 1 werner staff 34 Mar 5 14:53 gitweb -> ../Cellar/git/1.7.9.2/share/gitweb
drwxr-xr-x 9 werner staff 306 Mar 5 14:53 man