nobody就是一个普通账户,因为默认登录shell是/sbin/nologin,所以这个用户是无法直接登录系统的,也就是***很难通过漏洞连接到你的服务器来做破坏。此外这个用户的权限也给配置的很低。因此有比较高的安全性。 一切都只给最低权限。这就是nobody存在的意义
wo我再补充一下,用NOBODY运行是有安全考虑的。 如果用ROOT权限启动APACHE的时候,会有安全问题 如果APACHE里有BUG,那么***就能直接取得ROOT权限。 如果是普通用户,哪她就只能取得普通用户的权限。 很多服务都是ROOT启动的,很多服务器的MYSQL就是ROOT启的这样很不安全


nobody是系统用户,一个特殊用途的用户 ID 。一般来说 uid < 500 的都是系统 ID 。
Linux 系统为了安全,很多操作和服务的运行都不是运行在 root 用户下面的,而是一个专用的 ID ,这个 ID 一般就是 nobody ,这样就可以把每个服务运行的情况隔离出来。保证不会因为服务器程序的问题而让服务器程序成了***的直接操作源(***拿下了服务器程序,也仅仅是 nobody 用户而不是 root 用户,还要进行提权才行)。同时也不会影响其他用户的数据。

除了 nobody ,常见的还有 ftp 、ssh 什么的。有的不是用来跑服务,而是用来占坑,主要是用用户组的权限管理进行权限设置,这个时候会有一个占坑用的同名 ID 加入到用户组。这种情况好像主要是为了兼容。