[Linux]用户与组管理指令
一、用户管理
用户家目录:/home/目录下有各个创建的用户对应的家目录,当用户登录时,会自动进入到自己的家目录。
1.用户登录和注销
用户登录普通用户后,可通过 su-用户名切换管理员 ;输入logout可注销用户。
2.用户添加
useradd 选项 用户名
选项:
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
3.删除用户
userdel username 删除用户
userdel -r username 删除用户及其家目录
4.查询用户
id 用户名 查询用户信息,当用户不存在时,返回无此用户
5.修改用户
usermod -g 用户组 用户名
usermod -d 目录名 用户名 改变该用户登录的初始目录
6.用户口令
passwd 选项 用户名
选项:
-l 锁定口令,即禁用账号。
-u 口令解锁。
-d 使账号无口令。
-f 强迫用户下次登录时修改口令
7.切换用户
su - 用户名
PS:高权限用户切换到低权限用户时,不用输入密码
exit 回到原来的用户
whoami/who am i 查看当前用户
二、组管理
1.增加组
groupadd 选项 用户组
选项:
-g GID 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
2.删除组
groupdel 组名
3.修改组的属性
groupmod 选项 用户组
选项:
-g GID 为用户组指定新的组标识号。
-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n 新用户组 将用户组的名字改为新名字
4.用户切换组
用户可以在登录后,使用命令newgrp切换到其他用户组
newgrp 新组名
三、用户配置文件
1.用户配置文件(用户信息): /etc/passwd
/etc/passwd 中一行记录对应着一个用户,每行记录又被冒号(:)分隔为7个字段,其格式和具体含义如下:
用户名:口令:用户标识号:组标识号::(::为注释性描述)注释性描述:家目录:登录Shell
2.组配置信息(组信息): /etc/group
组名:口令:组标识号:组内用户列表
3.口令配置文件(密码和登录信息,是加密的): /etc/shadow
登录名:加密口令:最后一次修改的时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
四、批量添加用户
1.编辑用户文本文件:
每一列按照/etc/passwd密码文件的格式书写,要注意每个用户的用户名、UID、宿主目录都不可以相同,其中密码栏可以留做空白或输入x号。
如:
user001::600:100:user:/home/user001:/bin/bash
user002::601:100:user:/home/user002:/bin/bash
2.以root身份执行命令 /usr/sbin/newusers,从刚创建的用户文件user.txt中导入数据,创建用户
newusers < user.txt
执行命令 vipw 或 vi /etc/passwd 检查 /etc/passwd 文件是否已经出现这些用户的数据,并且用户的宿主目录是否已经创建。
3.执行命令/usr/sbin/pwunconv
将 /etc/shadow 产生的 shadow 密码解码,然后回写到 /etc/passwd 中,并将/etc/shadow的shadow密码栏删掉。
4.编辑每个用户的密码对照文件
例文件 passwd.txt 内容如下:
user001:密码
user002:密码
5.以root身份执行命令 /usr/sbin/chpasswd
创建建用户密码,chpasswd 会将经过 /usr/bin/passwd 命令编码过的密码写入 /etc/passwd 的密码栏。
chpasswd < passwd.txt
6.确定密码经编码写入/etc/passwd的密码栏
执行命令 /usr/sbin/pwconv 将密码编码为 shadow password,并将结果写入 /etc/shadow
pwconv