用户身份与文件权限
用户身份,linux系统中每一个用户都有唯一的UID号
管理员UID为0:系统的管理员用户。
系统用户UID为1-999:
普通用户UID从1000开始:是由管理员创建的普通用户的UID。
useradd命令
用于创建新的用户,格式 useradd [选项] 用户名
使用该命令创建用户时,默认的用户家目录会存放在/home目录中,默认的shell解释器是/bin/bash,默认也会创建一个与该用户同名的用户组。
参数设置
-d:指定用户的家目录
-e:账户的到期时间,格式YYYY-MM-DD
-u:指定该用户的默认UID,不可与其他用户UID重复
-g:指定一个初始的用户基本组,必须已存在
-G:指定一个或多个扩展用户组
-N:不创建与用户同名的基本用户组
-s:指定该用户的默认shell解释器
[root@linux ~]# useradd jack
[root@linux ~]# cd /home/
[root@linux home]# ll
总用量 0
drwx------. 2 andy andy 62 5月 20 19:59 andy
drwx------. 2 barry barry 62 5月 20 19:59 barry
drwx------. 2 carl carl 62 5月 20 19:59 carl
drwx------. 2 duke duke 62 5月 20 19:59 duke
drwx------. 2 eric eric 62 5月 20 19:59 eric
drwx------. 2 gerrge gerrge 62 5月 20 19:59 gerrge
drwx------. 2 jack jack 62 5月 24 19:21 jack
drwx------. 2 wmy wmy 62 4月 22 22:25 wmy
[root@linux home]# id jack
uid=1007(jack) gid=1007(jack) 组=1007(jack)
groupadd命令
用于创建用户组,格式 groupadd [选项] 群组名
正常会把多个用户放到同一个群组中以针对一类用户统一安排权限
usermod命令
用于修改用户的属性,格式 usermod [选项] 用户名
Linux系统中创建的用户信息都保存在/etc/passwd文件中,我们可以直接在该文件中修改用户的参数配置,也可以使用usermod命令修改。
参数设置
-c:填写用户账户的备注信息
-d -m:参数-d 和 -m 连用,可重新指定用户的家目录并自动把旧的数据转移过去
-e:账户的到期时间,格式YYYY-MM-DD
-g:变更所属用户组
-G:变更扩展用户组
-L:锁定用户禁止登陆系统
-U:解锁用户允许登陆系统
-s:变更默认终端
-u:修改用户UID
[root@linux home]#
[root@linux home]# id jack
uid=1007(jack) gid=1007(jack) 组=1007(jack)
[root@linux home]# usermod -G jackgroup jack # 将用户jack添加到jackgroup用户组中,一个用户可以在多个用户组,-G是新增一个用户组
[root@linux home]# id jack
uid=1007(jack) gid=1007(jack) 组=1007(jack),1008(jackgroup)
[root@linux home]# usermod -g jackgroup jack # -g是修改原有用户组
[root@linux home]# id jack
uid=1007(jack) gid=1008(jackgroup) 组=1008(jackgroup)
passwd命令
该命令用户修改用户密码,过期时间,认证信息等,格式 passwd [选项] [用户名]
普通用户只能用该命令修改自身的系统密码,管理员有权限修改其他所有人的密码并且不需要验证。
参数设置
-l:锁定用户
--u:解锁用户
--stdin:允许通过标准输入修改用户密码,如echo “新密码” | passwd --stdin 用户名
-d:使该用户可用空密码登陆系统
-e:强制用户在下次登陆时修改密码
-s:显示用户的密码是否被锁定,以及密码采用的加密算法名称
[root@linux home]# passwd
更改用户 root 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@linux home]# passwd jack
更改用户 jack 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
userdel命令
用于删除用户,格式 userdel [选项] 用户名
在执行删除操作时,默认会把用户的家目录保留下来,如果确认此用户不会再使用可以使用-r参数删除。
参数设置
-f:强制删除用户
-r:同时删除用户及用户家目录
[root@linux home]# id jack
uid=1007(jack) gid=1008(jackgroup) 组=1008(jackgroup)
[root@linux home]# userdel -r jack
[root@linux home]# id jack
id: jack: no such user