[comp.sys.sun] UNIX UID aren't standardized

zjat02@uunet.uu.net (Jon A. Tankersley) (04/25/89)

I was recently checking into setting up 'global' uids for my company, the
pitfalls and benefits thereof and I noticed some interesting things.
UID's under 250 are often 'pre-allocated' by vendors.  And there are some
definite inconsistencies between UNIX versions.  The list below is not
complete and some of the UID information was taken from systems that have
been running for a long time, and may have 'bogus' reserved UID numbers -
particularly HP and Ultrix.  If anyone can fill in the blanks for the
other systems I'd be interested.

Big surprise:  Look closely at SYS and BIN.....  I wonder if OSF, UI, or
POSIX, or X/OPEN has considered anything here.

Followups have been directed to comp.std.unix.


(A)  - Indicates Apollo
(S)  - Indicates Sun
(S4) - Indicates SunOS 4.0
(SV) - Indicates AT&T System V R3.2
(DV) - Indicates DEC VMS system
(DU) - Indicates DEC Ultrix system
(H)  - Indicates Hewlett-Packard HPUX system
(IA) - Indicates IBM RT AIX


bin      - owner of binaries
daemon   - background / automated task user
default  - DEC VMS catchall userid and groupid
field    - DEC field services
guest    - guest account - really shouldn't be around
install  - AT&T installation account?  Software installation?
lp       - line printer spooler ?
lan      - network services ?
listen   - network services ?
network  - network services ?
news     - USENET news id (owner of news files and programs)
nobody   - NFS-mapped userid for root across NFS mounts
nogroup  - NFS-mapped groupid for wheel/system across NFS mounts
nuucp    - remote uucp userid (see below)
other    - catchall group account (everyone in the BSD world)
operator - system operator (often root equivalent)
printq   - special group for people to manipulate printer queues ?
root     - SuperUser on UNIX
ris      - DEC Remote Installation Services ?
staff    - systems staff group
sys      - owner of 'system' files 
system   - SuperUser on VMS  files
uucp     - UNIX-UNIX copy id for email and file transfer
user     - catchall group account
usr      - catchall group account

Reserved ID Numbers:  Sorted by number

Userid                Groupid               ProjectID(A)

nobody(S)      -2     nogroup(S)     -2
root(S,A)       0     wheel(S,A)      0     wheel          0
field(DU)       0
system(IA,DU)   0
daemon(S,A)     1     daemon(S,A)     1     apollo         1
staff(IA)       1  
netmail(IA)     1
manager(DV)     1
other(SV,H)     2
sys(S,A)        2     sys(S,A)        2
kmem(S4)        2
uucp(DU)        2  
bin(SV,H,IA)    2     bin(SV,H,IA)    2
bin(S,A)        3     bin(S,A)        3  
sys(SV,H,IA)    3     sys(SV,H,IA)    3
uucp(S,A)       4     uucp(S,A)       4  
adm(SV,H,IA)    4     adm(SV,H,IA)    4
tty(S4)         4  
manager(DV)     4  
bin(DU)         4  
operator(S)     5
uucp(SV,H)      5     uucp(SV,H)      5
news(S)         6     news(S)         6  
tftpd(IA)       6
mail(A,SV,H,AI) 6
ingres(S)       7     ingres(S)       7  
news(DU)        8     news(DU)        8     
lp(H)           9     
sccs(DU)        9
audit(S)        9  
printq(IA)      9 
nuucp(SV)      10
network(H)     10     
lan(H)         11     
staff(S,A)     10  
ris(DU)        11     ris(DU)        10  
news(H)        12  
none(A)        12     none(A)        12     none          12
sys_person(A)  13     sys_proj(A)    13     sys_org       13
user(A)        14     locksmith(A)   14
admin(A)       15     login(A)       15  
lp(A)          16     backup(A)      16
                      sys_admin(A)   17 
		      server(A)      18     
		      sys(A)         19  
		      other(S)       20  
		      operator(DU)   28  
		      guest(DU)      31  
listen(SV)     37
sync(SV)       67     
lp(SV)         71     
		      ingres(S)      74  
guest(IA)     100     usr(IA)       100  
install(SV)   101     
default(DV)   200     default(DV)   200     
ingres(DU)    274 
-tank-
#include <std/disclaimer.h>		/* nobody knows the trouble I .... */