文件属性
Linux 系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。 Linux 系统对不同的用户访问同一文件的权限做了不同的规定
查看文件的属性以及所属的用户和组
在 Linux 中我们可以使用 ls -l (或 ll)命令来显示一个文件的属性以及文件所属的用户和组
[root@www /]# ls -l
total 64
dr-xr-xr-x 2 root root 4096 Dec 14 2012 bin
dr-xr-xr-x 4 root root 4096 Apr 19 2012 boot
……
dr-xr-xr-x : 第一部分的10个字符表示每个文件的属性
4 : 第二部分的字符表示每个文件的硬链接数 root root : 第三部分的字符表示每个文件的属主(所有者)和属组 4096 : 第四部分的字符表示每个文件的大小 ** Apr 19 2012: 第五部分的字符表示每个文件的时间** ** bin / boot: 第六部分的字符表示每个文件的文件名**
更改文件属性
1、chgrp:更改文件属组
语法:
- chgrp [-R] 属组名 文件名
// -R 代表递归,即目录下所有文件都会更改属性
2、chown:更改文件属主,也可以同时更改文件属组
语法:
- chown [–R] 属主名 文件名
- chown [-R] 属主名:属组名 文件名
进入 /root 目录(~)将install.log的拥有者改为bin这个账号:
[root@www ~] cd ~
[root@www ~]# chown bin install.log
[root@www ~]# ls -l
-rw-r--r-- 1 bin users 68495 Jun 25 08:53 install.log
将install.log的拥有者与群组改回为root:
[root@www ~]# chown root:root install.log
[root@www ~]# ls -l
-rw-r--r-- 1 root root 68495 Jun 25 08:53 install.log
3、chmod:更改文件9个属性
3.1 数字类型改变文件权限
我们可以使用数字来代表各个权限,各权限的分数对照表如下:
每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: -rwxrwx— 分数则是:
- owner = rwx = 4+2+1 = 7
- group = rwx = 4+2+1 = 7
- others= — = 0+0+0 = 0
语法 chmod [-R] xyz 文件名 // -R 代表递归,即目录下所有文件都会更改属性 // x 代表属主权限 // y 代表属组权限 // z 代表其他权限
[root@www ~]# ls -al .bashrc
-rw-r--r-- 1 root root 395 Jul 4 11:45 .bashrc
[root@www ~]# chmod 777 .bashrc
[root@www ~]# ls -al .bashrc
-rwxrwxrwx 1 root root 395 Jul 4 11:45 .bashrc
3.2 符号类型改变文件权限
我们使用 u, g, o 来代表三种身份(owner/group/others)的权限。此外, a 则代表 all,即全部的身份。 语法 chmod [-R] u+rwx,g=rwx,o-rwx 文件名 // -R 代表递归,即目录下所有文件都会更改属性 // u 代表属主 // g 代表属组 // o 代表其他
# touch test1
# ls -al test1
-rw-r--r-- 1 root root 0 Nov 15 10:32 test1
# chmod u=rwx,g=rx,o=r test1
# ls -al test1
-rwxr-xr-- 1 root root 0 Nov 15 10:32 test1
去除所有人的可执行权限,则:
# chmod a-x test1
# ls -al test1
-rw-r--r-- 1 root root 0 Nov 15 10:32 test1
|