Übrigens - diese Frage / Antwort wurde für die heutigen Betriebssysteme aktualisiert.
Zitat aus redhat: Verwaltung eindeutiger Zuweisungen von UID- und GID-Nummern. Beschreibt die Verwendung von UIDs und GIDs sowie deren Verwaltung und wie Generatoren (ID-Server)
Sie müssen zufällige UID- und GID-Werte generieren und gleichzeitig sicherstellen, dass Replikate niemals denselben UID- oder GID-Wert generieren. Die Notwendigkeit für eindeutige UID- und GID-Nummern kann sogar für mehrere IdM-Domänen gelten, wenn eine einzelne Organisation mehrere unterschiedliche Domänen hat.
In ähnlicher Weise können sich Dienstprogramme, die den Zugriff auf das System ermöglichen, unvorhersehbar verhalten (dieselbe Referenz):
Wenn zwei Einträgen dieselbe ID-Nummer zugewiesen wurde, wird bei der Suche nach dieser Nummer nur der erste Eintrag zurückgegeben.
Das Problem entsteht, wenn der Begriff "zuerst" schlecht definiert ist. Abhängig vom installierten Dienst werden Benutzernamen möglicherweise in einem Hash mit variabler Größe gespeichert, der aufgrund inkonsistenter Faktoren einen anderen Benutzernamen zurückgibt. (Ich weiß, dass dies zutrifft, da ich manchmal versucht habe, 2 Benutzernamen mit einer ID zu verwenden, wobei einer ein lokaler Benutzername und der andere ein domain.username ist, den ich der UID zuordnen wollte (an die ich mich schließlich gewandt habe) eine ganz andere Art), aber ich könnte mich mit "usera" einloggen, ein "who" oder "id" machen und "userb" ODER "usera" sehen - zufällig.
Es gibt eine Schnittstelle zum Abrufen mehrerer Werte von UIDs aus einer Gruppe (Gruppen mit einer einzelnen GID können mehreren UIDs zugeordnet werden). Es gibt jedoch keine tragbare Schnittstelle, über die eine Liste von Namen für eine UID zurückgegeben werden kann oder ein ähnliches Verhalten zwischen Systemen oder sogar Anwendungen auf demselben System kann unglücklicherweise überrascht sein.
In the Sun (now oracle) yp (Gelbe Seiten) oder NIS (NetworkInformationServices) gibt es auch viele Verweise auf Anforderungen an die Eindeutigkeit. Spezielle Funktionen und Server sind so eingerichtet, dass eindeutige IDs mehreren Servern und Domänen zugewiesen werden (Beispiel: Hilfeseite für uid_allocd-, gid_allocd - UID- und GID-Zuweisungsdämonen)
Eine dritte mögliche Quelle ist die Serverdokumentation von Microsoft für die Zuordnung von NFS-Konten. NFS ist ein Unix-Dateifreigabeprotokoll und beschreibt, wie Dateiberechtigungen und -zugriff von der ID verwaltet werden. Dort schreiben sie:
UID. Dies ist eine vorzeichenlose Ganzzahl, die von UNIX-Betriebssystemen zur Identifizierung von Benutzern verwendet wird und in der passwd-Datei eindeutig sein muss.
GID. Dies ist eine vom UNIX-Kernel zur Identifizierung von Gruppen verwendete Ganzzahl ohne Vorzeichen, die in der Gruppendatei eindeutig sein muss. MS-NFS-Verwaltungsseite
Während einige Betriebssysteme möglicherweise mehrere Namen / UIDs (BSD-Derivate) zugelassen haben, hängen die meisten Betriebssysteme davon ab, dass diese eindeutig sind, und verhalten sich möglicherweise unvorhersehbar, wenn dies nicht der Fall ist.
Hinweis - Ich füge diese Seite hinzu, da jemand auf diesen datierten Eintrag als Unterstützung für moderne Hilfsprogramme Bezug nimmt, um nicht eindeutige UID / GIDs unterzubringen ... was die meisten nicht tun.