当前位置:
文档之家› 第十一讲 Linux用户和群组管理
第十一讲 Linux用户和群组管理
新增用户
useradd [-u UID] [-g GID] [-G GID] [-Mm] [-d HOME] [-s shell] [-r] username -u :增加用户时直接为其指定一个特定的 UID -g :后接初始群组的GID -G:后接其他群组的GID -M:强制不建立用户家目录 -m:强制建立用户家目录 -d :指定某目录为用户家目录,而不使用预设值 -s :后接 shell ,默认为/bin/bash -r:创建一个系统账号,通常会使用100以后的UID和GID
删除群组
groupdel groupname
删除名为groupname的群组 删除时要求该群组不是任何用户的初始群组
用户身份切换
避免无心之失对系统造成的损害 用低权限启动系统,减小入侵损害 软件的限制
转换身份指令
su:将user转成root,需要root密码 sudo:不需要root密码,仅以当前普通用户密码 执行一次root权限指令
系统用户查询
who:查询已登录用户 last:查询一个月来用户的登录信息 lastlog:查询用户登录终端和最后登录时间
当一个用户属于多个用户组时,工作的时候到底 以哪个用户组为准呢? 有效群组:用户执行当前指令时所在的群组
群组账号文件
有效群组与初始群组
群组账号切换
使用groups可以查看用户当前所属群组
第一个群组为该用户的有效群组
使用newgrp groupname可以将用户的有效群组切 换为groupname
/etc/passwd :用户(user)的配置文件; /etc/shadow :用户(user)影子口令文件;
与用户组(group)相关的配置文件;
/etc/group :用户组(group)配置文件; /etc/gshadow :用户组(group)的影子口令文件;
用户账号文件
linux中进行账号管理的文件主要有/etc/passwd和 /etc/shadow
密码管理
passwd [-lu] username
-l:将用户username的密码锁定 -u:将用户username的密码解锁
删除用户
userdel [-r] username -r :删除用户的同时也删除其家目录
修改用户
usermod [-degGlsuLU] username
Linux操作系统下的用户分类
普通用户
是为了让使用者能够使用Linux系统资源而建立的; 每个用户都有一个数值,称为UID;
root用户的UID为0,系统用户的UID一般为1~ 499,普通用户的UID为500~60000之间的值
账号系统文件
Linux系统采用纯文本文件来保存账号的各种信息 与用户(user)相关的配置文件;
第十一讲 linux用户和与群组管理
知识点
用户与群组 账号管理 身份切换
用户的管理
Linux是一个多任务、多用户的操作系统, 用户必须拥有一个合法的账号,才能允许不同的 用户从本地登录或远程登录 Linux系统通过账号来实现对用户的访问进行控制
Linux操作系统下的用户分类
转换身份指令
su [-lcm] [username] 用途:一般用户变成root用户
- :将当前用户转换为root,且使用root的环境设置 -l :将当前用户转换为username,同时使用其相关环境设 置 -m :使用当前用户的环境设置值 -c :将后接指令执行一次
eg: su - -c “ls -al"
• 用户主目录 • Shell
用户账号文件
linux中进行账号管理的文件主要有/etc/passwd和/etc/shadow /etc/shadow文件中也是每行一个账号,由9栏组成
• 账号名称:用户的唯一符号名称,与passwd对应 • 密码:经过加密的密码;如果密码栏第一个字符是*或!则表示这 个账号不会用来登录。 • 最近修改密码的日期:从1970/01/01计数 • 密码不可变更天数:为0表示随时可更改 • 密码有效期:需要重新更改的天数,若不在该时间期限内修改密 码,则密码会暂时失效,若时间为99999则表示无需修改密码 • 密码警告期:更改期限前的警告期限,即在密码暂时失效前多少 天给用户失效提示 • 账号宽限期:密码过期的宽限时间,即密码有效期后使用原密码 仍可登录,但若用户一直不更改密码,过了宽限天数后将使该密 码失效 • 账号失效期:到该指定日期后账号不可再用 • 保留字段:用于未来功能扩展
-d :后接用户家目录 -e :账号失效时间,格式是 YYYY-MM-DD -g:后接群组名,用于修改/etc/passwd的第四个字段 -G:后接群组名,用于修改/etc/group的第四栏 -l :后接账号名,用来修改账号名称 -s :后接 Shell ,例如 /bin/bash 或 /bin/csh 等 -u :后接 UID -L :在用户密文前加上一个!,暂时冻结用户密码 -U :将 /etc/shadow 密码栏的 ! 去掉
群组账号文件
/etc/group与/etc/gshadow文件
group中记录了群组与用户账号的对应,每行由群 组名称、群组密码、GID和组成员列表四栏组成
如果想让user成为root用户组的成员该怎么办呢?
在第一行后面加上“,user”
群组账号文件
有效群组与初始群组
初始群组:用户创建时默认生成的群组,记录在 /etc/passwd的第四栏中,无需记录在/etc/group的 第四栏
添加用户
命令:useradd(或adduser)
命令格式:useradd [选项] 用户名
说明:
只有超级用户root才有权使用此命令 使用useradd命令创建新的用户账号后,应利用 passwd命令为新用户设置口令,否则不能登录
每个新增的用户账号都将会保存在/etc/passwd 文件中
新增用户
新增用户
新增用户
新增用户
useradd命令更改的文件有:
/etc/passwd /etc/shadow /etc/group /etc/gshadow /home/username
密码管理
设置不易破解的密码 root可以设置所有账号的密码,user只能设置自 己的 所有的用户在修改自己的密码时,只需直接输入 passwd即可 root具有使用passwd [user]将user的密码改变的 权限
群组账号管理
新增群组:groupadd 删除群组: groupdel 修改群组: groupmod 加密群组: gpasswd
新增群组
groupadd [-g GID] [-r] groupname 新增名为groupname的群组
-g :直接为新建群组指定GID -r:建立系统用户组
群组账号切换
群组账号文件
gshadow文件中记录了群组账号、群组密码(开 头为!表示无法登陆)、群组管理员密码和群组 成员列表 与可以采用两种方式
命令行(Shell)方式 图形界面(GUI)方式
账号管理
新增用户:useradd 删除用户:userdel 修改用户:usermod
修改群组
groupmod [-g GID] [-n new_groupname] groupname -g :修改GID值(慎用) -n :修改群组名称
加密群组
gpasswd groupname 为群组加一个密码 gpasswd [-A user1] [-M user3, user4...] groupname 将群组管理员设为user1,群组成员为user3, user4... gpasswd [-rR] groupname -r:删除群组密码 -R:让密码栏失效,newgrp失效
超级用户
root,它具有一切权限,只有进行系统维护(例如建立用户 等)或其他必要情形下才用超级用户登录,以避免系统出现 安全问题
系统用户
系统正常工作所必需的内建的用户,主要是为了满足相应的 系统进程对文件属主的要求而建立的,系统用户不能用来登 录,如bin、daemon、adm、lp等用户
/etc/passwd中每行代表一个账号的常规信息,每行7栏组成
• 账号名称 • 密码:真正的密文在shadow中,此处只有一个x表示有密码
• UID:0为超级用户、1~99为系统预留账号、100~499为系统 服务账号、500~232-1为一般用户
• GID:群组标识符
• 用户信息说明:可用来写用户的个人信息
转换身份指令
sudo [-u username] command -u: 将当前用户的身份转为username并执行 command指令 只有在/etc/sudoers中设定过的用户可以通过sudo 指令变换为root,该文件使用visudo修改 修改格式:
用户账号 登录主机 = (可以变换的身份) 可以执 行的命令 user ALL=(All) All user ALL=(user1) All