目录
一、概述
Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须先向系统管理员神申请一个账号,然后以这个账号的身份进入系统。
在Linux系统中,一个用户属于一个组。
当我们创建一个用户后,默认会在 /home/XXX 创建一个和用户名相同的目录,该目录就是用户家目录。
当一个用户登录后,默认会切换到 /home/XXX 下。
一个用户默认是不能进入到其他用户目录的。
用户权限体现在对文件的操作。
二、基本操作
1.添加用户
useradd 用户名
当创建用户成功后,会自动地创建和用户名同名的家目录【/home/Billie】。
也可以通过 useradd -d 指定目录 新的用户名 ,给新建的用户指定家目录。
2.指定/修改密码
passwd 用户名 //如果没有写用户名,则给当前登录的用户修改密码
该操作需要在 root 用户下进行操作。
3.删除用户
userdel用户名 //删除用户但保留家目录
userdel -r 用户名 //删除用户且不保留家目录
一般情况会保留家目录。
4.查询用户信息
id 用户名
输出的信息中,uid为用户id,是唯一的;root为用户名;gid为用户所在组的id;groups中的root为组名。
当前用户不存在时,则返回无此用户。
5.切换用户
在Linux系统中,如果用户权限不够 ,则需要通过 su - 指令,切换到更高权限的用户,如root。
su - 切换用户名 // 获得用户的环境变量及执行权限
su切换用户名 // 只能获得用户的执行权限,不能获得环境变量
如,切换到root用户,su - root
6.查看创建了那些用户
cat /etc/passwd
7.查看登录用户信息
whoami //显示自身用户名称
who am i //显示登录用户的用户名以及登录时间
8.设置普通用户具有root权限
打开配置文件 vi /etc/sudoers
修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行。
Allow root to run any commands anywhere
root ALL=(ALL) ALL
atguigu ALL=(ALL) ALL
或者配置成采用 sudo 命令时,不需要输入密码
Allow root to run any commands anywhere
root ALL=(ALL) ALL
atguigu ALL=(ALL) NOPASSWD:ALL
9.用户组
系统可以对有共性的用户进行统一管理。用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对 /etc/group文件的更新。
(1)新增组
groupadd 组名
(2)增加用户是直接为其添加组
useradd -g 用户组 用户名
(3)删除组
groupdel 组名
删除的前提是这个组没有用户,否则无法删除
(4)修改用户的组
usermod - g 新的组名 用户名
10.修改组
groumod -n 新组名 老组名
11.用户和组的相关文件
(1)/etc/passwd 文件
用户(user)的配置文件,记录用户的各种信息。
每行的含义:用户名:口令:用户标识号:组标识号:注释描述:主目录:登录 Shell
(2)/etc/shadow 文件
口令的配置文件
每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:保留
(3)/etc/group 文件
组(group)的配置文件,记录Linux包含的组的信息。
每行含义:组名:口令:组标识号:组内用户列表