一,Linux组基本介绍
介绍:
-
在 Linux 中的每一个用户必须属于一个组,不能独立于组外。
-
在 Linux 中每个文件有,所有者,所在组,其他组的概念
1.1 文件/目录的所有者
-
查看文件的所有者
ls -ahl -
改变文件所有者
chown 用户名 文件名
1.2 文件/目录的所在组
当某个用户创建了一个文件以后,这个文件的所在组就是该用户的所在组
-
修改文件的所在组
chgrp 组名 文件名
1.3 其他组
除文件的所有者和所在组的用户外,系统的其他用户都是文件的其他组。
1.4 改变用户所在组
usermod -g 新组名 用户名字
usermod -d 目录名 用户名 改变该用户登录的初始目录 #用户需要有进入到新目录的权限
二,rwx权限
2.1 权限的基本介绍
ls -l:中显示的内容如下:
-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc
2.2 -rwxrw-r--
一共有十位。
-
第 1 位确定的是文件的类型 (d,-,l,c,b)(-rwxrw-r--)
-
l:链接,相当于 windows 的快捷方式 -
d:目录,相当于 windosw 的文件夹 -
c:字符设备文件,鼠标,键盘 -
b:是快设备,比如硬盘 -
-:是普通文件,如 a.tx
-
-
第 2-4 位确定所有者(该文件的所有者) 对该文件拥有的权限 (-rwxrw-r--)
-
第5-7 位确定所文件的所属组对该文件的权限 (-rwxrw-r--)
-
第8-10 位确定其他用户对该文件的权限 (-rwxrw-r-)
2.3 rwx权限详解释
- rwx作用到文件
[r]代表可读(read):可以查看,读取[w]代表可写(write):可以修改,但是不可以删除该文件,删除一个文件的前提是拥有该文件所在目录的写权限。[x]代表可执行(execute):可以被执行
- rwx作用到目录
[r]代表可读(read):可以读取,可以用ls查看目录内容[w]代表可写(write):可以修改,对目录内创建+删除+重命名[x]代表可执行(execute):可以进入该目录,比如cd
如果目录中无 r 权限 但是 目录中的文件有 rwx 权限,即使我们无法 ls 查看目录中文件,我们也可以对其中文件进行操作。
2.4 其他参数
-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc
-
rwx 后面的数字 1
-
如果是文件,就是硬链接数
硬链接相当于备份,不过和备份不同的是,你修改硬链接的文件,源文件也会跟着修改,但你删除其中一个,另一个不受影响。
-
如果是目录,就是子目录数
-
-
第一个 root:所属用户
-
第二个 root:所属用户组
-
1213:文件大小, 单位字节
-
Feb 2 09:39:最后修改日期
-
abc:文件名
三,修改权限
3.1 修改文件权限
通过chmod指令,可以修改文件或目录的权限
注意:
-
g:所有组 -
o:其他人 -
a:所有人 -
u:所有者 -
第一种方式:通过符号变更权限
chmod u=rwx,g=rx,o=x 文件/目录名 #给文件/目录的所有者赋予rwx权限,所在组赋予rx权限,其他赋予x权限 chmod o+w 文件/目录 名字 #给文件/目录 其他用户赋予w的权限 chmod a-x 文件/目录名 #给文件/目录的所有人去掉x权限 -
第二种方式:通过数字变更权限
r=4w=2x=1rwx=4+2+1=7chmod 751 文件/目录名 #就相当于 chmod u=rwx,g=rx,o=x 文件/目录名
3.2 修改文件所有者-chown
-
修改文件所有者
chown 新所有者名 文件/目录名 -
修改文件所有者和所在组
chown 新所有者:新所在组 文件/目录名 -
如果是目录,想让目录下所有子文件也一起修改
chown -R 新所有者:新所在组 文件/目录名
3.3 修改文件所在组-chgrp
-
修改文件 / 目录 所在组
chgrp 新所在组 文件/目录 -
修改目录和目录下面所有子文件的所在组
chgrp -R 新所在组 文件/目录