Startseite
» MAC OS X
»
So beheben Sie den Fehler „Datei konnte nicht ausgeführt werden, da Sie nicht über die erforderlichen Zugriffsrechte verfügen“ unter macOS
So beheben Sie den Fehler „Datei konnte nicht ausgeführt werden, da Sie nicht über die erforderlichen Zugriffsrechte verfügen“ unter macOS
Wenn ein vertrauenswürdiges .commandSkript die Fehlermeldung „Datei konnte nicht ausgeführt werden, da Sie nicht über die erforderlichen Zugriffsrechte verfügen“ ausgibt, benötigt es in der Regel die Ausführungsberechtigung. Fügen Sie diese Berechtigung im Terminal für Ihr Benutzerkonto mit dem Befehl `--execute` hinzu chmod u+xund führen Sie das Skript anschließend erneut aus. Dadurch wird das Berechtigungsbit der Datei geändert. Das Skript wird dadurch jedoch nicht verifiziert und die Sicherheitsprüfungen von macOS werden nicht umgangen. Überprüfen Sie daher die Datei und stellen Sie sicher, dass Sie der Quelle vertrauen, bevor Sie sie ausführen.
Bevor Sie die Berechtigungen ändern, überprüfen Sie die Datei.
Stellen Sie sicher, dass die Datei tatsächlich die Endung .txt hat .commandund Sie ihre Herkunft kennen. Ein Befehlsskript kann Terminalbefehle mit den Zugriffsrechten Ihres Benutzerkontos ausführen. Wenn Sie die Datei nicht erwartet haben oder ihre Quelle nicht verifizieren können, führen Sie sie nicht aus. Öffnen Sie sie in einem Texteditor, um ihren Inhalt zu überprüfen, oder fordern Sie eine saubere Kopie vom Entwickler an.
Das Informationsfenster des Finders ist nützlich, um Dateinamen und allgemeine Freigabeberechtigungen zu überprüfen, bietet aber keine einfache Möglichkeit, das Ausführungsbit für ein Skript hinzuzufügen. Apple beschreibt dies chmodin seinem Terminal-Benutzerhandbuch als die Terminal-Methode, um ein Shell-Skript ausführbar zu machen .
Beispielansicht eines .command-Skripts im Download-Ordner im Finder.
Beheben Sie das Problem mit der Ausführungsberechtigung.
Öffnen Sie das Terminal. Verwenden Sie Spotlight oder öffnen Sie Anwendungen > Dienstprogramme > Terminal.
Erteilen Sie Ihrem Konto die Ausführungsberechtigung. Geben Sie für ein Skript im Ordner „Downloads“ mit dem Namen „“ script.commandfolgenden Befehl ein und drücken Sie die Eingabetaste:
chmod u+x "$HOME/Downloads/script.command"
Ersetzen Sie den Beispielpfad und -dateinamen durch den tatsächlichen Pfad. Setzen Sie den Pfad in Anführungszeichen, insbesondere wenn der Ordner- oder Dateiname Leerzeichen enthält. Alternativ können Sie den Pfad auch chmod u+x (einschließlich des letzten Leerzeichens) eingeben und die Datei aus dem Finder in das Terminal-Fenster ziehen, um den Pfad einzufügen. Geben Sie die Wörter „Pfad zur Datei“ nicht wörtlich ein.
Der Befehl chmod u+x fügt dem Dateibesitzer die Ausführungsberechtigung hinzu.
Der Befehl kehrt normalerweise zur Eingabeaufforderung zurück, ohne eine Erfolgsmeldung auszugeben. ubedeutet, dass der Dateibesitzer +xdie Berechtigung zur Ausführung der Datei erhält. Dies ist präziser, als das Skript für jedes Benutzerkonto auf dem Mac ausführbar zu machen. Wenn Sie der Dateibesitzer sind und die Berechtigungen ändern können, ist kein Administratorpasswort erforderlich.
Führen Sie das Skript aus. Falls es sich im Ordner „Downloads“ befindet, geben Sie Folgendes ein:
cd "$HOME/Downloads"
./script.command
Sie können die Datei auch im Finder per Doppelklick öffnen, nachdem Sie die Berechtigungen geändert haben. Die Ausführung über das Terminal ist hilfreich, da Sie dort Fehlermeldungen und Ausgaben einsehen können. Falls macOS beim Einfügen eines Befehls in das Terminal eine Warnung anzeigt, lesen Sie diese, bevor Sie fortfahren.
Beispiel einer Terminal-Sitzung nach dem Ausführen des Skripts aus dem zugehörigen Ordner.
Prüfen Sie die Berechtigungen, falls der Fehler weiterhin besteht.
Um die Dateiberechtigungen anzuzeigen, führen Sie folgenden Befehl aus:
ls -l "$HOME/Downloads/script.command"
Wenn das aktuelle Benutzerkonto Eigentümer der Datei ist und die Ausführungsberechtigung gesetzt ist, sollte die erste Berechtigungsgruppe ein Komma enthalten x, z. B. -rwx„Datei“. Apples Leitfaden zu Mac-Berechtigungen erklärt, wie sich der Datei- und Ordnerzugriff für verschiedene Benutzer unterscheidet.
Verwenden Sie ls -l, um zu bestätigen, dass die Eigentümerberechtigungszeichenfolge x enthält.
Der Befehl meldet „Datei oder Verzeichnis nicht gefunden“. Der Pfad oder Dateiname stimmt nicht überein. Überprüfen Sie im Finder den Namen und den Speicherort und wiederholen Sie den Befehl anschließend mit dem korrekten Pfad.
Es erscheint die Meldung „Vorgang nicht zulässig“ oder „Zugriff verweigert“. Möglicherweise sind Sie nicht der Eigentümer der Datei, oder ein übergeordneter Ordner erlaubt keinen Zugriff. Verschieben Sie eine Kopie in einen Ordner, dessen Eigentümer Sie sind, z. B. „Downloads“, oder bitten Sie den Dateibesitzer oder Ihren Mac-Administrator, die Zugriffsrechte zu korrigieren. Vermeiden Sie es, die Datei sudoals ersten Schritt hinzuzufügen.
Die Datei besitzt zwar das Ausführungsbit, lässt sich aber trotzdem nicht ausführen. Prüfen Sie, ob es sich um ein gültiges Skript handelt und ob in der ersten Zeile ein verfügbarer Interpreter angegeben ist. Falls die Meldung auf eine von Apple nicht verifizierbare App, einen unbekannten Entwickler oder Schadsoftware hinweist, handelt es sich um eine separate Gatekeeper- oder Schadsoftwarewarnung und nicht um einen Fehler bezüglich der Ausführungsberechtigung.
Die macOS-Sicherheit darf nicht geschwächt werden, um eine Dateiberechtigung zu reparieren.
Verwenden Sie diese Option chmod a+xnur, wenn Sie anderen lokalen Konten absichtlich Ausführungsrechte einräumen möchten. Vermeiden Sie außerdem weitreichende Befehle wie chmod -Rdas Ändern von Berechtigungen für Systemordner. Um das für Ihr Konto hinzugefügte Ausführungsbit rückgängig zu machen, führen Sie folgenden Befehl aus chmod u-x "$HOME/Downloads/script.command":
Bei einer App-Verifizierungswarnung befolgen Sie Apples Hinweise zum sicheren Öffnen von Apps nur dann, wenn Sie die Vertrauenswürdigkeit der Quelle bestätigt haben. Ignorieren Sie keine Warnungen, die darauf hinweisen, dass Software Ihren Computer beschädigen könnte oder dass macOS Schadsoftware erkannt hat. Neuere Schutzmechanismen für Terminal-Einfügungen sind in Apples Leitfaden zu Terminal- und Skriptschutz dokumentiert .