System users are a like normal users but for are set an organizational purpose. The only difference is :
- They don't have an expiry date ( no aging set )
- Their uids are below 999 like set on /etc/login.defs (can be changed) :
Also there is Standard System Users which come with the OS or with a package install most of them have the above attributes ( Conventional ):
- The majority of them have /sbin/nologin or /bin/false as a shell
- They have "*" or "!!" in /etc/shadow meaning that none can simply use them.
- And can have attributes that i have shown on the first section.
To check these standard system users list : /usr/share/doc/setup-/uidgid
An example could be by adding mypapp user as a system user ; so in case for example we want to setup Identity Access Management policy in our environment that we can automate for all users ; we have to do it only for system users based on their uids because in case of mypapp account expires the application will stop running.