Как зафиксировать “zsh compinit: небезопасные каталоги”?

Когда я работаю fakeroot в zsh это всегда дает мне это предупреждение:

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

Я могу продолжить путем нажатия y и затем fakeroot работы.

Я задаюсь вопросом, что это сообщение об ошибке и как зафиксировать его.

(Если я нажимаю n fakeroot все еще продолжается (проверенный с whoami), который кажется нечетным мне.)

6
задан 23 July 2016 в 04:50

4 ответа

Это совершило ошибку, уйдите:

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

я все еще не уверен, что означала ошибка или почему это произошло, все же.

Кредит: этот ответ на StackOverflow, который в свою очередь получил решение от сообщение в zsh списке рассылки

13
ответ дан 23 November 2019 в 07:22

Я просто следовал за тем, что было записано там.

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
ответ дан 23 November 2019 в 07:22

Этим утром, некоторые пакеты в моей системе, обновленной и оставленной меня с этим сообщением об ошибке.

По-видимому, что-то в обновлении изменило имя пользователя и группу к числам, вместо root, как так:

# There are insecure files: /usr/share/zsh/vendor-completions/_code
# sudo ls -alh
-rw-r--r-- 1  131  142 2.6K 2019-10-10 16:28 _code

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

sudo chown root _code && sudo chgrp root _code

После переключения 131 и 142 назад к root, это сообщение об ошибке от zsh ушло.

0
ответ дан 23 November 2019 в 07:22

Чтобы исправить ошибку

zsh compinit: небезопасные файлы, запустите compaudit для списка. Игнорировать небезопасные файлы и продолжить [y] или прервать compinit [n]?

Я выполнил 2 команды:

команду 1.

compaudit

вывод:

There are insecure files:
/usr/share/zsh/vendor-completions/_code

Затем я выполнил:

команду 2.

sudo chown root /usr/share/zsh/vendor-completions/_code

Ура

1
ответ дан 20 February 2020 в 15:05

Другие вопросы по тегам:

Похожие вопросы: