Linux Shell Sticky Bit -Verwendung und Beispiele

Linux Shell Sticky Bit -Verwendung und Beispiele

Bevor wir darüber sprechen, was ein klebriges Stück ist, beginnen wir zunächst, warum wir es brauchen. Zum Beispiel haben wir ein Verzeichnis /var/Share Irgendwo im Dateisystem mit einem vollen Zugriff für alle Berechtigungsgruppen, die Eigentümer, Gruppe und alle Berechtigungen sind, werden alle Berechtigungsbits auf „Eins“ eingestellt drwxrwxrwx:

# ls -ld/var/shary/drwxrwxrwx. 2 Root Root 4096 März 5 11:02/var/share/ 

Aus den oben genannten können wir sehen, dass jeder Benutzer Berechtigungen in die /var/Share Verzeichnis. Als nächstes haben wir in unserem Szenario zwei Benutzer genannt Benutzer1 Und Benutzer2. Da haben jetzt jeder Zugang zu /var/Share Verzeichnis, unser Benutzer1 kann zu diesem Verzeichnis navigieren und einfach eine beliebige Datei erstellen:

user1@localhost ~] $ cd/var/share/[user1@localhost share] $ touch file1 [user1@localhost share] $ ls -l file1 -rw -rw -r--. 1 User1 User1 0 5. März 11:08 Datei1 [user1@localhost Share] $ 

Der Datei1 wurde mit einem von den Benutzern festgelegten Berechtigungsbit erstellt Ummask Wert und der Benutzer- und Gruppenbesitz wird an seinen Schöpfer festgelegt Benutzer1. Bisher haben wir keine Probleme und alle funktionieren perfekt wie beabsichtigt. Später unser Benutzer2 navigiert zum /var/Share Verzeichnis und beschließt, umzubenennen oder zu löschen Datei1 Zu Datei2:

[user2@localhost share] $ cd/var/share/[user2@localhost Share] $ ls -l Gesamt 0 -rw -rw -r--. 1 User1 User1 0 5. März 11:20 Datei1 [user2@localhost Share] $ MV Datei1 Datei2 [user2@localhost Share] $ ls -l Gesamt 0 -RW -RW -R--. 1 User1 User1 0 5. März 11:20 Datei2 [user2@localhost share] $ rm Datei2 RM: Entfernen Sie die regelmäßige leere Datei von Schreibgeschützt 'Datei2'? y [user2@localhost share] $ ls [user2@localhost Share] $ 

Was im obigen Beispiel passiert ist, ist, dass unsere Benutzer2 navigiert zu /var/Share Verzeichnis, alle Dateien aufgelistet und gefunden Datei1. Mit einem Gebrauch von MV Befehst der Benutzer in die umbenannt Datei1 Zu Datei2. Die Datei wurde umbenannt, während der Eigentümer und die Gruppe der Datei unverändert waren. Danach Benutzer2 Einfach beschlossen, die Datei mithilfe der Datei zu entfernen rm Befehl.

Zu diesem Zeitpunkt müssen wir einen Mechanismus benötigen, um Benutzer zu verhindern, die das Verzeichnis oder die tatsächliche Datei innerhalb des Verzeichnisses nicht besitzen. Dieser Mechanismus wird als "klebriges Stück" bezeichnet. Mit dem Sticky Bit können Root, Verzeichnisbesitzer und Dateibesitzer nur Dateien umbenennen und löschen. Verwenden Chmod Befehl zum Einstellen eines Sticky -Bits in einem Verzeichnis:

[root@localhost ~]# chmod +t/var/share/[root@localhost ~]# ls -ld/var/shary/drwxrwxrwt. 2 Root Root 4096 März 5 11:21/var/share/ 

Das letzte ausführbare Berechtigungsbit für alle Benutzer ist nun eingestellt T Dies bedeutet, dass jetzt ein Sticky -Bit vorhanden ist und nur Root-, Datei- oder Verzeichnisbesitzer Dateien umbenennen und löschen können. Lassen Sie uns das obige Szenario replizieren und lassen Benutzer1 Um eine neue zu erstellen Datei1 Datei:

[user1@localhost share] $ ls [user1@localhost share] $ touch file1 [user1@localhost Share] $ ls -l Gesamt 0 -rw -rw -r--. 1 User1 User1 0 5. März 11:34 Datei1 [user1@localhost Share] $ 

Datei1 wird jetzt erstellt und da das Sticky -Bit jetzt vorhanden ist Benutzer2 wird nun daran gehindert, Datei umzubenennen oder zu löschen, die ihm/ihr nicht gehört:

[user2@localhost Share] $ ls -l Gesamt 0 -rw -rw -r--. 1 User1 User1 0 5. März 11:34 Datei1 [user2@localhost Share] $ MV Datei1 Datei2 MV: Kann 'Datei1' nicht auf 'Datei2': Operation nicht zulässig [user2@localhost Share] $ rm Datei1 RM: Schreibgeschützte entfernen Regelmäßige leere Datei 'Datei1' '? y rm: 'Datei1' kann nicht entfernen--. 1 User1 User1 0 5. März 11:34 Datei1 [user2@localhost Share] $ 

Aus dem obigen Beispiel können wir das sehen Benutzer2 konnte eine Datei nicht umbenennen oder löschen. Das beste Beispiel für die Sticky -Bit -Verwendung ist /tmp/ Verzeichnis.

# ls -ld / tmp / drwxrwxrwt. 18 Wurzelwurzel 480 5. März 11:42 /TMP / 

Jeder Benutzer hat Zugriff auf /tmp/, Um jedoch zu verhindern, dass andere Benutzer Dateien umbenennen oder löschen, die verschiedenen Benutzern gehören. Beachten Sie nur für eine Vollständigkeit, dass Sie ein Klebebit aus einem Verzeichnis durch bereits erwähnte entfernen können Chmod Befehl:

[root@localhost ~]# ls -ld/var/share/drwxrwxrwt. 2 Root Root 4096 März 5 11:38/var/shar/[root@localhost ~]# chmod -t/var/share/[root@localhost ~]# ls -ld/var/Share/drwxrwxrwx. 2 Root Root 4096 März 5 11:38/var/share/[root@localhost ~]# 

Verwandte Linux -Tutorials:

  • Eine Einführung in Linux -Automatisierung, Tools und Techniken
  • Dinge zu installieren auf Ubuntu 20.04
  • Mint 20: Besser als Ubuntu und Microsoft Windows?
  • Mastering -Bash -Skriptschleifen beherrschen
  • Wie man OpenSSH optimal nutzt
  • Dinge zu tun nach der Installation Ubuntu 20.04 fokale Fossa Linux
  • Wie oft müssen Sie Ihren Linux -Server neu starten??
  • Wie man Kali Linux und Windows 10 Dual -Boot -Start hat
  • Grundlagen der Computermathematik: Binär, Dezimal, hexadezimal, Oktal
  • SetGid -Verzeichnisse für die Zusammenarbeit erstellen und konfigurieren -…