一. 用户分类
管理员: root,0
普通用户
系统用户: 不可交互登录, 给程序使用, 一般 1-499;1-999
登录用户: 可以交互式登录一般 500+;1000+
组分类 (group)
管理员组: root,0
普通组
系统组: 1-499;1-999
普通组: 500+;1000+
组类别
用户必须且只有一个主组, 一般默认情况下, 新建一个用户就有一个和它相同名字的组, 一个用户可以有零个或多个附加组.
二. 用户和组的配置文件
/etc/passwd: 用户及其属性信息 (名称, UID, 主组 ID 等)
/etc/group: 组及其属性信息
/etc/shadow: 用户密码及其相关属性
/etc/gshadow: 组密码及其相关属性
passwd 文件格式:
shadow 文件格式:
/etc/group 组属性和 / etc/gshadow 组密码属性类似于用户密码属性, 这里就不在复述了.
文件及对应的命令操作.
- vipw :/etc/passwd
- vigr :/etc/group
- vipw -s :/etc/shadow
- vigr -s :/etc/gshadow
ps: 这几个命令都有语法检查功能
三. 用户和组管理命令
1. 用户管理命令
useradd(选项)(参数): 创建用户
usermod(选项)(参数): 用户属性修改
userdel(选项)(参数): 删除用户
useradd:
-c < 备注 >: 备注文字会保存在 passwd 的备注栏位中
-d < 登入目录 >: 指定用户登入时的启始目录;
-D: 变更预设值;
-e < 有效期限 >: 指定帐号的有效期限;
-f < 缓冲天数 >: 指定在密码过期后多少天即关闭该帐号;
-g < 群组 >: 指定用户所属的群组;
-G < 群组 >: 指定用户所属的附加群组;
-m: 自动建立用户的登入目录;
-M: 不要自动建立用户的登入目录;
-n: 取消建立以用户名称为名的群组;
-r: 建立系统帐号;
-s<shell>: 指定用户登入后所使用的 shell;
-u<uid>: 指定用户 id.
usermod
-c < 备注 >: 修改用户帐号的备注文字;
-d < 登入目录 >: 修改用户登入时的目录
-e < 有效期限 >: 修改帐号的有效期限;
-f < 缓冲天数 >: 修改在密码过期后多少天即关闭该帐号;
-g < 群组 >: 修改用户所属的群组;
-G < 群组 >; 修改用户所属的附加群组;
-l < 帐号名称 >: 修改用户帐号名称;
-L: 锁定用户密码, 使密码无效;
-s<shell>: 修改用户登入后所使用的 shell;
-u<uid>: 修改用户 ID;
-U: 解除密码锁定.
userdel
-f: 强制删除用户, 即使用户当前已登录;
-r: 删除用户的同时, 删除与用户相关的所有文件.
新建用户文件和命令
- /etc/default/useradd
- /etc/skel/*
- /etc/login.defs
newusers passwd 格式文件 批量创建用户
chpasswd 批量修改用户口令
2. 用户组管理命令
groupadd(选项)(参数): 创建一个新的组
groupmod(选项)(参数): 修改组名称及标识
groupdel(参数): 删除组
groupadd
-g: 指定新建工作组的 id;
-r: 创建系统工作组, 系统工作组的组 ID 小于 500;
-K: 覆盖配置文件 "/ect/login.defs"
-o: 允许添加组 ID 号不唯一的工作组.
groupmod
-g < 群组识别码 >: 设置欲使用的群组识别码;
-o: 重复使用群组识别码;
-n < 新群组名称 >: 设置欲使用的群组名称.
更改和查看组成员
- groupmems [options] [action]
- options:
-g, --group groupname 更改为指定组 (只有 root)
actions:
-a, --add username 指定用户加入组
-d, --delete username 从组中删除用户
-p, --purge 从组中清除所有成员
-l, --list 显示组成员列表
groups [OPTION].[USERNAME]... 查看用户所属组列表
来源: http://www.bubuko.com/infodetail-3062929.html