介绍
所有用户信息的记录文件
/etc/passwd
#文件格式
root:x:0:0:root:/root:/bin/bash
用户名:密码:用户ID:基本组ID:用户信息:家目录:shell命令解释器
用户类型
用户ID 为0 #超级用户
用户ID 为大于或者等于500以上 #普通用户 可以登录系统 可执行命令(管理员能操作的命令普通用户无法执行)
用户ID 为1-499 #系统服务用户 仅供系统服务使用 默认不可登录 默认shell为 /sbin/nologin
所有用户的密码信息
/etc/shadow
#文件格式
daemon:*:18514:0:99999:7:::
1 2 3 4 5 6 7 8
用户名:密码加密信息:密码最后修改时间:密码最短使用时间:密码最长使用天数:密码过期前提示:密码过期还宽限天数:用户过期时间
#解释
用户名 #
密码加密信息 #使用SHA512算法,空白表示无密码,感叹号或星号表示禁止用户使用密码登录
密码最后修改时间 #Linux计算日期的时间是以1970年1月1日作为1不断累加得到的时间,这里显示18514天,也就是说root账号在1970年1月1日之后的第18514天修改的root用户密码
密码最短使用时间 #0或者空白表示无限制
密码最长使用天数 #密码最长使用天数99999天,空白表示无限制
密码过期前提示 #0或者空白表示不提示
密码过期还宽限天数 #0代表密码过期后立即失效 如果是-1,则代表密码永远不会失效
用户过期时间 #时间是以1970年1月1日开始,空白表示无限制
管理用户
添加用户
useradd <用户名> [选项]
#选项和功能
-d <目录> #指家目录的位置
-M #不创建家目录
-s <路径> #指定默认SHELL
-u <ID> #指定用户ID
-g <GID|组名称> #指定基本组ID或名称
-G <组名1> #指定公共组
-c #为添加用户信息
设置用户
更改用户密码
passwd #对当前登陆的用户进行修改密码
passwrd 用户名 #修改指定用户密码
passwd命令
passwd [选项] 用户名 #语法
#选项
-d #清空指定用户的密码
-l #锁定用户密码
-S #查看用户的状态(是否被锁定)
-u #解锁用户账号
-x <天数> #指定密码最长使用天数
-n <天数> #指定密码最短使用天数
-w <天数> #指定密码过期前提醒天数
-i <天数> #指定密码过期还肯限天数
--实例
--修改当前用户密码
passwd
--修改其他用户密码
passwd linux
--锁定密码不允许用户修改
passwd -l linux
修改用户账号的属性
usermod [选项] 用户名 #语法
以下选项与useradd命令中的含义相同
-u -d -g -G -s
-l #更改用户的登陆名称
-L #锁定用户账户
-U #解锁用户账号
--实例
--将user用户名修改成linux 语句:"usermod -l <新用户名> <旧用户名>"
usermod -l linux user
--锁定linux用户 语句:"usermod -L <用户名>"
usermod -L linux
删除用户账号
userdel 用户名
userdel -r 用户名 #删除用户同时删除宿主目录
切换用户命令
sudo [选项] <命令>
-u 用户名 #指定用户
-i #运行指定用户的默认SHELL
用户组
--记录用户组的信息文件
/etc/group
--文件格式
root:x:0:
组名:组管理员密码:组ID:组内用户列表
--记录用户组密码信息
/etc/gshadow
--文件格式
root:::
组帐户名称:组的密码:组管理员:仅显示附加成员,基本成员不显示
添加组
--语句
groupadd [选项] <组名>
--选项
-g 指定工作组ID
-r 创建系统组,系统组的组ID小于500
-K 覆盖配置文件“/ect/login.defs”
-o 允许添加组ID号 不唯一的工作组
--实例
--创建一个新的组,并添加组 ID
groupadd -g 1001 end
--创建系统工作组
group -r -g 399 end
删除组
--语句
groupdel [选项] [群组名称]
--选项
-h 显示帮助信息
-R 在chroot_dir目录中应用更改并使用chroot_dir目录中的配置文件
--实例
--删除linux组
groupdel linux
修改组参数
--语句
groupmod [选项] <组名>
--选项
-n <组名> 修改组名
-g <GID> 修改组ID
--实例
--更改end用户组为root
groupmod -n root end
组成员管理 gpasswd
--gpasswd命令参数
-a 添加用户到组
-d 从组删除用户
-A 指定管理员
-M 指定组成员和-A的用途差不多
-r 删除密码
-R 限制用户登入组,只有组中的成员才可以用newgrp加入该组
添加一个成员到组中
--把web用户添加到linux用户组 语句:"gpasswd -a <用户名> <组名>"
gpasswd -a web linux
从组中删除一个成员
--从linux组中删除web用户 语句:"gpasswd -d <用户名> <组名>"
gpasswd -d web linux
设置组成员列表
--将web,redis,tom用户添加到linux用户组 语句:"gpasswd -M <用户名1>,<用户名1>,<用户名3> <组名>"
gpasswd -M web,redis,tom linux
设置组管理员列表
--将web,redis,tom用户设置为linux用户组管理员 语句:"gpasswd -A <用户名1>,<用户名1>,<用户名3> <组名>"
设置组密码
--设置linux组密码 语句:"gpasswd <组名>"
gpasswd linux
删除组密码
--删除linux组密码 语句:"gpasswd -r <组名>"
gpasswd -r linux
查看用户加入的组
-- 查看redis用户加入的组 语句:"groups <用户名>"
groups redis
切换用户当前的组身份
--改变群组 语句:"newgrp <组名>"
newgrp linux