Gruppeidentifikator - Group identifier

I Unix-lignende systemer kan flere brukere deles inn i grupper . POSIX og konvensjonelle Unix- filsystemtillatelser er organisert i tre klasser, bruker , gruppe og andre . Bruk av grupper gjør at flere evner kan delegeres på en organisert måte, for eksempel tilgang til disker, skrivere og andre eksterne enheter . Denne metoden, blant annet, gjør det også mulig for superbrukeren å delegere noen administrative oppgaver til vanlige brukere, i likhet med administratorgruppen Microsoft Windows NT og dens derivater.

En gruppeidentifikator , ofte forkortet til GID , er en numerisk verdi som brukes til å representere en bestemt gruppe. Verdiområdet for en GID varierer mellom forskjellige systemer; i det minste kan en GID være mellom 0 og 32 767, med en begrensning: påloggingsgruppen for superbrukeren må ha GID 0. Denne numeriske verdien brukes til å referere til grupper i /etc/passwd og /etc/group filer eller deres ekvivalenter. Shadow-passordfiler og Network Information Service refererer også til numeriske GID-er. Gruppeidentifikatoren er en nødvendig komponent i Unix filsystemer og prosesser .

Supplerende grupper

I Unix-systemer må hver bruker være medlem av minst en gruppe, den primære gruppen , som identifiseres av det numeriske GID for brukerens oppføring i passwd-databasen, som kan vises med kommandoen getent passwd (vanligvis lagret i /etc/passwd eller LDAP ) . Denne gruppen blir referert til som den primære gruppe-ID-en . En bruker kan være oppført som medlem av flere grupper i de relevante oppføringene i gruppedatabasen, som kan vises med getent group (vanligvis lagret i /etc/group eller LDAP ); IDene til disse gruppene blir referert til som supplerende gruppe-IDer .

Effektiv mot ekte

Unix-prosesser har en effektiv (EUID, EGID), en reell (UID, GID) og en lagret (SUID, SGID) ID. Normalt er disse identiske, men i setuid og setgid prosesser er de forskjellige.

Konvensjoner

Type

Opprinnelig ble et signert 16-biters heltall brukt. Siden tegnet ikke var nødvendig - negative tall lager ikke gyldige gruppe-ID-er - brukes nå et usignert heltall i stedet, som tillater gruppe-ID-er mellom 0 og 65,535. Moderne operativsystemer bruker vanligvis usignerte 32-biters heltall, som tillater gruppe-ID mellom 0 og 4 294 967 295.

Reservert rekkevidde

Mange Linux-systemer reserverer GID-nummerområdet 0 til 99 for statisk tildelte grupper, og enten 100−499 eller 100−999 for grupper som er dynamisk tildelt av systemet i skript etter installasjon. Disse områdene er ofte angitt i /etc/login.defs , for useradd , groupadd og lignende verktøy.

På FreeBSD kan bærere som trenger en GID for pakken, velge en gratis fra 50 til 999 og deretter registrere denne statiske tildelingen i porter / GID .

Spesielle verdier

  • 0: Superbrukeren har normalt en GID på null (0).
  • −1: Verdien (gid_t) -1 er reservert av POSIX for å identifisere et utelatt argument.
  • 65,534: Linux-kjernen er som standard 2 16 −2 = 65,534 (som mange Linux-distribusjoner tilordner gruppenavnet "nogroup") når en 32-bit GID ikke passer inn i returverdien til et 16-biters systemanrop. Verdien returneres også av idmapd hvis et gruppenavn i en innkommende NFSv4- pakke ikke samsvarer med noen kjent gruppe på systemet.

Personlige grupper

Mange systemadministratorer tildeler for hver bruker også en personlig primærgruppe som har samme navn som brukerens påloggingsnavn, og ofte også har samme numeriske GID som brukerens UID. Slike personlige grupper har ingen andre medlemmer og gjør samarbeid med andre brukere i delte kataloger enklere, ved å la brukerne ofte jobbe med umask 0002 . På denne måten kan nyopprettede filer som standard ha skrivetillatelser aktivert for gruppemedlemmer, fordi dette normalt bare muliggjør skrivetilgang for medlemmer av den personlige gruppen, det er bare for filens eier. Imidlertid, hvis en fil opprettes i en delt katalog som tilhører en annen gruppe og har setgid bit sett, vil den opprettede filen automatisk også bli skrivbar for medlemmer av katalogen.

På mange Linux-systemer kontrollerer USERGROUPS_ENAB variabelen i /etc/login.defs om kommandoer liker useradd eller userdel automatisk legger til eller sletter en tilknyttet personlig gruppe.

Se også

Referanser