修改文件权限的linux命令Centos7修改⽂件夹权限和⽤户名⽤户组
Linux系统下经常遇到⽂件或者⽂件夹的权限问题,或者是因为⽂件夹所属的⽤户问题⽽没有访问的权限。根据我⾃⼰遇到的情况,对这类问题做⼀个⼩结。
在命令⾏使⽤命令“ll”或者“ls -a”,可以查看⽂件或者⽂件的权限:
1 -rw-r--r--. 1 root root 6 Nov  916:4
其中“-rw-r--r--”表⽰权限,⼀共有⼗个字符。
第⼀个字符,如果是“-”则表⽰是⽂件,如果是“d”则表⽰是⽬录(directory)。
后⾯9个字符每3个字符⼜作为⼀个组,则有3组信息(“rw-”、“r--”、“r--”),分别表⽰所属⽤户本⾝具有的权限、所属⽤户的⽤户组其他成员的权限、其他⽤户的权限。
每⼀组信息如“rw-”,每⼀个字符都有它⾃⼰的特定含义且先后位置是固定的,其中r是读权限、w是写权限、x是可执⾏权限、-没有对应字符的权限。Linux⾥⾯对这些字符设置对应的数值,r是4,w是2,x是1,-是0。上⾯的“rw-”则是6(=4+2+0),所以最开始a.txt的权限是644,属于root⽤户组的root⽤户。
1.修改权限chmod
1.1改⽂件的权限
我想修改⽂件a.txt的权限为755,则为:
1 [root@master my]# ll
2 -rw-r--r--. 1 root root 6 Nov  916: #改之前权限是644
3 [root@master my]#
4 [root@master my]# ll
5 -rwxr-xr-x. 1 root root
6 Nov  916: #改后权限是755
1.2改⽂件夹的权限
改之前:
1 [root@master test1]# ll
2 drw-r--r--. 2 root root 4096 Nov  916:42 my #改之前⽂件夹my的权限是644
3 [root@master test1]# ll my/
4 -rwxr-xr-x. 1 root root 6 Nov  916: #改之前⽂件夹my的⾥⾯的⽂件权限是755
1.2.1只改变⽂件夹本⾝权限,不改动⼦⽂件(夹)
执⾏命令修改my⽂件夹权限为600:
1 [root@master test1]# chmod600 my/  #修改命令
2 [root@master test1]# ll
3 drw-------. 2 root root 4096 Nov  916:42 my #改my⽂件夹之后权限是600
4 [root@master test1]# ll my/
5 -rwxr-xr-x. 1 root root
6 Nov  916: #改my⽂件夹之后⾥⾯的⽂件权限还是755,没有变化
1.2.2改变⽂件夹及⼦⽬录下所有⽂件(夹)权限
执⾏1.2.1步骤之后,my⽂件夹和⾥⾯的⽂件权限都是不同的。现在递归修改,都改为统⼀的权限777:
1 [root@master test1]# chmod -R 777 my/ #修改命令,注意中间是⼤写的R,不是⼩写
2 [root@master test1]# ll
3 drwxrwxrwx. 2 root root 4096 Nov  916:42 my #修改后my⽂件夹权限是777
4 [root@master test1]# ll my/
5 -rwxrwxrwx. 1 root root
6 Nov  916: #修改后⾥⾯的⽂件变为了777
2.修改所属⽤户和⽤户组chown
这个和修改⽂件夹的权限是基本相同的,只不过是把chmod命令换成了chown。
2.1修改⽂件所属⽤户和⽤户组
修改a.txt⽂件所属⽤户(jay)和⽤户组(fefjay):
1chown jay: #修改⽂件所属⽤户为jay,所属⽤户组为fefjay
2.2修改⽂件夹所属⽤户和⽤户组
1.2.1只改⽂件夹本⾝所属⽤户和⽤户组,不改⼦⽂件(夹)
仅修改⽂件夹my本⾝所属⽤户(jay)和⽤户组(fefjay):
1chown jay:fefjay my #修改⽂件所属⽤户为jay,所属⽤户组为fefjay
2.2.2改变⽂件夹及所有⼦⽂件(夹)所属⽤户和⽤户组
递归修改⽂件夹my及包含的所有⼦⽂件(夹)的所属⽤户(jay)和⽤户组(fefjay):1chown -R jay:fefjay my #修改⽂件所属⽤户为jay,所属⽤户组为fefjay
3.总结
修改单个⽂件(夹)就⽤命令:
1 chown或chmod    “权限”或“名:组”    ⽂件(夹)名称
修改⽂件夹及⼦⽂件夹所有⽂件就⽤命令:
1 chown或chmod  -R  “权限”或“名:组”    ⽂件夹名称