用户帐号管理
基于帐号的访问控制
在Linux内必须有帐号密码才能登入Linux系统
UID
用户帐号分为
超级用户root,帐号0、系统用户,帐号1-999、普通用户,帐号>1000
帐号用于区分权限不用于登录
GID
组帐号
从0-60000
分组
基本组
附加组
一个用户必须有一个组,用户必须有且只有一个基本组,可以没有附加组。当你创建一个新用户时会自动创建一个跟用户同名的基本组这个组会随着这个用户的消失而消失。
用户的查询
用户命:密码占位符:UID:基本组的GID:描述信息:家目录路径:解释器程序
Linux用户信息一般在/etc/passwd
用户格式如上以共七位以‘ : ’分割
id:查询用户的 UID 、GID一共属于那些组
-u:指定UID
-d:指定用户家目录(注意不要事先创建家目录,不能嵌套创建家目录)
-G:指定附加组
-g:指定基本组
-s:指定用户的登录解释器,默认为/bin/bash ,/sbin/nologin
:禁止用户登录操作系统
groupadd
:创建组
修改密码
passwd:修改用户密码
usermod:修改已经存在的用户
-l:改名字 例如usermod -l 新名字 原名字
-s:修改解释器 例:usermod -s 新路经 用户名
-d:修改用户家目录但不会新建
-md:移动家文件
-u:修改UID
-G:修改附加组覆盖式修改
su:临时切换用户 exit退出
修改密码
root可以随意修改密码 命令passwd +用户名
普通用户只能修改自己的密码,命令paaswd
并且不能过于简单。
非交互式修改密码root使用
echo 新密码 | passwd --stdin 用户名
Linux的密码存在 /etc/shadow
格式
用户名:加密后的密码:上一次修改密码的日期距离1970年1月1日有多少天:最小使用天数:最大使用天数:密码过期警告天数:帐号失效时间:保留字段
删除用户
userdel [-r] 用户名
添加-r选项,家目录/用户邮件地址也一并删除
组的管理
/etc/group 文件夹内保存组账号的基本信息
> groupadd gest
> grep gest /etc/group
gest:x:1005:
回写一共四个字段
字段1:名称
字段2:密码
字段3: GID
字段4:本组成员用户列表
/etc/gshadow 文件内保存的是组账号管理信息
> grep gest /etc/gshadow
gest:!::
也分为四个字段
字段1:名称
字段2:加密后的密码字符串
字段3: 本组管理员列表
字段4:本组成员用户列表
添加组帐号
groupadd
gpasswd
-A:定义`组管理员列表
-a:添加组成员
-d:删除组成员
-M:定义组成员列表
删除组
groupdel