Skip to content

权限之用户与用户组

Linux是一个多用户操作系统,支持多用户同时登录完成想要的工作,可以为不同用户分配不同的权限,以完成不同的任务

Linux把用户分配到不同的组里,然后给组分配不同的权限

r:读

w:写

x:执行

-:没有权限

比如 -rwxr-xr-x. 1 root root

​ (文件个数) 用户 用户组

第一个字符-表示是一个文件,d,表示目录

然后接下来是每三个字符一组

第一组字符,表示文件所拥者的权限

第二组字符,表示用户组权限

第三组字符,表示其他用户权限

文件拥有者的权限为 rwx :读写执行

用户组权限 r-x:读,执行

其他用户权限 r-x:读,执行

练习题
-rw--wx---   1 mysql1  mysql
mysql用户组中包含mysql1  mysql2用户

mysql1有什么权限?
	用户权限+组权限 = rw- -wx  
	综合一下为读,写,执行
mysql2有什么权限?
	由于文件不属于mysql2,但是在同一个组下,所以
	权限 = 组权限 = -wx 写和执行
ftp1有什么权限?
	ftp1 属于其他用户
	则 权限 = 其他用户权限 = --- 无权限

查看自己的用户

whoami

查看当前用户所属的组

groups

groups 用户名,
可以查看该用户所属用户组组

sudo usermod -G sudo 用户名
将该用户加入sudo这个组

创建用户

useradd 用户名称
#创建完成后注意修改密码

passwd 用户名
#回车后会提示你输入密码,同样,Linux在输入密码时不会显示密码,确保你没有输
adduser

sudo adderuser 用户名

用户组

创建用户组

groupadd 用户组名称

添加用户组成员

gpasswd -a 用户名 用户组名
#注意创建完用户,用户会自己成立一个用户组,名称就是用户名称

添加管理员

gpasswd -A 用户 用户组名

删除用户

userdel -r 用户名

使用了-r
会将该用户的工作目录一并删除,如果不添加,则会在/home 目录会该用户保留工作目录

删除用户组

groupdel 

如果要删除的用户组仍存在某些用户,则必须要删除这些用户,才能删除用户组

切换用户

su 用户名

使用su切换用户之后,使用who am i 命令查看后,任然是显示的最开始的用户名,而用whoami 则显示的是当前登录的用户9T8dUk2U

权限分配

修改文件权限(chmod)

r = 4 ;w = 2 ; x = 1
例如:
	chmod 777 /home/xiaofei/text
第一个数字为,拥有者权限
第二个数字为,用户组权限
第三个数字为,其他用户权限
使用ll指令查看为
-rwxrwxrwx.

#注意 每一个权限字母的位置是固定,并且文件路径使用绝对路径

给sh文件添加可执行权限
chmod +x *.sh

更改文件的所有者(chown)

#只有系统中的管理员才有这个权限

chown 用户 文件或者目录

#使用绝对路径

更改文件的用户组(chgrp)

chgrp 用户组 文件或目录

#使用绝对路径