Za każdym razem, gdy uruchamiam to polecenie rails server
:
ostrzeżenie: katalog / usr / local / bin z możliwością zapisu w niezabezpieczonym świecie w PATH, tryb 040777
Szukałem tutaj rozwiązania i powiedzieli, żeby wpisać: chmod go-w /usr/local/bin
Ale pojawia się ten błąd:
chmod: Nie można zmienić trybu pliku na / usr / local / bin: Operacja niedozwolona
Nawiasem mówiąc, używam OS X.
ruby-on-rails
macos
permissions
rubygems
warnings
Xandman
źródło
źródło
Odpowiedzi:
Aby to zrobić, musisz mieć uprawnienia administratora. Jeśli nie jesteś jeszcze użytkownikiem administracyjnym, zaloguj się jako administrator. Następnie użyj „sudo”, aby zmienić uprawnienia:
Oczywiście będzie to oznaczać, że nie możesz już instalować materiału w / usr / local / bin z wyjątkiem 'sudo', ale prawdopodobnie i tak nie powinieneś tego robić.
źródło
Miałem ten sam błąd w MacOSX 10.6.8 - wygląda na to, że Ruby sprawdza, czy w jakimkolwiek katalogu (w tym nadrzędnych) w ścieżce można zapisywać na całym świecie. W moim przypadku nie było katalogu / usr / local / bin, ponieważ nic go nie stworzyło.
więc musiałem to zrobić
pozbyć się ostrzeżenia.
Pytanie brzmi, czy jakikolwiek proces inny niż root: wheel w MacOS musi tworzyć cokolwiek w / usr / local?
źródło
775 => root(7) group(7) others(5), 7 => read(4) + write(2) + execute(1), and 5 => read(4) + execute(1)
Próbować:
sudo chmod go-w /usr/local/bin
Katalog / usr / local / bin należy do
root
konta (tj. Administratora), więc nawet jeśli możesz do niego pisać, nie możesz zmienić jego uprawnień. Tesudo
środki polecenie „uruchom następujące polecenie jako root” i działa dużo jak kliknięcie tej ikony kłódki w systemie Preferencje dialogowych.źródło
Miałem ten sam problem w OSX. Można to naprawić, uruchamiając Narzędzia dyskowe, aby naprawić uprawnienia. Zgadzam się z Peterem Nixeyem: w moim przypadku jest to spowodowane instalacją lub ponowną instalacją sterownika przez klucz 3G. Naprawienie uprawnień później rozwiązuje problem.
źródło
Używam Mountain Lion. Poszukałem / usr / local i Get Info. Na nim jest Udostępnianie i uprawnienia. Upewnij się, że tylko użytkownik i administrator są jedynymi, którzy mają uprawnienia do odczytu i zapisu. Każdy inny powinien mieć dostęp tylko do odczytu. To rozwiązało mój problem.
Zwykle pomocne są narzędzia do uruchamiania dysków i uprawnienia do naprawy.
źródło
To samo tutaj, najwyraźniej mój folder / usr / local był zapisywalny dla świata, więc utworzyłem go 755
Okazało się również, że klucz sprzętowy Hauwei, którego użyłem, zainstalował również światowe katalogi do zapisu w / usr / local
źródło
Jeśli używasz OSX i często to robisz, kolejną dobrą rzeczą do rozważenia jest użycie wbudowanego narzędzia do naprawy uprawnień OSX. Jeśli nie zmieniłeś trybu swoich katalogów, zrobiłeś coś innego i istnieje szansa, że inne katalogi również mają zbyt duże uprawnienia - to narzędzie zresetuje je z powrotem do ustawień fabrycznych, co jest dobrym pomysłem na bezpieczeństwo. Jest świetny przewodnik po stosie Apple, o tym procesie .
źródło
Musisz biec
źródło
sudo chmod -R o-w /usr/local/
Nawet ja napotkałem podobny problem. Używam KDE na Ubuntu 12 i podczas zabawy w moim folderze domowym przypadkowo zmieniłem uprawnienia grupy i innych, ponieważ „mogę przeglądać i modyfikować zawartość”, klikając prawym przyciskiem myszy folder domowy, a następnie właściwości i zapomniałem o wszystkim.
Moje ostrzeżenie brzmiało:
Więc w moim przypadku był to folder domowy. Cofnąłem modyfikacje uprawnień i przestałem otrzymywać te ostrzeżenia podczas uruchamiania serwera railsowego lub zadań rake w celu uruchomienia testów.
źródło
Mam również dokładnie ten sam problem z / usr / local / bin i / etc / sudoers na OSX Snow lepard. Nawet gdy zalogowałem się jako administrator i próbowałem zmienić uprawnienia za pośrednictwem terminala, nadal wyświetla się komunikat „Operacja nie dozwolony". Wykonałem następujące czynności, aby uzyskać pozwolenie na te foldery.
Z terminala uzyskałem dostęp do pliku / etc / sudoers i używając edytora pico dodałem następujący kod: nazwa użytkownika ALL = (ALL) ALL Zastąp „nazwę użytkownika” nazwą konta MAC OS
źródło
Miałem ten sam błąd w MacOSX 10.11 - wygląda na to, że Ruby sprawdza, czy w jakimkolwiek katalogu (w tym nadrzędnych) w ścieżce można zapisywać na całym świecie. W moim przypadku nie było katalogu / usr / local / bin, ponieważ nic go nie stworzyło.
Uruchom to polecenie w swoim terminalu i spróbuj wykonać to sudo chmod 775 / usr / local Po tym, jeśli masz jakieś hasło na komputerze Mac, musisz wprowadzić hasło. Teraz ten problem zostanie rozwiązany.
źródło
To powinno rozwiązać twój problem:
chmod go-w {/path/of/user}
źródło