Heim > Artikel > Betrieb und Instandhaltung > Die Standardberechtigungen von Dateien unter dem Linux-System und die Rolle versteckter Attribute
Standarddateiberechtigungen
Wenn wir eine Datei erstellen, werden für die Datei standardmäßig Standardberechtigungen festgelegt.
# touch 1.txt # ls -l 1.txt -rw-r--r-- 1 root root 0 Sep 13 14:48 1.txt # mkdir abc # ll -d abc drwxr-xr-x 2 root root 4096 Sep 13 14:51 abc
Sie können sehen, dass die neu erstellten Dateiberechtigungen 644 und die Verzeichnisberechtigungen 755 sind. Woher kommt also dieser 644? Es stellt sich heraus, dass das System neu erstellten Dateien Standardberechtigungen erteilt. Diese Standardberechtigungen können über umask angezeigt werden.
# umask 0022 # umask -S u=rwx,g=rx,o=rx
Die über umask -S angezeigten Berechtigungen sind die Standardberechtigungen des neu erstellten Verzeichnisses. Wenn es sich bei dem neu erstellten Dateityp um eine Datei handelt, müssen die x-Berechtigungen abgezogen werden, sodass die Standardberechtigungen der neuen Datei 644 (rw) sind -r-xr -x)
Wir können auch die Standardberechtigungen von Dateien über umask ändern
umask 770
Versteckte Dateiattribute
Ich weiß nicht, ob Sie Pagoda verwendet haben Pagode, Pagode wird standardmäßig in einer .user.ini-Datei im Stammverzeichnis der Website erstellt. Diese Datei ist sehr seltsam, selbst wenn Sie ein Root-Benutzer sind, können Sie sie nicht löschen. Die folgende Eingabeaufforderung wird angezeigt:
# rm -f .user.ini rm: cannot remove ‘.user.ini’: Operation not permitted
Hier möchten wir über ein anderes Konzept sprechen, die versteckten Attribute von Dateien. Warum werden sie versteckte Attribute genannt? Weil Sie über ls -l nichts anderes an dieser Datei sehen können.
# ll .user.ini -rw-r--r-- 1 root root 51 Sep 5 18:48 .user.ini
Wenn Sie etwas Seltsames sehen möchten, müssen Sie lsattr verwenden, um
# lsattr .user.ini ----i--------e-- .user.ini
Hier müssen wir uns die Bedeutung einiger Zeichen merken:
i bedeutet, dass das System keine Änderung daran zulässt Datei. Wenn das Verzeichnis über dieses Attribut verfügt, kann jeder Prozess nur die Dateien im Verzeichnis ändern und darf keine Dateien erstellen oder löschen.
a bedeutet, dass das System nur das Anhängen von Daten nach dieser Datei zulässt und keinem Prozess erlaubt, diese Datei zu überschreiben oder abzuschneiden. Wenn ein Verzeichnis über dieses Attribut verfügt, erlaubt das System nur das Erstellen und Ändern von Dateien in diesem Verzeichnis, jedoch nicht das Löschen von Dateien.
Wenn wir diese Datei also löschen möchten, müssen wir ihr verstecktes Attribut ändern. Dies kann über chattr erfolgen.
# chattr -i .user.ini # rm -f .user.ini <===删除成功了
Das obige ist der detaillierte Inhalt vonDie Standardberechtigungen von Dateien unter dem Linux-System und die Rolle versteckter Attribute. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!