Beheben des Fehlers "Berechtigung verweigert" unter Linux
Wenn Sie auf Ihrem Linux-System den Fehler "Berechtigung verweigert" erhalten, bedeutet dies in der Regel, dass Ihr Benutzerkonto nicht über die richtigen Berechtigungen für die Datei oder das Verzeichnis verfügt, mit der Sie interagieren möchten. Allen Dateien und Verzeichnissen im Linux-Dateisystem sind Benutzer- und Gruppenberechtigungen zugeordnet, die den Zugriff auf das Lesen, Schreiben oder Ausführen der Datei delegieren. Diese Berechtigungen funktionieren unabhängig voneinander, nur weil Sie eine Datei öffnen können, heißt das nicht, dass Sie sie bearbeiten können.
In diesem Tutorial zeigen wir, wie Sie den Fehler "Berechtigung verweigert" unter Linux beheben können. Diese Methoden umfassen grundlegende Berechtigungsänderungen für Dateien oder das Erhöhen auf das Stammkonto für geschützte Dokumente. Folgen Sie uns unten, um mit der Bearbeitung von Dateiberechtigungen und der Behebung des Fehlers zu beginnen.
In diesem Tutorial lernen Sie:
- So zeigen Sie Dateiberechtigungen und Eigentümer an
- So ändern Sie Lese-, Schreib- oder Ausführungsberechtigungen für eine Datei
- So ändern Sie den Eigentümer oder die Gruppe einer Datei
- So verwenden Sie das Root-Konto, um Berechtigungseinschränkungen zu umgehen
Beheben des Fehlers "Berechtigung verweigert" unter Linux – Schritt-für-Schritt-Anleitung
Der Fehler "Berechtigung verweigert" kann sowohl bei Dateien als auch bei Verzeichnissen auftreten. So sieht es aus, wenn wir versuchen, ein Skript auszuführen, für das unser Benutzerkonto keine ausführbaren Berechtigungen hat:
Dies bedeutet lediglich, dass unser aktuelles Benutzerkonto nicht über die ordnungsgemäß konfigurierten Berechtigungen verfügt, um mit der Datei auf die von uns gewünschte Weise zu interagieren. Wir können die Befehle chown oder chmod verwenden, um das Problem zu beheben und uns die für die Verwendung der Datei erforderlichen Berechtigungen zu erteilen.
Befolgen Sie die nachstehenden Schritt-für-Schritt-Anweisungen, um den Fehler "Berechtigung verweigert" zu beheben:
Beginnen wir damit, mit dem Befehl
ls -lzu überprüfen, welche Berechtigungen für die Datei vorhanden sind. Dadurch werden der Besitzer, die Gruppe und die Berechtigungsinformationen für jede Datei oder jedes Verzeichnis angezeigt. Geben Sie den Pfad zur Datei oder zum Verzeichnis als Argument an:ls -l example.sh -rw-rw-r-- 1 linuxconfig linuxconfig 32 Jan 28 17:15 example.shDie Ausgabe zeigt, dass der Besitzer und die Gruppe über Lese- und Schreibberechtigungen verfügen und andere Benutzer über Leseberechtigungen verfügen. Wie Sie sehen können, haben wir keine Ausführungsberechtigungen für die Datei, weshalb wir beim Versuch, sie auszuführen, die Fehlermeldung erhalten.
Der einfachste und schnellste Weg, das Problem zu beheben, besteht darin, die richtigen Berechtigungen hinzuzufügen, die wir mit dem Befehl chmod benötigen:
Leseberechtigungen hinzufügen:
chmod +r example.shFügen Sie Schreibberechtigungen hinzu:
chmod +w example.shHinzufügen von Ausführungsberechtigungen:
chmod +x example.shFügen Sie alle Berechtigungen hinzu:
chmod +rwx example.shWARNING
Es wird empfohlen, dass Sie nur die erforderlichen Berechtigungen für jede Datei hinzufügen. Es ist verlockend, jeder Datei, die Sie verwenden möchten, einfachrwx-Berechtigungenzuzuweisen, aber Dateiberechtigungen sind eine Sicherheitsfunktion und sollten nur an Benutzer oder Gruppen weitergegeben werden, die sie wirklich benötigen.-
Alternativ können Sie bei Bedarf den Besitz der Datei übernehmen. Dadurch erhalten Sie in der Regel mehr Berechtigungen als andere Benutzer, aber Sie können die Berechtigungen bei Bedarf auch jederzeit bearbeiten. Dieser Befehl ändert den Besitzer der Datei mit dem Befehl chown in den Benutzer
linuxconfig.chown linuxconfig example.sh Wenn Sie versuchen, eine Systemdatei (kein gewöhnliches Dokument) zu lesen, zu bearbeiten oder auszuführen, wird empfohlen, das Root-Konto zu verwenden, anstatt die Dateiberechtigungen zu ändern. Das Ändern der Dateiberechtigungen einer Systemdatei oder einer Anwendungskonfigurationsdatei kann unerwünschte Nebeneffekte haben. Wenn Sie beispielsweise eine Systemdatei mit nano bearbeiten müssen, stellen Sie dem Befehl einfach sudo voran:
sudo nano /path/to/configAlternativ können Sie mit dem folgenden Linux-Befehl eine Erhöhung auf das Stammkonto durchführen, und die Datei, für die Sie Berechtigungen benötigten, öffnen, bearbeiten oder ausführen:
su - nano /path/to/configBeachten Sie, dass Sie auch die Berechtigungen für Verzeichnisse ändern können. Wenn Sie feststellen, dass Sie in einem bestimmten Pfad keine neuen Dateien erstellen können, liegt dies wahrscheinlich daran, dass Sie keine Schreibberechtigungen für das Verzeichnis haben. Dies kann mit
chmodbehoben werden:chmod +w /path/to/dirOder bearbeiten Sie die Berechtigungen für alle Dateien rekursiv, indem Sie Ihrem Befehl die Option
-Rhinzufügen:chmod -R +w /path/to/dirEs ist auch möglich, den absoluten Modus (Berechtigungen, die durch Zahlen dargestellt werden) anstelle des symbolischen Modus (Berechtigungen, die durch rwx dargestellt werden) zu verwenden. Einige Beispiele:
Erteilen Sie dem Eigentümer der Datei vollständige Berechtigungen (Lesen, Schreiben, Ausführen) und allen anderen Benutzern Leseberechtigungen:
chmod 744 file-nameErteilen Sie jedem Benutzer die vollen Berechtigungen (Lesen, Schreiben, Ausführen):
chmod 777 file-nameIn unserem Tutorial zur Einführung in Linux-Dateiberechtigungen finden Sie weitere Beispiele für die Verwendung des absoluten Modus und des symbolischen Modus zum Ändern von Dateiberechtigungen.
Abschließende Gedanken
In diesem Tutorial haben wir gesehen, wie man den Fehler "Berechtigung verweigert" auf einem Linux-System behebt. Wie bereits erwähnt, ist dieser Fehler das Ergebnis des Fehlens der erforderlichen Berechtigungen zum Lesen, Schreiben oder Ausführen einer Datei oder des Inhalts eines Verzeichnisses. Die beschriebenen Möglichkeiten, dieses Problem zu beheben, bestehen darin, Dateiberechtigungen mit dem Befehl chmod zu ändern, den Besitz mit dem Befehl chown zu übernehmen oder Administratorrechte mit dem Befehl sudo zu verwenden. Das Root-Benutzerkonto verfügt immer über vollständige Berechtigungen für jede Datei, unabhängig davon, was konfiguriert wurde.

