权限之用户与用户组
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 用户组 文件或目录
#使用绝对路径