Heim  >  Artikel  >  System-Tutorial  >  Beheben Sie Probleme mit verweigerten Berechtigungen unter Linux

Beheben Sie Probleme mit verweigerten Berechtigungen unter Linux

WBOY
WBOYOriginal
2024-02-19 22:36:07814Durchsuche

Die Lösung für die von Linux gemeldete Ausnahme „Berechtigung verweigert“ erfordert spezifische Codebeispiele

Bei Verwendung des Linux-Betriebssystems stoßen wir häufig auf Ausnahmen „Berechtigung verweigert“. Diese Ausnahme tritt häufig auf, wenn wir versuchen, auf eine Datei oder ein Verzeichnis zuzugreifen oder diese zu ändern oder einen Befehl auszuführen, mit der Meldung, dass wir keine Berechtigung haben.

Normalerweise steuern Linux-Systeme den Zugriff und die Ausführung von Dateien und Verzeichnissen über Berechtigungen. Es gibt drei Arten von Berechtigungen für Dateien und Verzeichnisse: Leseberechtigungen, Schreibberechtigungen und Ausführungsberechtigungen. Es gibt drei Ebenen von Berechtigungsattributen: Besitzer, Gruppe und andere Benutzer.

Im Folgenden stellen wir einige gängige Methoden zur Lösung der Ausnahme „Berechtigung verweigert“ vor und stellen entsprechende Codebeispiele bereit.

  1. Überprüfen Sie die Datei- oder Verzeichnisberechtigungen

Wenn wir auf die Ausnahme „Berechtigung verweigert“ stoßen, müssen wir zuerst die Berechtigungen der Datei oder des Verzeichnisses überprüfen. Mit dem Befehl ls -l können Sie die Berechtigungsinformationen einer Datei oder eines Verzeichnisses anzeigen.

Wenn wir beispielsweise die Berechtigungsinformationen der Datei test.txt anzeigen möchten, können wir den folgenden Befehl verwenden:

ls -l test.txt

Nach der Ausführung des Befehls erhalten wir eine Ausgabe ähnlich der folgenden:

-rw-r--r-- 1 user group 1024 Jul 1 10:00 test.txt

In dieser Ausgabe , -rw-r--r – Zeigt Berechtigungsinformationen an. Unter ihnen gibt das erste Zeichen den Dateityp an, und die folgenden Zeichen sind in drei Gruppen unterteilt, wobei jede Gruppe aus drei Zeichen besteht und die Berechtigungen des Eigentümers, der Gruppe bzw. anderer Benutzer darstellt. Unter diesen bedeutet r lesbare Berechtigung, w bedeutet schreibbare Berechtigung, x bedeutet ausführbare Berechtigung und - bedeutet keine entsprechende Berechtigung.

Wenn die Berechtigungen der Datei oder des Verzeichnisses schreibgeschützt sind (z. B. -r--r--r-- oder dr-xr-xr-x), können wir die Datei nicht ändern oder das Verzeichnis betreten, und „ „Berechtigung verweigert“ wird angezeigt. Unnormal.

Mit dem Befehl chmod können wir die Berechtigungen von Dateien oder Verzeichnissen ändern. Wenn wir beispielsweise die Berechtigungen von test.txt so festlegen möchten, dass sie für den Eigentümer lesbar und beschreibbar sind, für die Gruppe lesbar sind und keine Berechtigungen für andere Benutzer haben, können wir den folgenden Befehl verwenden:

chmod 640 test.txt

Nach dem Ausführen des Befehls Verwenden Sie den Befehl ls -l erneut, um die Berechtigungsinformationen anzuzeigen. Sie werden feststellen, dass sich die Berechtigungen der Datei in -rw-r----- geändert haben.

  1. Benutzer wechseln

Wenn wir keine Berechtigung haben, auf eine Datei zuzugreifen oder einen bestimmten Befehl auszuführen, können wir versuchen, zu einem Benutzer mit entsprechenden Berechtigungen zu wechseln. Sie können den Befehl su verwenden, um Benutzer zu wechseln.

Wenn wir beispielsweise einen Befehl ausführen möchten, der Root-Rechte als Root-Benutzer erfordert, können wir den folgenden Befehl verwenden:

su root

Nach der Ausführung des Befehls fragt das System nach der Eingabe nach dem Passwort des Root-Benutzers Mit dem Passwort können Sie zum Root-Benutzer wechseln.

  1. Verwenden Sie sudo

Manchmal hat unser aktueller Benutzer keine Berechtigung zum Ausführen eines bestimmten Befehls, aber es ist unpraktisch, den Benutzer zu wechseln. Zu diesem Zeitpunkt können wir den Befehl sudo verwenden, um den Befehl vorübergehend mit Superuser-Berechtigungen auszuführen.

Wenn wir beispielsweise einen Befehl ausführen möchten, der Root-Rechte als Root-Benutzer erfordert, können wir den folgenden Befehl verwenden:

sudo command

wobei Befehl der Befehl ist, der ausgeführt werden muss.

Nach der Ausführung des Befehls fragt das System nach dem Passwort des aktuellen Benutzers, und dann kann der Befehl mit Superuser-Berechtigungen ausgeführt werden.

Es ist zu beachten, dass nur Benutzer mit Sudo-Berechtigungen Sudo-Befehle verwenden können. Normalerweise werden die Sudo-Berechtigungen normaler Benutzer vom Systemadministrator zugewiesen.

  1. Den Besitzer einer Datei oder eines Verzeichnisses ändern

Manchmal haben wir keine Berechtigung, auf eine Datei oder ein Verzeichnis zuzugreifen oder sie zu ändern, weil der aktuelle Benutzer nicht der Besitzer der Datei oder des Verzeichnisses ist. Zu diesem Zeitpunkt können wir den Befehl chown verwenden, um den Besitzer der Datei oder des Verzeichnisses zu ändern.

Wenn wir beispielsweise den Besitzer der Datei test.txt in „Benutzer“ ändern möchten, können wir den folgenden Befehl verwenden:

chown user test.txt

Verwenden Sie nach der Ausführung des Befehls erneut den Befehl ls -l, um die Berechtigungsinformationen anzuzeigen, und Sie werden feststellen, dass der Eigentümer der Datei zum Benutzer geworden ist.

Im Folgenden finden Sie mehrere Methoden zur Behebung der Ausnahme „Berechtigung verweigert“ sowie die entsprechenden Codebeispiele. Wenn wir auf diese Ausnahme stoßen, können wir je nach Situation die entsprechende Lösung auswählen. Hoffe das hilft!

Das obige ist der detaillierte Inhalt vonBeheben Sie Probleme mit verweigerten Berechtigungen unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn