Сломанный zsh с chmod; пытаюсь исправить с помощью compaudit

Сломанный zsh с chmod; пытаюсь исправить с помощью compaudit

У меня Homebrew zsh в качестве оболочки. У меня нет root на машине, но у меня есть дополнительная учетная запись с повышенными привилегиями — просто так она настроена на работе, и я ничего не могу с этим поделать — где я могу sudo делать некоторые вещи и устанавливать с помощью Homebrew и т. д.

В любом случае, из-за этих конфликтующих аккаунтов у меня возникли проблемы с запуском других самодельных вещей из-за проблем с разрешениями. Поэтому я сделал это:

sudo chmod -R a+rw /usr/local

Теперь это исправило мою непосредственную проблему, но, следовательно, сломало мою оболочку. Каждый раз, когда я начинаю новый сеанс, я получаю следующее (что исходит из строки source $ZSH/oh-my-zsh.shв моем .zshrc):

compdef: unknown command or service: git
compdef: unknown command or service: git

...с последующим приглашением. Более того, автодополнение по табуляции больше не работает. Однако другие плагины работают.

Я попытался отменить свое безрассудство chmodи следовать руководству по использованию compaudit(например, см.здесь), но, похоже, это не решает проблему.

От отчаяния я также попробовал полностью удалить и переустановить zsh из Homebrew. Похоже, это изменило вывод compaudit, так что теперь он также содержит много вещей из /usr/local/Cellar/zsh/5.2/share/zsh/functions. Однако, насколько я могу видеть, все здесь (включая указанный каталог) имеет правильную собственность ( my_admin:admin) и разрешения ( 0744). Аналогично, другие вещи, compauditна которые жалуются, кажутся в порядке.

Так что я немного застрял! Что мне попробовать дальше?


ОБНОВЛЯТЬИтак, я попробовал это:

sudo chmod -R MODE /usr/local/share/zsh /usr/local/Cellar/zsh/5.2/share/zsh

...где я пробовал MODEs из 0777, 0744, 0754и 0550.

Первый из них описывает исходную проблему — с оговоркой, что какой-то плагин приводит к сбою всего ввода с клавиатуры — остальные (т. е. ограниченный доступ для не-владельцев) приводят к тому, что ряд определений zsh/Oh My Zsh не загружаются, а затем вызывают последующие ошибки, когда Oh My Zsh пытается загрузить плагины. В частности, он жалуется на colors, compinitи compdefбольше не определен (аналогично, если я пытаюсь compaudit, он терпит неудачу).

Я совершенно не понимаю, что происходит/почему настройки разрешений должны вызывать столько хаоса. Я собираюсь прекратить эксперименты, прежде чем я полностью заблокирую себя, но если у кого-то есть предложения, как решить эту проблему, они будут очень приветствоваться!

Связанный контент