概述:与Windows操作系统相比,Linux系统中的用户账号和组账号的作用在本质上是一样的,同样都是基于用户的身份来控制对资源的访问,只不过在表现形式和个别细节上有些许差异。
在Linux系统中,根据权限和担任的角色不同用户账号分为:
(1)超级用户,root用户 权限最高,UID默认为0
(2)普通用户,由管理员用户创建,UID为1000-60000
(3)程序用户,用来维持系统或者某个程序运行,UID为1-999
(4)匿名用户,nobody 权限最低
(1)私有组:伴随着用户的创建而创建,与用户同名
(2)公有组:直接创建空组,可以添加已有用户,给组设置权限,改组中的所有用户都具备该权限
(1)/etc/passwd:保存用户名称,宿主目录,登录Shell等基本信息,每一行对应一个用户的账号纪录, 例如, (2)/etc/shadow:保存用户的密码,账号有效期等信息,每一行对应一个用户的密码纪录
例如, (3)/etc/skel:用户账号的初始配置文件,主要的配置文件:
~/.bash_profile , ~/.bashrc 用户登录时加载
~/.bash_logout 用户注销时加载
我们可以用vim加配置文件来编辑增加配置文件内容,让账号在登录或注销时执行命令。
(1)添加用户账号---------useradd,常用选项如下:
[root@localhost ~]#useradd #用户账号-d 指定家目录,不指定为/home
-e 指定失效时间
-g 基本组
-G 公有组
-M 不建立宿主目录
-s 指定是否允许shell终端登录
-u 指定UID号
(2)设置密码--------passwd,chage
[root@localhost ~]#passwd [-参数 参数值] 用户名 PS:不加用户名表示修改当前用户密码-l 锁定账号 可以高权限su切换 不能在图形化登录
-u 解锁
-d 清除密码
-S 查看用户状态
[root@localhost ~]#chage [-参数 参数值]用户名-l 列出该账号的详细密码信息
-d 查看该账号最近一次改密时间
-E 查看账号失效日
-l 查看密码失效日
-m 设置密码不可被修改的天数
-M 设置密码有效期
(3)修改账户信息------usermod
-L 冻结该账号
-U 解冻该账号
(4)删除用户-------userdel
[root@localhost ~]#userdle[-r] 用户名添加-r选项时,表示连用户的宿主目录一并删除
(1)添加组账号------groupadd
[root@localhost ~]#groupadd [-g GID] 可以指定组账号名(2)删除组账号-----groupdel
[root@localhost ~]# groupdel #组账号(3)设置组密码,添加,删除组成员---------gpasswd
-a 向组内添加一个用户
-d 从组内删除一个用户成员
-M 定义组成员列表,以逗号分隔 PS:用-M会覆盖原始用户
(1)groups命令
查询用户所属的组
[root@localhost ~]#groups[用户名](2)id命令
查询用户身份标识
[root@localhost ~]# id [用户名](3)finger命令
查询用户账号的详细信息
[root@localhost ~]# finger[用户名]
(4)W,who,users命令
查询已登录到主机的用户信息
(5)lastb命令 查询最近登录纪录