Ich folgte einem Tutorial mit diesem Befehl zum Erstellen einer Datei launchd.conf in / etc /
sudo echo "some command" > /etc/launchd.conf
Aber es würde nicht funktionieren, ich habe die Erlaubnis verweigert, nachdem ich mein Administratorkennwort eingegeben habe. Es schien, als ob die Berechtigungen für den Link falsch waren, also habe ich es getan. sudo chmod 755 /etc/
Aber jetzt kann ich kein Terminal laden, ich bekomme den FehlerThe administrator has set your shell to an illegal value
Wenn ich sudo
jetzt einen Befehl versuche, bekomme ich
sudo: can't open /private/etc/sudoers: Permission denied
sudo: no valid sudoers sources found, quitting
Process *tramp/sudo root@localhost* exited abnormally with code 1
So sieht der Link / etc aus, wie sollte er aussehen und wie kann ich ihn wiederherstellen?
lrwxr-xr-x 1 root wheel 11 Jul 21 2011 etc -> private/etc
/ privat / etc ...
drw-r--r-- 111 root wheel 3774 Mar 26 02:25 etc
Bearbeiten: Ich verwende Mac OS X 10.7.3
Antworten:
Die Antwort von Kyle Jones wird auf jeden Fall funktionieren, aber haben Sie versucht, eine Berechtigungsreparatur über das Festplatten-Dienstprogramm auszuführen? Das könnte den Trick machen ...
quelle
pkgutil --file-info /etc
und ihn/etc
durch einen beliebigen Speicherort ersetzen, den Sie überprüfen möchten. Das ist natürlich keine große Hilfe, wenn Sie Terminal nicht laden können.command-s
Starten Sie Ihren Mac neu und halten Sie die Taste gedrückt , wenn Sie das Startsignal zum ersten Mal hören. Halten Sie die Taste gedrückt, bis Sie Text auf dem Bildschirm sehen. Das System startet im Einzelbenutzermodus mit einer Root-Shell.wird / etc wieder zugänglich machen. Geben Sie
exit
in die Shell ein und der Mac beendet den Startvorgang.quelle
mount -uw /
) erneut bereitstellen, damit der Befehl chmod funktioniert.chmod a+x /
für mich gearbeitet. Vielen Dank!Berechtigungen und Eigentum an
/etc
und/private/etc
scheinen mir beide richtig zu sein; Sie haben übrigens vergessen, auch zu überprüfen/private
, was auch falsche Berechtigungen haben könnte.Ich hatte genau das gleiche Problem und in meinem Fall wurden die Berechtigungen des Stammordners selbst beschädigt. Was die Leute übersehen, ist, dass
/
es sich tatsächlich auch um ein echtes, normales Verzeichnis handelt und genau wie jedes Verzeichnis Eigentümer und Berechtigungen sind. Eigentum sollte seinroot:wheel
und Erlaubnis sollte sein755
(das istrwxr-xr-x
).Der einfachste Weg, beide wiederherzustellen, bestand darin
Script Editor
, das Skript zu starten und dann einzugeben und auszuführen:Sie sind für amdin Passwort gefragt und dann
chown
undchmod
kommen zur Rettung. Danachsudo
funktionierte es wieder.quelle
x
Flag wird benötigt, um einen Ordner einzugeben.755
setzt dasX
-Kennzeichen für alle Benutzer,755
Mittelrwxr-x-r-x
: permissions-calculator.org/decode/755 und natürlich eine Zugriffsberechtigung jeder braucht/
als sonst haben Sie Zugang zu nichts (wie alle Dateien / Ordner, die alle Laufwerke montiert, ja sogar alle Geräte sind Unterordner von/
und Sie haben keinen Zugriff auf sie ohne dieX
Flagge)