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

Was ist Umask unter Linux

UMASK in Linux- und Unix-Systemen ist eigentlich als Benutzermaske bekannt oder wird auch als Benutzerdateierstellungsmaske bezeichnet. Dies ist eine Art Basisberechtigung oder Standardberechtigung, die erteilt wird, wenn eine neue Datei oder ein neuer Ordner in der Linux-Box erstellt wird.

Die meisten Linux-Distributionen geben 022 an als Standard UMASK. Wir können sagen, dass es sich um Standardberechtigungen für die Datei und Ordner durch das System handelt. Wenn wir eine Datei oder ein Verzeichnis in Linux erstellen, werden sie durch die umask-Einstellung geregelt.

Falls ein Systemadministrator die Standard-Umask nicht festlegt, ist sie 0000 . Das bedeutet, dass die neu erstellten Dateien Lese- und Schreibberechtigungen für jeden Benutzer haben und neue Verzeichnisse Lese-, Schreib- und Ausführungsberechtigungen haben werden.

Wie können wir UMASK unter Linux berechnen?

Eine Sache ist, dass der umask-Wert im Allgemeinen für Dateien und Ordner gleich ist, aber die Berechnung dieser Werte basierend auf den Berechtigungen für Dateien und Verzeichnisse ist unterschiedlich.

Minimaler UMASK-Wert für Verzeichnis:000 und Maximum:777
Minimaler UMASK-Wert für Datei:000 und Maximum:666

Hier der Grund für das Beibehalten des Maximalwerts 666 für Dateien liegt daran, dass Skriptdateien und Binärdateien in Linux nur Ausführungsberechtigungen haben sollten. Normale Dateien unter Linux sollten nur Lese- und Schreibrechte haben. Normalerweise wird umask durch einen bitweisen UND-Operator berechnet. Einige der gebräuchlichen Oktalnotationen sind:

0 -- Read, Write and Execute
1 – Read and Write
2 – Read and Execute
3 – Read Only
4 –Write and Execute
5 –Write Only
6 –Execute Only
7 –No Permissions

Jetzt können wir einfach die oben erwähnte Tabelle verwenden, um die Berechtigung für Dateien zu berechnen. Wenn beispielsweise eine umask auf 077 gesetzt ist, bedeutet dies, dass die Berechtigung im Allgemeinen wie folgt berechnet wird:

0 – Owner – Read, Write and Execute
7 – Group – No Permissions
7 – Others – No Permissions

Um die obige Umask einzustellen, sollten Sie den Befehl

eingeben
$ umask 077
$ mkdir folder1
$ touch testfile
$ ls –ld folder1 testfile

Output:
drwx------ 2 demo demo 4096 2013-07-04 01:34 folder1
-rw------- 2 demo demo 0 2013-07-04 01:34 testfile

Aktuellen umask-Wert anzeigen

Wenn Sie den umask-Befehl ohne Argumente ausführen, wird der aktuelle Maskenwert angezeigt.

$ umask
0022

Wie können wir umask mit symbolischen Werten setzen?

Unten erwähnt sind die symbolischen Werte, die wir verwenden können:

r :lesen, w :schreiben, x :ausführen, u :Benutzerbesitz, g :Gruppenbesitz und o :anderes Eigentum

Zum Beispiel:

$ umask u=rwx, g=, o=
$ mkdir folder1
$ touch testfile
$ ls –ld folder1 testfile

Was sind die Einschränkungen von umask?

1. Der Befehl umask kann verwendet werden, um Berechtigungen einzuschränken.
2. Wir können keine zusätzlichen Berechtigungen erteilen, die über die normalerweise von Programmen zum Erstellen von Dateien und Ordnern angegebenen hinausgehen. Wenn Sie Änderungen vornehmen möchten, sollten Sie stattdessen den Befehl chmod verwenden.
3. Viele Betriebssysteme verfügen nicht über eine Datei, die mit Ausführungsberechtigung erstellt werden sollte. In solchen Umgebungen werden die Ausführungsberechtigungen für die neuen Dateien immer deaktiviert.
4. Die Maske wird nur auf die Funktionen angewendet, die eine neue Datei erstellen.

Schlussfolgerung

In diesem Tutorial haben wir gelernt, was umask unter Linux ist, und den Befehl zum Festlegen eines neuen umask-Werts. Ich hoffe, Sie hatten viel Spaß beim Lesen und weitere Informationen finden Sie auf den Manpages von umask.


Linux
  1. Linux-Berechtigungen 101

  2. Was ist Red Hat Linux?

  3. Was ist umask in UNIX/Linux

  4. Was ist JingOS Linux?

  5. Was sollten die idealen Home-Verzeichnisberechtigungen in Linux sein?

Was ist umask unter Linux?

Was ist die Shell unter Linux?

Umask-Befehl unter Linux

Was ist die Login-Shell in Linux?

Was ist Load Average in Linux?

Was ist eine .bashrc-Datei unter Linux?