linux系统的用户管理
分类:
1.超级用户:具备超级管理权限(其权限不受系统限制)
2.普通用户: 具备普通管理权限(权限受限,但通过超级用户授权)
超级用户指的是:root
普通用户分成两类:
1,系统用户:该用户主要给系统应用,服务,程序使用
2,真实用户:该类用户有管理员创建,用于维护人员操作系统
linux系统通过uid(用户编号)来区分用户身份
uid userid 用户编号:具有唯一性的特点
查询命令:id USERNAME
0为root(超级管理)
非0为普通用户
其中:
1-200 为保留用户
201-999为系统用户(红帽6是前是1-499)
1000+为真实用户(红帽7 1000-6w 红帽6是500-6w)
题外话:
计算机界最大的整数是65535
用户最多能创建到:4294967294
2^32-2
vim /etc/login.defs 真实用户uid的范围(大约在34行)
vim /etc/passwd 用户信息文件路径
添加用户:
useradd USENAME
指定用户的uid
useradd -u UID USERNAME
useradd -r UID USERNAME(推荐)
删除用户:
userdel USERNAME 仅删除用户
userdel -r USERNAME 删除用与其家目录
修改用户:
usermod -l NEWNAME OLDNAME 改名
usermod -u UID USERNAME 修改id
用户密码
passwd 修改当前用户密码(如果是非root用户,需要输入用户的原密码)
passwd USERNAME 修改指定用户密码,该命令仅root 可用
passwd -d USERNAME 删除用户密码,仅root可用
passwd -l USERNAME 锁定用户,仅root可用
passwd -u USERNAME 解锁用户,仅root可用
passwd -s USERNAME 查询用户密码状态,仅root可用
echo"password"| passwd --stidin USENAME
非交互设置用户密码(可以一次到位)
配置文件:
用户信息配置文件:vim /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
penndu:x:1000:1000:Penn Du:/home/penndu:/bin/bash
分割符号::
username 用户名称,用于登录,不允许用数字开头(实际上可以用,红帽6可以用数字)不建议使用大写的字母(为了不混淆),不允许使用特殊的符号 ^_^
x 密码,如果该位为空,则本地登录时无需验证密码(但不可以远程登录)如本位不为空,则系统会到/etc/shadows中查找该用户的密码
uid 用户编号,0为超级用户,非0都是普通用户,理论不允许id相同
gid 初始群组,与windows系统不用的是,windows是通过将用户添加到管理员群组内赋予权限,而linux需要将用户的uid改为0
common 用户描述
homedir 用户的家目录,需要指定绝对路径
shell 用户的shell,代表用户可以执行哪些命令(与用户的权限无关)
用户管理命令
useradd 添加用户
语法:useradd USERNAME
useradd -u UID username 指定用户的id,如不指定,则会在最后的id上加1
useradd -ou UID username 指定用户的uid已经被使用,系统会提示错误,这个时候可以使用-o(与其他用户使用相同id o(over)覆盖前一个已有ID)
useradd -g GID username 指定用户初始群组,指定的id必须已经存在
useradd -G GID username 指定用户附属群组,指定的id必须已经存在
useradd -c “COMMON” username 指定用户描述,如果描述中有空格,需要通过引号括起
useradd -d /PATH/ username 指定用户的家目录,路径要写绝对路径(该目录不需要提前创建)
useradd -s /PATH/FILENAME username 指定用户的shell
useradd -M username 不自动创建家目录
“”可以消除用户间的空格,用来创建多个用户
vim /etc/default/useradd 用户添加默认文件
删除
userdel 删除用户
语法:userdel username
userdel -r username 删除用户及家目录
WHO
修改
usermod 修改用户
语法:usermod [选项] username
usermod -u UID username 修改用户的id
usermod -l NEWNAME OLDNAME 修改用户名称
usermod -g GID username 修改用户初始群组
usermod -G GID username 修改用户附属群组
usermod -c “COMMON” username 修改用户描述
usermod -d /PATH/ username 修改用户的家目录
usermod -s /PATH/FILENAME username 修改用户的shell
查找
id 查看用户id等信息
语法:id username
群组管理
群组分类
1,超级用户群组:名称为root的群组,且gid(group id群组编号)为0,超级用户群组并不具备管理权限,只是方便群组划分
2,系统用户群组:同系统用户相同,是为系统程序,服务提供群组划分
3,真实用户群组:同真实用户一样,是为维护人员,提供群组划分,如果该群组的名称,与用户名相同,我们可称之为私有群组
群组操作命令
groupadd 群组添加
语法:groupadd 群组名称 添加一个群组
groupadd -g 1000 nimei 用指定的gid添加群组nimei
groupadd -r nimei 指定添加的群组为系统群组
群组信息文件路径:/etc/group
root:x:0:root
penn:x:500:
分割符号::
groupname:存放群组名称,如果与用户名同名,一般为私有组
x:代表密码,所以说群组也是可以设置密码的,密码文件保存在/etc/gshadow
gid:不限制多用户使用同一个gid
members:群组成员,如有多个成员,需要使用英文逗号隔开
groupmod 群组修改
语法:groupmod -n mimi nimei 将nimei这个群组更名为mimi
groupdel 群组删除
语法:groupdel 群组名称 删除一个群组
用户和组
原文:https://www.cnblogs.com/lichenghong/p/10237128.html