/etc/passwd 存放帐户信息:linux
root:x:0:0:root:/root:/bin/bash
jianing:x:1011:100::/home/jianing:/bin/bash
username:password:uid:gid:allname:homedir:shellshell
用户名:密码:用户ID:组ID:用户全名:主目录:登陆shellapache
密码:存在/etc/shadow中,存入后者的就用x表示,若是是“!”说明此用户不能用密码登陆tomcat
UID:就是用户识别码(ID),当UID为0时说明其帐号是管理员身份,1-499是保留给系统使用的主要是一些系统服务,500-65535是给通常用户的。安全
GID:与/etc/group文件有关,就是用户初始化组的ID。bash
用户全名:用户全名服务器
家目录:就是该用户的主目录网络
Shell:SHELL脚本性能
/etc/shadow 存放用户密码ui
root:$2a$32$3lnW8AXwIZy.Ibh0T2k3huMil/ZGEOQwe3EvJJzfnIcnPzxTamjke:14916::::::
jianing:$2a$10$AmxqDaxMITQoEr4HGcM/zO6JzJWMVcHpxmXdWKVOX5Tb/WWQ/m8wK:14853:0:99999:7:::
aj:!:15006:0:99999:7:::
username:password:last_change:min_change:max_change:warm:failed_expire:expiration:reserved
帐号名称:密码:最近更改密码的日期(from 1974-1-1):密码不可更改的天数:密码须要从新更改的天数:密码更改期限前的警告日期:密码过时的宽限时间:帐号失效时间:保留
/etc/group 用户组信息
root:x:0:
test:!:1005:u01,u02,u03,cvsroot
groupname:password:gid:members
组名:密码:组ID:成员
linux用户和/etc/passwd文件
passwd文件是以行为单位的配置文件,每行定义系统上的一个用户,行内分为字段,字段之间由一个冒号隔开。这些字段依次为:
用户名:密码:用户ID:主要组ID:GECOS:主目录:登陆shell
字段解释:
用户名:就是一个用户名,登陆时候用的
密码:在旧的UNIX系统上,这个字段含有用户的加密密码,为了安全性,如今的linux均显示为x或*号
用户ID:linux内核用于识别用户的一个整数ID
主要组ID:linux内核用于识别用户主要组的一个整数ID
GECOS:用户全名,安装linux时若是不输入全名,则显示为跟用户名同样,若是输入,则显示为全名(不可用于登陆)
主目录:用户登陆时,他的登陆Shell将使用这个目录做为当前工做目录
登陆Shell:用户登陆时的默认Shell,在redhat 企业版中,登陆shell一般是/bin/bash
一个/etc/passwd文件中的典型几行数据
root:x:0:0:root:/root:/bin/bash
apache:x:48:48:Apache:/var/www:/sbin/nologin
tomcat:x:91:91:Apache Tomcat:/usr/share/tomcat6:/bin/sh
说明:第2个字段用户加密后的密码在现代linux中不显示的,显示为"x"或"*"号
如需了解passwd详细信息,可运行 man 5 passwd 命令来查看
linux用户密码和/etc/shadow文件
之前用户的加密都是被保存在/etc/passwd文件中的第2个字段中,而且每一个用户均可以读取,随着计算机性能的发展,暴力破解变得相对比较容易,所以,如今linux采用一种“影子密码”,用户的密码被保存在专门的/etc/shadow文件中,其权限不容许普通用户查看,root用户能够查看,了解详细信息可执行man 5 shadow。
/etc/shadow 文件信息存储结构,字段依次为
用户名:加密密码:上次更改密码的时间:最小更改密码间隔:密码有效期限:密码过时提示时间:密码锁按期:帐户有效期:保留字段
/etc/shadow文件中几行数据
root:$6$DgEqy0v1u0STl/ML$lmRzdT/Ad6PoNmahItTnvc1NwoBlvSLEriBDXyE4rhTGpFHweMTe/GkW5bSsAsVQjMLrsDAY5X.jr8NsE1Ekh1:15148:0:99999:7:::
lzgonline:$6$2ji/.tNs9lWLcAQu$dCsR22xAxHj6q9rDSE1w14KeflWmvS5.RDD2ro11/H55TIkM69ghyPZgazi.egaTuQhIWWgLPZMvcuSKb3vFs/:15148:0:99999:7:::
apache:!!:15148::::::
用户使用passwd命令更改密码时,若是不是root用户,则passwd不接受任何参数和选项,即用户只能更改本身的密码。
3种类型的用户
普通用户:普通用户是使用系统真实用户人群。普通用户一般把/bin/bash做为登陆Shell和/home的子目录做为主目录。通常状况下,普通用户只在本身的主目录和系统范围内的临时目录里(如/tmp和/var/tmp)建立文件。在redhat企业版linux中,普通用户的用户ID数一般大于500.
root用户:用户ID为0的用户,也被称为超级用户,root用户在系统上拥有彻底权限,能够修改和删除任何文件,能够运行任何命令,能够取消任何进程。root用户负责增长和保留其余用户、配置硬件、添加系统软件。虽然root用户能够在系统上的任何地方建立文件,但它也一般使用/root做为主目录
系统用户:大多数linux系统保留一系列低UID值用户做为系统用户,系统用户不表明人,而表明系统的组成部分。例如,运行Apache网络服务器的进程常常做为用户apache(见上面的passwd文件中apache用户信息)来运行。系统用户通常没有登陆Shell,由于它不表明实际登陆的用户。一样,系统用户的主目录不多在/home中,而一般在属于相关应用的系统目录中。例如,用户apache的主目录是/var/www。在redhat企业版linux中,系统用户的UID值范围在1-499之间。
操做中经常使用linux命令
ps -aux //检查进程用户ID
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.1 2824 1408 ? Ss 22:27 0:01 /sbin/init
root 2 0.0 0.0 0 0 ? S 22:27 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 22:27 0:00 [migration/0]
root 4 0.0 0.0 0 0 ? S 22:27 0:00 [ksoftirqd/0]
ls -l //根据用户名列出目录全部者
[root@lzgonline lzgonline]# ls -l
总用量 36
drwxrwxr-x. 2 lzgonline lzgonline 4096 6月 23 22:50 coding
drwxr-xr-x. 2 lzgonline lzgonline 4096 6月 23 22:03 公共的
drwxr-xr-x. 2 lzgonline lzgonline 4096 6月 23 22:03 模板
drwxr-xr-x. 2 lzgonline lzgonline 4096 6月 23 22:03 视频
ls -ln //根据用户ID列出目录全部者[root@lzgonline lzgonline]# ls -ln总用量 36drwxrwxr-x. 2 500 500 4096 6月 23 22:50 codingdrwxr-xr-x. 2 500 500 4096 6月 23 22:03 公共的drwxr-xr-x. 2 500 500 4096 6月 23 22:03 模板drwxr-xr-x. 2 500 500 4096 6月 23 22:03 视频drwxr-xr-x. 2 500 500 4096 6月 23 22:03 图片 说明:linux内核不保存拥有文件的用户的用户名,保存的是用户ID,每次ls命令运行时,必须在/etc/passwd文件中查找用户名与用户ID映射,而后把用户名对应到内核所提供的用户ID上。