Co to znaczy i jak mogę to naprawić?
zsh compinit: insecure directories, run compaudit for list.
Ignore insecure directories and continue [y] or abort compinit [n]?
Uruchomienie compaudit
zwraca:
There are insecure directories:
/usr/local/share/zsh/site-functions
zsh
zsh-completion
Alex
źródło
źródło
Odpowiedzi:
Naprawiłem to dla mnie:
Kredyt: post na liście mailingowej zsh
EDYCJA: Jak wskazał @biocyberman w komentarzach. Może być konieczne zaktualizowanie właściciela
site-functions
:Na moim komputerze (OSX 10.9) nie muszę tego robić, ale YMMV.
EDYCJA 2: W OSX 10.11 działało tylko:
Również użytkownik: personel jest prawidłowym domyślnym pozwoleniem na OSX.
źródło
.zshenv
i.zshrc
użyj nowego folderu i zrób to samochmod
w nowym folderze, który opublikowałem w tym folderze.chmod
polecenie nasudo chmod -R go-w zsh
./usr/local/share/zsh/site-functions
do/usr/local/Cellar
i musiałemchown -R root:staff /usr/local/Cellar
również zanim to zadziałało.załatwi sprawę, patrz http://www.wezm.net/technical/2008/09/zsh-cygwin-and-insecure-directories/
źródło
compaudit
można ją wykorzystać do diagnozowania takich problemów, a także ich rozwiązywania.compaudit | xargs chown root
compaudit | xargs chmod g-w
razem zeompaudit | xargs chown root
mną pracowali i wydawali się zadowolić HomeBrew. czy ktoś może wyjaśnić, co się dzieje trochę więcej.Większość odpowiedzi zawiera rozwiązanie, ale nie wspominaj, dlaczego pojawia się to ostrzeżenie. Oto fragment z zsh za compinit :
W związku z tym rozwiązanie zakłada naprawienie jednego (lub wszystkich) następujących elementów:
ustawienie bieżącego użytkownika jako właściciela wszystkich katalogów / podkatalogów / plików w przyczynie:
usunięcie uprawnień do zapisu dla grupy / innych plików dla przyczyny:
Innym podejściem byłoby pominięcie tych kontroli za pomocą
ale tak naprawdę nie sugeruję tego, ponieważ ukrywanie problemów pod dywanikiem rozwiązuje problemy tylko w krótkim okresie.
źródło
chown -R "$(whoami)"
dla plików spoza katalogu domowego, takie jak/usr/local/
nie działałyby. Według dokumentów, czy nie ma większego sensu, aby pliki były własnością root?Otrzymałem takie same ostrzeżenia, kiedy
sudo -i
uruchamiam powłokę roota, rozwiązanie @ chakrit nie działało dla mnie.Ale znalazłem
-u
przełącznikcompinit
prac, np. W twoim .zshrc / zshenv lub gdzie dzwoniłeścompinit
NB: Nie zalecane dla systemu produkcyjnego
Zobacz także http://zsh.sourceforge.net/Doc/Release/Completion-System.html#Initialization
źródło
Działa to na moim komputerze Mac po aktualizacji do High Sierra.
Usuń dostęp do zapisu grupowego:
Najlepiej jest ograniczyć zmianę do katalogów zsh.
źródło
Przyjęta odpowiedź nie działała dla mnie w systemie macOs Sierra (10.12.1). Musiałem to zrobić rekurencyjnie z / usr / local
Uwaga: możesz uzyskać swoją nazwę użytkownika
whoami
i swoją grupę za pomocąid -g
źródło
Te dwie linie zostały dla mnie naprawione.
źródło
sudo chown -R $(whoami):root /usr/local/share/zsh
sudo chown -R $(whoami):root /usr/local/share/zsh/*
W systemie macOS Sierra musisz uruchomić:
sudo chown -R $(whoami):staff /usr/local
źródło
Naprawiłem to, robiąc
w moim przypadku inne katalogi wewnątrz udostępniają / mają również przypisaną grupę „pracowników”
źródło
na mojejve udało się to:
sudo chmod go-w /usr/local/share
źródło
sudo chmod -R go-w /usr/local/share
Moją sugestią byłoby uruchomienie compaudit, a następnie po prostu naprawienie uprawnień do katalogów znalezionych podczas audytu. Upewnij się, że zidentyfikowane katalogi nie mają uprawnień do zapisu dla grupy lub innych.
źródło
To była jedyna rzecz, która działała dla mnie z https://github.com/zsh-users/zsh-completions/issues/433#issuecomment-600582607 . Dzięki https://github.com/malaquiasdev !
źródło
Moja maszyna:
Oto co zrobiłem
uruchom,
compaudit
a wyświetli się lista katalogów, które jej zdaniem są niezabezpieczone.uruchom
sudo chmod -R 755 target_directory
(przykładsudo chmod -R 755 /usr/local/share/zsh
:)Przykład:
zwroty:
więc biegnę
czytaj więcej tutaj link
źródło
Dziś rano niektóre pakiety w moim systemie zostały zaktualizowane i zostawił mi ten komunikat o błędzie. Używam Ubuntu 18.04.
Wygląda na to, że coś w aktualizacji zmieniło nazwę użytkownika i grupę na liczby, zamiast
root
:Po prostu zmieniłem użytkownika i grupę dla tego pliku z powrotem
root
i problem zniknął. I nie , nie trzeba zmieniać żadnych uprawnień, i ostrzegają przed tak robi, chyba że przyczyna problemu jest zrozumiałe.sudo chown root _code && sudo chgrp root _code
Po przełączeniu
131
i142
ponownymroot
uruchomieniu ten komunikat o błędzie z zsh zniknął.źródło
uruchom,
compaudit
a wyświetli się lista katalogów, które według niej są niepewnesudo chown -R username:root target_directory
sudo chmod -R 755 target_directory
źródło
Ostatnio miałem takie samo ostrzeżenie w sprawie Cataliny. Łatwym obejściem tego problemu jest umieszczenie go na górze pliku .zshrc
źródło
Żadne z wymienionych rozwiązań nie działało dla mnie. Zamiast tego skończyłem odinstalowywanie i ponowne instalowanie Homebrew, co załatwiło sprawę. Instrukcje odinstalowania można znaleźć tutaj: http://osxdaily.com/2018/08/12/how-uninstall-homebrew-mac/
źródło
uruchomienie tego polecenia działało dla mnie na moim
mac OS Catalina
:compaudit | xargs chmod g-w,o-w
źródło
Rozwiązanie MAC OS X:
Również „użytkownik: personel = domyślny użytkownik root w OSX.
źródło
Ten problem wystąpił po uruchomieniu
google-cloud-sdk
wystąpił skryptu instalacyjnego, który dodaje polecenie uzupełniające do powłoki za pomocą wpisu w.zshrc
.Następujące instrukcje homebrew dla konfigurowania uzupełnień w zsh był pomocny.
źródło