用户分类与管理
用户UID和GID
- UID
用户ID,相当于身份证,在系统中是唯一的 - GID
组ID,相当于户口本,用户组的唯一标识符
Linux系统用户分类
- 超级用户 root
UID=0,拥有最高权限、 - 普通用户
C7:UID>=1000,C6:UID>=500
能登录系统,只能操作自己目录的内容 - 虚拟用户
C7:UID 1~999,C6:UID 1~499
无法之间创建,系统自身拥有,用来完成特定任务,不能登录系统
常见的用户管理命令
id命令
- id
查看当前用户的信息
- id 用户名
查看指定用户的信息
su命令
- su 用户名
切换指定用户,普通用户切换到root用户需要密码 - su - 用户名
切换到用户时,包含切换用户的环境变量
bash-4.2$故障
切换用户时,切换到的用户缺少环境变量(bash配置文件)
- 解决方法
ctrl+d退出用户,复制模板配置文件到缺少环境变量的用户的家目录下,重新切换用户即可
cp /etc/skel/.bash* /home/用户名/
sudo命令
- sudo 要执行的命令
普通用户提取 - 执行过程
读取/etc/sudoers,查看使用的用户是否有运行sudo的权限
whoami命令
- whoami
显示当前用户名
passwd命令
- passwd 用户名
root用户修改用户密码,centos普通用户提权也无法修改密码
useradd命令
- useradd -d 用户主目录 [-m] 目录名
例useradd -d /home/git -m git,指定用户主(家)目录添加新用户,如目录不存在,添加-m参数可创建该目录 - useradd 用户 -g 用户组
添加用户并指定用户所属用户组 - useradd -s shell环境路径
添加用户并指定shell环境 - useradd 用户名 -G 用户组1,用户组2
指定用户所属附加组,可所属多个附加组 - useradd -u uid号 [-o] 用户名
添加用户并指定uid号,添加参数-o允许用户uid可以相同
userdel命令
- userdel -r 用户名
删除指定用户和其目录 - userdel 用户名
删除指定用户,不删除其目录
更改用户密码
- echo 密码|passwd --stdin 用户名
通过管道符修改用户密码