Linux是一种多用户系统,不同的用户处于不同的地位,拥有不同权限.我们可以根据需求变更目录或者文件的所属用户与权限。
1.查看文件或者目录的权限
ls [option]
- -l 列出文件的属性与权限
- -a 列出所有文件,包括隐藏文件
- -d 列出目录
[root@centoscc cc]# ls -l total 12 -rw-r--r--. 1 cc cc 26 Dec 20 16:45 cc -rwx--x--x. 1 cc1 test1 4 Dec 20 15:46 cc1 -rw-r--r--. 1 cc2 cc 4 Dec 20 15:53 cc2 drwxr-xr-x. 2 cc cc 6 Dec 6 17:10 Desktop drwxr-xr-x. 2 cc cc 6 Dec 6 17:10 Documents drwxr-xr-x. 2 cc cc 6 Dec 6 17:10 Downloads drwxr-xr-x. 2 cc cc 6 Dec 6 17:10 Music drwxr-xr-x. 2 cc cc 6 Dec 6 17:10 Pictures drwxr-xr-x. 2 cc cc 6 Dec 6 17:10 Public drwxr-xr-x. 2 cc cc 6 Dec 6 17:10 Templates drwxr-xr-x. 2 cc cc 6 Dec 6 17:10 Videos
从左往右,以空格分隔为一组,分别是:
1.文件类型和读写权限:
- d表示目录,-表示当前是文件,l表示当前是链接文档;b装置文件里可以存储的接口设备;c则是装置文件里的串行端口设备,例如键盘鼠标
- rwx,分别表示读/写/可执行权限,每三位一组,权限固定按rwx的顺序排列,如无则该位置用-替代,分别表示用户权限/用户组权限/其他用户权限,例如-rw-r--r--表示这是一个文件,用户可以rw,同组成员可以r,其他用户可以r
- 强链接数
- 所属用户
- 所属用户组
- 修改日期
- 名称
2.chgrp更改文件属组
chgrp [-R] group resoucefile
-R:更改同目录下其他所有文件的属组
3.chown更改文件的属主或者属组
更改文件cc1属主为cc1,cc2属主为cc2
[root@centoscc home]# cd cc [root@centoscc cc]# ls -l 总用量 8 -rw-r--r--. 1 cc cc 4 12月 20 15:46 cc1 -rw-r--r--. 1 cc cc 4 12月 20 15:53 cc2
... [root@centoscc cc]# chown cc1 cc1 [root@centoscc cc]# chown cc2 cc2 [root@centoscc cc]# ls -l 总用量 8 -rw-r--r--. 1 cc1 cc 4 12月 20 15:46 cc1 -rw-r--r--. 1 cc2 cc 4 12月 20 15:53 cc2 ...
修改文件属组和属主,提示错误
[root@centoscc cc]# chown test2:cc2 cc1 chown: 无效的用户: "test2:cc2"
可以先修改文件属组,再改文件属主。
[root@centoscc cc]# chgrp test1 cc1 [root@centoscc cc]# chown test1:cc1 cc1 chown: 无效的用户: "test1:cc1" [root@centoscc cc]# chown cc1 cc1 [root@centoscc cc]# ls -l 总用量 8 -rw-r--r--. 1 cc1 test1 4 12月 20 15:46 cc1 -rw-r--r--. 1 cc2 cc 4 12月 20 15:53 cc2
4.chmod更改文件读写权限
可以用数字表示rwx权限,r=4,w=2,x=1,-=0。用户/用户组/其他用户的权限用数字替代,rwx-的数值相加所得的和表示该身份的权限。可以对比cc1文件的权限。
[root@centoscc cc]# ls -l 总用量 8 -rw-r--r--. 1 cc1 test1 4 12月 20 15:46 cc1 -rw-r--r--. 1 cc2 cc 4 12月 20 15:53 cc2 ... [root@centoscc cc]# chmod 655 cc1 [root@centoscc cc]# ls -l 总用量 8 -rw-r-xr-x. 1 cc1 test1 4 12月 20 15:46 cc1 -rw-r--r--. 1 cc2 cc 4 12月 20 15:53 cc2
也可以用符号来表示不同的身份,u指用户,g指用户组,o指其他用户,a表示所有
+:增加权限
-:减少权限
=:设定
修改文件cc1的属主权限为rwx,回收属组的r权限,回收其他用户的r权限
chmod u=rwx,g-r,o-r cc1
...
-rwx--x--x. 1 cc1 test1 4 12月 20 15:46 cc1