GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Was sind die verschiedenen Möglichkeiten zum Festlegen von Dateiberechtigungen usw. unter gnu/linux

chmod :Dateimodus-Bits ändern

Verwendung (oktaler Modus):

    chmod <octal-mode> files...

Verwendung (symbolischer Modus):

    chmod <references><operator><modes> files..

references ist eine Kombination aus den Buchstaben ugoa , die angeben, welcher Benutzer Zugriff auf files hat wird geändert:

  • u der Benutzer, dem es gehört
  • g andere Benutzer im file 's Gruppe
  • o andere Benutzer, die nicht in der Gruppe der Datei sind
  • a alle Benutzer

    Wenn das weggelassen wird, werden standardmäßig alle Benutzer verwendet, aber nur Berechtigungen, die durch umask zugelassen werden geändert werden.

    operator ist eines der Zeichen +-= :

    • + Fügen Sie die angegebenen Dateimodusbits zu den vorhandenen Dateimodusbits von jedem file hinzu
    • - entfernt die angegebenen Dateimodusbits zu den vorhandenen Dateimodusbits von jedem file
    • = fügt die angegebenen Bits hinzu und entfernt nicht angegebene Bits, mit Ausnahme von setuid und setgid Bits für Verzeichnisse gesetzt, sofern nicht ausdrücklich angegeben.

    mode besteht aus einer Kombination der Buchstaben rwxXst , die angeben, welches Berechtigungsbit geändert werden soll:

    • r lesen Sie
    • w schreibe
    • x ausführen (oder nach Verzeichnissen suchen)
    • X Ausführen/Suchen nur, wenn die Datei ein Verzeichnis ist oder für einen Benutzer bereits ein Ausführungsbit gesetzt ist
    • s setuid oder setgid (abhängig von der angegebenen references )
    • t eingeschränktes Lösch-Flag oder Sticky Bit

    Alternativ die mode kann aus einem der Buchstaben ugo bestehen , in diesem Fall entspricht der Modus den Berechtigungen, die dem Eigentümer derzeit gewährt werden (u ), Mitglied der file Gruppe von (g ) oder Berechtigungen von Benutzern in keiner der vorangegangenen Kategorien (o ).

Die verschiedenen Bits von chmod erklärt:

  • Zugangskontrolle (siehe auch setfacl )
    • rwx — Lese- (r), Schreib- (w) und Ausführungs-/Kreuz- (x) Berechtigungen.
      • Read (r) beeinflusst, ob eine Datei gelesen oder ein Verzeichnis aufgelistet werden kann.
      • Schreiben (w) beeinflusst, ob eine Datei geschrieben oder ein Verzeichnis bearbeitet werden kann (Dateien hinzugefügt, gelöscht, umbenannt).
      • Execute (x) wirkt sich darauf aus, ob eine Datei ausgeführt werden kann, für Skripte verwenden (siehe #! ) und andere ausführbare Dateien.
      • Kreuz (x) beeinflusst, ob ein Verzeichnis durchlaufen werden kann.
    • s und t — sticky bit (t) und setgid (s) auf Verzeichnissen
      • Das Sticky-Bit betrifft nur Verzeichnisse. Verhindert, dass jemand außer Dateieigentümer und Root Dateien im Verzeichnis löscht.
      • das setgid-Bit auf Verzeichnissen bewirkt, dass bei neuen Dateien und Verzeichnissen die Gruppe auf dieselbe Gruppe gesetzt wird und bei neuen Verzeichnissen das setgid-Bit gesetzt wird (siehe auch Voreinstellungen in setfacl).
    • s — setuid, setgid, bei ausführbaren Dateien.
      • Dies kann die Sicherheit negativ beeinflussen, wenn Sie nicht wissen, was Sie tun.
      • Wenn eine ausführbare Datei ausgeführt wird und eines dieser Bits gesetzt ist, wird der effektive Benutzer/die effektive Gruppe der ausführbaren Datei zu dem der Datei. Somit läuft das Programm als dieser Benutzer. siehe setcap für einen moderneren Weg, dies zu tun.

chown chgrp :

chattr :Dateiattribute ändern

Verwendung:

    chattr <operator><attribute> files...

operator ist eines der Zeichen +-= :* + fügt die ausgewählten Attribute zu den bestehenden attributes hinzu des files * - entfernt den ausgewählten attributes * = überschreibt den aktuellen Satz von Attributen, die die Dateien mit dem angegebenen attributes haben .

attribute ist eine Kombination aus den Buchstaben acdeijstuADST , die den Attributen entsprechen:

  • a nur anhängen
  • c komprimiert
  • d kein Dump
  • e Extent-Format
  • i unveränderlich
  • j Datenprotokollierung
  • s Sicheres Löschen
  • t kein Tail-Merging
  • u nicht löschbar
  • A kein atime Aktualisierungen
  • D synchrone Verzeichnisaktualisierungen
  • S synchrone Updates
  • T oben in der Verzeichnishierarchie

setfattr :Erweiterte Dateiattribute ändern

Verwendung (Set-Attribut):

    setfattr -n <name> -v <value> files...

Verwendung (entfernen):

    setfattr -x <name> files...

name ist der Name des erweiterten Attributs, das gesetzt oder entfernt werden soll

value ist der neue Wert des erweiterten Attributs

setfacl :Dateizugriffskontrolllisten ändern

Verwendung:

    setfacl <option> [default:][<target>:][<param>][:<perms>] files...

option muss eines der folgenden enthalten:

  • --set setzt die ACL einer Datei oder eines Verzeichnisses und ersetzt die vorherige ACL
  • -m |--modify die ACL einer Datei oder eines Verzeichnisses ändern
  • -x |--remove ACL-Einträge einer Datei oder eines Verzeichnisses entfernen

    target ist einer der Buchstaben ugmo (oder die unten gezeigte längere Form):

  • u , users Erlaubnis eines benannten Benutzers, identifiziert durch param , ist standardmäßig der Dateieigentümer uid falls weggelassen

  • g , group Erlaubnis einer benannten Gruppe, identifiziert durch param , standardmäßig Besitzer der Gruppe uid falls weggelassen
  • m , mask wirksame Rechtemaske
  • o , other Berechtigungen anderer

    perms ist eine Kombination aus den Buchstaben rwxX , die den Berechtigungen entsprechen:

  • r lesen

  • w schreiben
  • x ausführen
  • X nur ausführen, wenn die Datei ein Verzeichnis ist oder bereits Ausführungsrechte für einen Benutzer hat

    Alternativ perms kann eine Oktalziffer sein (0 -7 ), die den Satz von Berechtigungen angibt.

setcap :Dateifähigkeiten ändern

Verwendung:

    setcap <capability-clause> file 

Ein capability-clause besteht aus einer durch Kommas getrennten Liste von Capability-Namen, gefolgt von einer Liste von Operator-Flag-Paaren.

Die verfügbaren Operatoren sind = , + und - . Die verfügbaren Flags sind e , i und p die dem Gültig entsprechen , Vererbbar und Erlaubt Fähigkeitsgruppen.

Die = Der Bediener erhöht die angegebenen Fähigkeitssätze und setzt die anderen zurück. Wenn keine Flags in Verbindung mit dem = angegeben werden Operator werden alle Capability Sets zurückgesetzt. Die + und - Operatoren erhöhen bzw. verringern die eine oder mehrere angegebene Fähigkeitsgruppen.

chcon :SELinux-Sicherheitskontext der Datei ändern

Verwendung:

    chcon [-u <user>] [-r <role>] [-t <type>] files...

Benutzer ist der SELinux-Benutzer, z. B. user_u , system_u oder root .

Rolle ist die SELinux-Rolle (immer object_r für Dateien)

tippen ist der Subjekttyp von SELinux

chsmack :erweiterte SMACK-Attribute ändern

Verwendung:

    chsmack -a <value> file

value ist das SMACK-Label, das für SMACK64 gesetzt werden soll erweitertes Dateiattribut

setrichacl:Rich Access Control List ändern.

Richacls sind eine Funktion, die erweiterte ACLs hinzufügt.

Derzeit in Arbeit, daher kann ich Ihnen nicht viel darüber sagen. Ich habe sie nicht verwendet.

Siehe auch diese Frage. Gibt es fortgeschrittenere Dateisystem-ACLs als die traditionelle 'rwx'- und POSIX-ACL?

Linux
  1. Kopieren Sie Dateien im Linux-Terminal

  2. Verschieben Sie Dateien im Linux-Terminal

  3. Eine Einführung in die Linux-Datei /etc/fstab

  4. Linux – Was sind die verschiedenen Möglichkeiten zum Festlegen von Dateiberechtigungen usw. unter Gnu/Linux?

  5. Was ist die Beschränkung der maximal geöffneten Dateien unter Linux?

Die 6 besten Möglichkeiten zum Anzeigen von Dateien unter Linux

Was sind Inodes unter Linux?

Was ist die Datei /etc/passwd unter Linux?

Was sind die Unterschiede zwischen lsof und netstat unter Linux?

Was bedeutet das 'rc' in `.bashrc` usw.?

Linux-Dateihierarchie - was ist der beste Ort zum Speichern von Sperrdateien?