Jedes Mal, wenn ich diesen Befehl ausführe rails server
:
Warnung: Unsicheres, weltweit beschreibbares Verzeichnis / usr / local / bin in PATH, Modus 040777
Ich suchte hier nach einer Lösung und sie sagten zu tippen: chmod go-w /usr/local/bin
Aber ich bekomme diesen Fehler:
chmod: Dateimodus in / usr / local / bin kann nicht geändert werden: Vorgang nicht zulässig
Ich benutze übrigens OS X.
ruby-on-rails
macos
permissions
rubygems
warnings
Xandman
quelle
quelle
Antworten:
Dazu benötigen Sie Root-Zugriff. Wenn Sie noch kein Administrator sind, melden Sie sich als Administrator an. Verwenden Sie dann 'sudo', um die Berechtigungen zu ändern:
Das bedeutet natürlich, dass Sie kein Material mehr in / usr / local / bin installieren können, außer über 'sudo', aber das sollten Sie wahrscheinlich sowieso nicht tun.
quelle
Ich hatte hier den gleichen Fehler MacOSX 10.6.8 - es scheint, dass Ruby prüft, ob ein Verzeichnis (einschließlich der Eltern) im Pfad weltweit beschreibbar ist. In meinem Fall war kein / usr / local / bin vorhanden, da nichts es erstellt hatte.
also musste ich tun
die Warnung loswerden.
Eine Frage hier ist, muss ein Nicht-Root: Wheel-Prozess in MacOS etwas in / usr / local erstellen?
quelle
775 => root(7) group(7) others(5), 7 => read(4) + write(2) + execute(1), and 5 => read(4) + execute(1)
Versuchen:
sudo chmod go-w /usr/local/bin
Das Verzeichnis / usr / local / bin gehört dem
root
Konto (dh dem Administrator). Selbst wenn Sie darauf schreiben können, können Sie die Berechtigungen dafür nicht ändern. Dersudo
Befehl bedeutet "Führen Sie den folgenden Befehl als root aus" und funktioniert ähnlich wie das Klicken auf dieses Schlosssymbol in den Dialogfeldern "Systemeinstellungen".quelle
Ich hatte das gleiche Problem in OSX. Dies kann durch Ausführen von Festplatten-Dienstprogrammen zum Reparieren von Berechtigungen behoben werden. Ich stimme Peter Nixey zu: In meinem Fall wird dies verursacht, wenn mein 3G-Dongle seinen Treiber installiert oder neu installiert. Das anschließende Reparieren von Berechtigungen behebt das Problem.
quelle
Ich benutze Mountain Lion. Was ich getan habe, war Suchen nach / usr / local und Get Info. Darauf befinden sich Freigabe und Berechtigungen. Stellen Sie sicher, dass nur der Benutzer und der Administrator über Lese- und Schreibberechtigungen verfügen. Alle anderen sollten nur Lesezugriff haben. Das hat mein Problem gelöst.
Normalerweise sind die Dienstprogramme zum Ausführen von Datenträgern und Reparaturberechtigungen hilfreich.
quelle
Das gleiche hier, anscheinend war mein / usr / local-Ordner weltweit beschreibbar, also habe ich ihn 755 gemacht
Es stellte sich auch heraus, dass ein von mir verwendeter mobiler Hauwei-Dongle auch in / usr / local weltweit beschreibbare Verzeichnisse installiert hatte
quelle
Wenn Sie OSX ausführen und dies häufig erhalten, sollten Sie auch ein integriertes Tool zur Korrektur von OSX-Berechtigungen verwenden. Wenn Sie den Modus Ihrer Verzeichnisse nicht geändert haben, hat sich etwas anderes geändert, und es besteht die Möglichkeit, dass auch andere Verzeichnisse über großzügige Berechtigungen verfügen. Dieses Tool setzt sie alle auf die Werkseinstellungen zurück, was eine gute Sicherheitsidee ist. Es gibt eine großartige Anleitung zum Apple Stackextange zu diesem Prozess .
quelle
Du musst rennen
quelle
sudo chmod -R o-w /usr/local/
Sogar ich bin auf ein ähnliches Problem gestoßen. Ich verwende KDE unter Ubuntu 12 und während ich in meinem Home-Ordner herumspielte, hatte ich versehentlich die Berechtigungen für Group und andere geändert, da "Inhalte anzeigen und ändern können", indem ich mit der rechten Maustaste in meinen Home-Ordner und dann auf Eigenschaften geklickt und alles vergessen habe.
Meine Warnung war:
In meinem Fall war es also der Home-Ordner. Ich habe die Änderungen der Berechtigungen rückgängig gemacht und diese Warnungen nicht mehr erhalten, wenn der Rails-Server oder Rake-Tasks ausgeführt wurden, um meine Tests auszuführen.
quelle
Ich habe auch genau das gleiche Problem mit / usr / local / bin und / etc / sudoers unter OSX Snow lepard. Selbst als ich mich als Administrator anmeldete und versuchte, die Berechtigungen über das Terminal zu ändern, heißt es immer noch "Operation nicht" zulässig". Und ich habe Folgendes getan, um die Erlaubnis für diese Ordner zu erhalten.
Vom Terminal aus habe ich auf die Datei / etc / sudoers zugegriffen und mit dem Pico-Editor den folgenden Code hinzugefügt: Benutzername ALL = (ALL) ALL Ersetzen Sie "Benutzername" durch Ihren MAC OS-Kontonamen
quelle
Ich hatte hier den gleichen Fehler MacOSX 10.11 - es scheint, dass Ruby prüft, ob ein Verzeichnis (einschließlich der Eltern) im Pfad weltweit beschreibbar ist. In meinem Fall war kein / usr / local / bin vorhanden, da nichts es erstellt hatte.
Führen Sie diesen Befehl in Ihrem Terminal aus. Versuchen Sie diesen sudo chmod 775 / usr / local. Wenn Sie danach ein Kennwort auf Ihrem Mac haben, müssen Sie das Kennwort eingeben. Jetzt wird dieses Problem behoben.
quelle
Dies sollte Ihr Problem lösen:
chmod go-w {/path/of/user}
quelle