文件权限
当我们使用ls–l命令查看文件时,会列举文件的详尽信息。内容如下:
其中
-rwxrw-r--.代表文件的权限;
1代表文件链接数为1;
sxy表示文件的属主为sxy;
第二个sxy代表文件的属组为sxy;
0代表文件的大小(这儿我们用touch建了一个空文件);
Apr102:20代表文件的最后更改日期;
a代表文件名;
文件的权限是文件的一项重要属性linux学习视频,它可以限定不同用户对该文件的操作,
对于一个文件来说:
r:可读;
w:可写,可编辑或删掉;
x:可以执行;
而对于一个目录:
r:可用ls列举目录内所有文件;
w:可在此目录中创建文件;
x:可以使用cd切换进此目录,也可以使用ls-l查看内部文件详尽信息;
第一个字符代表该文件的类型:文件(-)、目录(d),链接(l)
以后的字符每三个一组
第一组:文件所有者的权限;
第二组:属于该用户组的用户的权限;
第三组:其他用户的权限;
所以,对于这儿的文件a,
属主为sxy,他可以对该文件进行读,写和执行(rwx);
属组为sxy,属于该组用户的权限是读和写(rw);
其他用户只有读权限(r);
文件的权限也可用十补码或二补码数字表示:
0000---
1001--x
2010-w-
3011-wx
4100r--
5101r-x
6110rw-
7111rwx
修改文件的权限
文件的属主或则root可以使用chmod命令对文件的权限进行修改。
更改三类用户(user,groupandother)的权限:
例如我们想让文件a对三类用户都具有读写和执行权限,可以使用以下命令linux更改文件用户组linux更改文件用户组,
chmod777a
我们新建一个文件b,它的权限是-rw-rw-r--.,我们想让a的权限显得和b一样,可以使用--reference选项:
chmod–reference=ba
如果我们想改变某个目录和目录下所有文件的权限,可以使用-R选项,如test目录下有两个文件,它们的权限为:
我们使用chmod–R来改变test文件夹的权限,之后查看test下的文件
chmod–R755test
结果显示文件的权限也都弄成了755。
更改某类用户或个别用户的权限:
假如我们想要更改某类用户的权限,可以使用chmodu=rwxfile类似的格式。
比如我们只想把a文件属主的权限改为可读,其他不变,可以使用以下命令:
chmodu=ra
类似的,我们改变属主和属组的权限为rwx,可以使用以下命令:
chmodug=rwxa
更改某类用户的某位权限:
我们还可以更改某类用户的某位权限,例如我们想要消除group的执行权限,则
chmodg-xa
我们再把group的执行权限加上,则
chmodg+xa
我们可以使用类似的命令改变属主或则其他用户的某一位或多位的权限。
修改文件的属主和属组
管理员可以修改某个文件的属主,使用chown命令。
chown:改变文件属主
格式:chownUSERNAMEfile,...
-R:递归更改目录及其内部文件的属主;
--reference=/path/to/somefilefile,...:将文件属主属组信息设置为与指定文件一致;
比如:a文件原本属于sxy,我们想把它的属主变为sxy1,则可以使用以下命令:
chownsxy1a
查看一下,文件的属主变为了sxy1。
若要同时改变属主属组,可以使用下述格式的命令:
chownUSERNAME:GRPNAMEfile...
比如:我们将a文件的属主改为sxy1linux命令ls,属组改为sxy1,则使用以下命令:
chownsxy1:sxy1a
chgrp可以单独改变文件属组,用法与chown类似。