Unter Linux bezieht sich die Benutzer-ID (kurz UID) auf die Benutzerkennung, die in UNIX-ähnlichen Systemen eindeutig dem Benutzernamen entspricht. Es handelt sich um einen vorzeichenlosen Ganzzahlwert, der vom Kernel zur Identifizierung von Benutzern verwendet wird UNIX Eine der notwendigen Komponenten von Dateisystemen und -prozessen. Benutzer mit einer UID über 500 sind Nicht-Systemkonten, und Benutzer mit einer UID unter 500 sind vom System reservierte Konten, z. B. das Root-Konto. Die UID des Kontos mit der höchsten Autorität ist 0; Die Standard-UID des Kontos ist größer als 500.
Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Dell G3-Computer.
Wenn Sie sich beim Linux-System anmelden, kennt Linux Ihren Benutzernamen nicht wirklich, sondern nur die ID-Nummer (d. h. eine Zahlenfolge), die dem Benutzernamen entspricht. Das Linux-System speichert die Korrespondenz zwischen allen Benutzernamen und IDs in der Datei /etc/passwd.
Im Linux-System ist die ID jedes Benutzers in zwei Typen unterteilt, nämlich Benutzer-ID (Benutzer-ID, als UID bezeichnet) und Gruppen-ID (Gruppen-ID, als GID bezeichnet). Dies ist dasselbe wie eine Datei mit einer Eigentümer und eine besitzende Gruppe, die einander entsprechen. Lassen Sie uns durch die Benutzer-ID (UID) führen.
Linux-Benutzer-ID (UID)
Benutzer-ID (Englisch: Benutzer-ID, normalerweise als Benutzer-ID oder UID abgekürzt), der vollständige Name ist eine Benutzer-ID. In UNIX-ähnlichen Systemen wird eine unbekannte Nummer verwendet Durch den Kernel zur Identifizierung von Benutzern sind auch symbolische Ganzzahlwerte ein wesentlicher Bestandteil von UNIX-Dateisystemen und -Prozessen.
UID---Benutzeridentifikationsnummer, die eindeutig dem Benutzernamen entspricht. Die UID des Superuser-Roots unter LINUX ist 0. Wenn Sie möchten, dass das System Ihren Benutzernamen, UID, Gruppennamen, GID und die Namen anderer Gruppen, denen Sie angehören, anzeigt, können Sie den Befehl id verwenden. Um die UID zu ändern, verwenden Sie im Allgemeinen usermod -u
. usermod -u
。
UID是系统中用来表示用户的标识符,启动的进程的uid就是当前登录用户的uid,查看用户uid可使用id -u <username>
命令
需要注意的是,权限检查的时候是对euid检查,通常情况下进程的euid是和uid相同的。
用户的UID大于500的都是非系统账号,500以下的都为系统保留的账号,比如root账号,至高权限的账号的UID为0,我们创建用户的时候默认的账号的UID都是大于500,如果你要指定账号的UID可以使用-u
id -u <Benutzername> verwenden ;
commandHinweis Das Einzige ist, dass die Euid überprüft wird, wenn die Berechtigungen überprüft werden. Normalerweise ist die Euid des Prozesses dieselbe wie die UID.
Benutzer mit UIDs größer als 500 sind Nicht-Systemkonten, und Benutzer mit UIDs unter 500 sind vom System reservierte Konten, z. B. das Root-Konto. Die UID des Kontos mit der höchsten Autorität ist 0. Wenn wir einen Benutzer erstellen, wird der Die Standard-UID des Kontos ist größer als 500. Wenn Sie die UID des Kontos angeben möchten, können Sie sie mit dem Parameter-u
angeben. Nichts anderes ist von großer Bedeutung.
Darüber hinaus unterstützen einige spezielle Systeme auch 16-Bit-UIDs, sodass die Anzahl der UIDs auf 65536 erweitert werden kann; moderne Systeme unterstützen 32-Bit-UIDs, was auch eine weitere Erweiterung der Anzahl der UIDs auf 4.294.967.296 ermöglicht .
Effektive Benutzer-ID (effektive UID oder EUID) und effektive Benutzergruppen-ID (effektive Gruppen-ID oder EGID) werden beim Erstellen und Zugreifen auf Dateien verwendet ; Insbesondere legt der Systemkernel beim Erstellen einer Datei die Besitzer-/Gruppenattribute der Datei basierend auf der EUID und EGID des Prozesses fest, der die Datei erstellt hat. Beim Zugriff auf die Datei bestimmt der Kernel auch dessen Fähigkeit EUID und EGID des zugreifenden Prozesses. Kein Zugriff auf die Datei.
Echte Benutzer-ID (echte UID oder RUID) und echte Benutzergruppen-ID (echte GID oder RGID) werden verwendet, um den tatsächlichen Eigentümer des Prozesses zu identifizieren, und wirken sich auf das gesendete Signal aus durch die Prozessberechtigungen. Ein Prozess ohne Superuser-Berechtigungen kann nur dann Signale an den Zielprozess senden, wenn seine RUID mit der RUID des Zielprozesses übereinstimmt. Beispielsweise erbt der untergeordnete Prozess zwischen einem übergeordneten und einem untergeordneten Prozess die Authentifizierungsinformationen vom übergeordneten Prozess, sodass der übergeordnete und untergeordnete Prozesse können sich gegenseitig Signale senden.
🎜🎜🎜Temporäre Benutzer-ID🎜🎜Die temporäre Benutzer-ID (gespeicherte UID, SUID) wird verwendet, wenn ein Prozess, der mit erhöhten Berechtigungen ausgeführt wird, vorübergehend einige Vorgänge ausführen muss, für die keine Berechtigungen erforderlich sind. In diesem Fall ändert der Prozess vorübergehend seine effektive Benutzer-ID von einem privilegierten Benutzer (. Normalerweise wird die UID, die Root entspricht, in die UID geändert, die einem nicht privilegierten Benutzer entspricht, und dann wird die ursprüngliche privilegierte Benutzer-UID zur temporären Speicherung später kopiert, wenn der Prozess Vorgänge abschließt, die keine Berechtigungen erfordern Der Prozess verwendet den SUID-Wert, um die EUID zurückzusetzen. Dabei ist zu beachten, dass der EUID-Wert eines unprivilegierten Prozesses nur auf den gleichen Wert wie RUID, SUID oder EUID gesetzt werden kann (d. h. er ändert sich nicht).
Dateisystem-Benutzer-ID
Dateisystem-UID (FSUID) wird unter Linux verwendet und dient nur zur Steuerung der Zugriffsrechte auf das Dateisystem. Sie kann nicht ohne explizite Einstellung mit dem Dateisystem verwendet werden das Gleiche (wenn FSUID die UID von Root ist, dann muss mindestens eine der SUID, RUID und EUID auch die UID von Root sein), und EUID-Änderungen wirken sich auch auf FSUID aus. FSUID wird eingerichtet, um Programmen (z. B. NFS-Servern) zu ermöglichen, ihre Dateisystemberechtigungen mit den Berechtigungen einer bestimmten UID einzuschränken, ohne ein Signal an das Konto mit einer bestimmten UID zu erhalten.
Verschiedenes
Die entsprechende Beziehung zwischen dem Wert der UID und dem Benutzerkonto wird in /etc/passwd gespeichert. /etc/shadow, das zum Speichern von Passwörtern verwendet wird, und Netzwerkinformationsdienste verwenden ebenfalls UID-Werte, um Benutzer zu identifizieren, aber jetzt hat die Schattendatei unter dem Linux-System auf die Verwendung von Kontonamen umgestellt, um Benutzer zu identifizieren.
In einer POSIX-kompatiblen Umgebung kann der Befehl id den Benutzernamen, die Gruppe und die entsprechenden UID- und GID-Werte des aktuellen Benutzers angeben.
Verwandte Empfehlungen: „Linux-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonWas bedeutet Linux-Benutzer-ID?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!