logo

chmod-Befehl unter Linux mit Beispielen

DerchmodDer Befehl (Modus ändern) unter Linux/UNIX wird zum Festlegen oder Ändern von Datei- und Verzeichnisberechtigungen verwendet. Jede Datei unter Linux hat einen Besitzer, eine Gruppe und zugehörige Berechtigungen, die bestimmen, wer die Datei lesen, schreiben oder ausführen kann. Benutzenchmod Administratoren und Benutzer können diese Berechtigungen steuern, um ordnungsgemäßen Zugriff und Sicherheit zu gewährleisten. Betrachten wir das Beispiel

Verwenden Sie den Befehl chmod, indem Sie die Berechtigung 745 erteilen

Befehl:

chmod 745 newfile.txt

Ausgabe:



chmod' title=

Aufschlüsselung von-rwxr--r-x:

  • Eigentümer (7):rwx> lesen, schreiben, ausführen
  • Gruppe (4):r--> schreibgeschützt
  • Andere (5):r-x> lesen und ausführen

Hier ist die Datei:

  • Vollständiger Zugriff (Lesen/Schreiben/Ausführen) für den Eigentümer
  • Schreibgeschützt für die Gruppe
  • Für andere lesen + ausführen

Syntax des chmod-Befehls

chmod [options] [mode] [File_name] 

Hier

Verbindungen in Java
  • Optionen: Optionale Flags, die das Verhalten des ändernchmodBefehl.
  • Modus: Die festzulegenden Berechtigungen werden durch eine dreistellige Oktalzahl oder symbolische Notation dargestellt (z. B. u=rwgo=rx).
  • Dateiname: Der Name der Datei oder des Verzeichnisses, für die bzw. das die Berechtigungen geändert werden sollen.

Verfügbare Optionen in chmod Command Linux

Hier sind einige nützliche Optionen deschmodBefehl unter Linux

ModusEigentümerGruppeAndereTypische Verwendung für Skripte
700 rwx------Privates Skript (nur Sie können es ausführen/bearbeiten).
711 rwx--X--XNur ausführbar/traverse; Inhalte nicht lesbar.
744 rwxR--R--Sie bearbeiten und führen; andere können lesen (nicht ausführen).
750 rwxr-x---Nur für das Team ausführbare Datei; vor anderen verborgen.
754 rwxr-xR--Exec für die Gruppe schreibgeschützt für andere.
755 rwxr-xr-xGemeinsam: Jeder kann ausführen, nur Sie bearbeiten.
775 rwxrwxr-xInnerhalb einer Gruppe freigegeben (sowohl Eigentümer als auch Gruppe können bearbeiten/ausführen).

Notiz: Optionen in „chmod“ werden grundsätzlich verwendet, um Massenänderungen vorzunehmen und Berechtigungen für mehrere Dateien oder Verzeichnisse gleichzeitig zu ändern.

Wichtige Berechtigungstypen:

Unter Linux Berechtigungen Bestimmen Sie, wer die Kontrolle über eine Datei oder ein Verzeichnis hat. Diese Berechtigungen geben an, wer eine Datei basierend auf Benutzerrollen lesen (auf sie zugreifen), schreiben (bearbeiten oder löschen) oder ausführen (ausführen) kann: Eigentümergruppe und andere.

  • Lesen ( r ): Ermöglicht das Anzeigen des Inhalts der Datei.
  • Schreiben ( w ): Ermöglicht das Ändern der Datei oder des Verzeichnisses.
  • Ausführen ( x ): Ermöglicht die Ausführung der Datei als Programm oder den Zugriff auf das Verzeichnis.

Beispiele für die Verwendung des Oktalmodus:

Angenommen, wir erteilen dem Dateieigentümer Lese- und Schreibberechtigungen. Lese-, Schreib- und Ausführungsberechtigung für die Gruppe. Leseberechtigung für den Anderen. Sie wären unser Befehl.

chmod 674 [file_name]

Hier.

  • 6 stellen die Erlaubnis des Dateieigentümers dar (rw-).
  • 7 stellen die Erlaubnis der Gruppe dar, die es sind (rwx).
  • 4 stellen die Erlaubnis des Anderen dar, was ist (R--).

Notiz: Sie können Dateiberechtigungen anzeigen und berechnen, z. B. wer auf Lese-/Schreibzugriff (Löschen oder Ändern) zugreifen oder eine Datei für die Eigentümergruppe und andere (Öffentlich) ausführen kann, indem Sie a verwendenchmodKalkulator.

Kalkulator' loading='lazy' title=

Hier verwenden wir einen Rechner, um die Berechtigungen anzuzeigen. Beispielsweise verfügt der Eigentümer über Lese-, Schreib- und Ausführungsberechtigungen, während die Gruppe und andere (öffentliche) nur Lese- und Schreibberechtigungen haben, die Datei jedoch nicht ausführen können.

Äquivalente numerische Berechtigung:

Syntax:

chmod 766 filename

Tisch:

BenutzertypBerechtigungenBinärWert
Eigentümerrwx1117
Grupperw-1106
Andererw-1106

Beispiel für das Rückgängigmachen von Änderungen, die mit dem Befehl „chmod“ unter Linux vorgenommen wurden

Um Änderungen, die mit dem Befehl „chmod“ unter Linux vorgenommen wurden, rückgängig zu machen oder rückgängig zu machen, können wir Folgendes verwenden: `chmod` Befehl noch einmal, aber dieses Mal sollten wir die richtige Berechtigung angeben, die wir wollen. 

 Hier sind die Schritte, um Änderungen rückgängig zu machen oder rückgängig zu machen:

  • Bestimmen Sie die gewünschte Berechtigung und verwenden Sie den Befehl „chmod“ erneut. 
    Zum Beispiel: Wenn wir die Änderungen an „rw-r--r--“ (Lese- und Schreibberechtigung für Eigentümer, nur Leseberechtigung für Gruppe und andere) rückgängig machen möchten, wäre unser Oktalwert entsprechend „644“ (Lesen = 4 Schreiben = 2).
  • Öffnen Sie nun das Verzeichnis und schreiben Sie den angegebenen Befehl:
    chmod 644 [file_or_directory_name]   

Verwenden Sie hier anstelle von „[file_or_directory_name]“ Ihren Datei- oder Verzeichnisnamen.

Angenommen, unser Dateiname ist „a.txt“.

Bevor Sie Änderungen rückgängig machen oder rückgängig machen:

ls -l a.txt' loading='lazy' title=ls -l a.txt   (wird verwendet, um alle Berechtigungen anzuzeigen, die a.txt hat)

Nach dem Zurücksetzen oder Rückgängigmachen von Änderungen:

Rückgängigmachen von chmod-Änderungen unter Linux' loading='lazy' title=Hier können wir sehen, dass Änderungen vorgenommen wurden

Praktische Implementierung, wie man Skripte unter Linux ausführbar macht

Unter Linux werden Skripte normalerweise in Sprachen wie Bash Python oder Perl geschrieben. Während der Inhalt des Skripts von entscheidender Bedeutung ist, ist es ebenso wichtig, sicherzustellen, dass es über Ausführungsberechtigungen verfügt. Ohne Ausführungsberechtigungen lässt Linux die Ausführung des Skripts nicht zu.

Schritt 1: Navigieren Sie zum Verzeichnis des Skripts

Öffnen Sie das Terminal und verwenden Sie dascdBefehl, um zu dem Verzeichnis zu navigieren, in dem sich Ihr Skript befindet.

Zum Beispiel:

cd /path/to/your/script

Schritt 2: Überprüfen Sie die aktuellen Berechtigungen

Verwenden Sie das ` ls` Befehl mit dem ` -l` Option zum Auflisten der Dateien im Verzeichnis zusammen mit ihren Berechtigungen. Dieser Schritt hilft Ihnen, die aktuellen Berechtigungen Ihres Skripts zu ermitteln:

ls -l
Überprüfung der aktuellen Berechtigung' loading='lazy' title=Überprüfung der aktuellen Berechtigung

Schritt 3: Machen Sie das Skript ausführbar

Um ein Skript ausführbar zu machen, müssen Sie das ` verwendenchmod`Befehl. Angenommen, Ihr Skript heißt „example“. .sh` Sie können es mit dem folgenden Befehl ausführbar machen:

chmod +x example.sh

Dieser Befehl fügt dem Skript die Ausführungsberechtigung (+x) hinzu.

Schritt 4: Änderungen überprüfen

Führen Sie das ` aus ls -l` Führen Sie den Befehl erneut aus, um zu überprüfen, ob das Skript jetzt über Ausführungsberechtigungen verfügt. Im Berechtigungsfeld für das Skript sollte ein „x“ angezeigt werden:

ls -l
Überprüfen von Änderungen, nachdem das Skript ausführbar gemacht wurde' loading='lazy' title=Überprüfen von Änderungen, nachdem das Skript ausführbar gemacht wurde

Schritt 5: Führen Sie das Skript aus

Da Ihr Skript nun über ausführbare Berechtigungen verfügt, können Sie es mit dem Befehl ` ausführen ./` Notation gefolgt vom Namen des Skripts. Zum Beispiel:

./example.sh
Führen Sie das Skript aus' loading='lazy' title=Führen Sie das Skript aus

Diese Notation weist Linux an, im aktuellen Verzeichnis zu suchen (.) für das genannte Skriptexample.sh.

Empfohlenes Quiz Quiz bearbeiten 5 Fragen

Welche numerische Berechtigung stellt sicher, dass nur der Dateieigentümer lesen und schreiben kann, während die Gruppe und andere nur die Datei lesen dürfen?

  • A

    chmod 777 file.txt

  • B

    chmod 664 file.txt

  • C

    chmod 644 file.txt

  • D

    chmod 600 file.txt

Erläuterung:

644 > Besitzer: rw- Gruppe: r-- andere: r--.

Welcher Befehl im symbolischen Modus entzieht die Ausführungsberechtigung? nur andere ohne Besitzer- oder Gruppenberechtigungen zu berühren?

  • A

    chmod a-x script.sh

  • B

    chmod o-x script.sh

  • C

    chmod go-x script.sh

  • D

    chmod u-x script.sh

Erläuterung:

o-x entfernt die Ausführungsrechte nur von „anderen“.

Welche chmod-Konfiguration codiert korrekt ein Berechtigungsschema, bei dem der Eigentümer über die volle Betriebsberechtigung verfügt, die Gruppe nur über Aufruffunktionen verfügt und andere nur die Möglichkeit haben, ohne Änderungen zu prüfen?

  • A

    chmod 751 app.sh

  • B

    chmod 754 app.sh

  • C

    chmod 715 app.sh

  • D

    chmod 571 app.sh

Erläuterung:

751 > Eigentümer: rwx Gruppe: r-x andere: --x (nur ausführen).

Welcher Befehl wendet ein Berechtigungsmodell an, das sicherstellt, dass jede in einem Verzeichnis erstellte Datei unabhängig vom Benutzereigentum automatisch die Gruppe des Verzeichnisses erbt?

  • A

    chmod +t shared_dir/

  • B

    chmod g+s shared_dir/

  • C

    chmod u+s shared_dir/

  • D

    chmod 777 shared_dir/

Erläuterung:

g+s (setgid) erzwingt, dass neue Dateien die Gruppe des Verzeichnisses erben.

Ein Skript muss für alle Benutzer ausführbar sein und nur von seinem Eigentümer geändert werden können, und das Verzeichnis muss verhindern, dass jemand außer dem tatsächlichen Eigentümer einer Datei Dateien löscht oder umbenennt. Welches Befehlspaar erfüllt dieses Sicherheitsmodell?

  • A

    chmod 777 Deploy.sh ; chmod +t /var/scripts

  • B

    chmod 755 Deploy.sh ; chmod +t /var/scripts

  • C

    chmod 700 Deploy.sh ; chmod g+s /var/scripts

  • D

    chmod 755 Deploy.sh ; chmod 777 /var/scripts

Erläuterung:

755 > Besitzer schreibt, alles kann ausgeführt werden; +t beschränkt das Löschen von Dateien auf Dateieigentümer.

chmod-Befehl unter Linux mit BeispielenQuiz erfolgreich abgeschlossen. Ihre Punktzahl:  2/5Genauigkeit : 0%Melden Sie sich an, um die Erklärung anzuzeigen 1/5 1/5 < Previous Weiter >