Linux文件属性和更改文件权限

Linux文件属性

当用ls -l命令查看当前目录下的文件时,共显示9列内容。

drwxr-xr-x. 6 1001 1001   4096 1111 08:36 auto
-rw-r--r--. 1 1001 1001 278202 1017 21:16 CHANGES
-rw-r--r--. 1 1001 1001 423948 1017 21:16 CHANGES.ru
drwxr-xr-x. 2 1001 1001    168 1111 08:36 conf
-rwxr-xr-x. 1 1001 1001   2481 1017 21:16 configure
drwxr-xr-x. 4 1001 1001     72 1111 08:36 contrib
drwxr-xr-x. 2 1001 1001     40 1111 08:36 html
-rw-r--r--. 1 1001 1001   1397 1017 21:16 LICENSE
drwxr-xr-x. 2 1001 1001     21 1111 08:36 man
-rw-r--r--. 1 1001 1001     49 1017 21:16 README
drwxr-xr-x. 9 1001 1001     91 1111 08:36 src
  • 第1列:包含该文件的类型、所有者、所属组、以及其他用户对该文件的权限。第1列共11位。
    • 第1位:用来描述该文件的类型。
    • d表示该文件是目录
    • -表示该文件为普通文件
    • l表示该文件为链接文件(link file)
    • b表示该文件为块设备,比如/dev/sda就是这样的文件,磁盘分区文件就是这种类型
    • c表示该文件为串行端口设备文件(又称字符设备文件),比如键盘、鼠标、打印机、tty终端等都是这样的文件
    • s表示该文件为套接字文件(socket),用于进程之间的通信
    • 文件类型后面9位,每3个为一组,均为rwx这3个参数的组合。r代表可读,w代表可写,x代表可执行。前3位为所有者(user)的权限,中间3位为所属组(group)的权限,最后3位为其他非本群组用户(others)的权限。
    • 最后1位是个点“.”,在CentOS 5 版本后,ls添加了SELinux或者acl的属性。如果文件或者目录使用了SELinux context的属性,这里会是一个点“.”;如果设置了acl的属性,这里会是一个加号“+”。关于SELinux和acl了解即可。
  • 第2列:表示该文件占用的节点(inode),如果是目录,那这个数值与该目录下子目录数量有关。
  • 第3列:表示该文件的所有者
  • 第4列:表示该文件的所属者
  • 第5列:表示该文件的大小
  • 第6列、第7列和第8列:表示该文件最后一次被修改的时间(time),依次为月份、日期以及时间。
  • 第9列:表示文件名。

更改文件的权限

命令chgrp

chgrp(change group的缩写)命令可以更改文件的所属组,其格式为:

chgrp [组名] [文件名]
chgrp testgroup test1

chgrp命令还可以更改目录的所属组

chgrp testgroup dir2

这样,chgrp命令只更改了目录本身,而目录下的文件并没有更改。如果想要级联更改子目录以及子文件,加-R选项可以实现。

chgrp -R testgroup dir2

这个命令不常用,因为还有一个命令可以替代它,那就是chown

命令chown

chown(change own的简写)命令可以更改文件的所有者,其格式为

chown [-R] 账户名 文件名
chown [-R] 账户名:组名 文件名

这里的-R选项只适用于目录,作用是级联更改,即不仅更改当前目录,连目录里的目录或者文件也全部更改。

chown -R user1:testgroup dir3

这样就把dir3目录以及该目录下的文件都修改成所有者user1,所属组为testgroup。

命令chmod

为里方便更改文件的权限,Linux使用数字代替rwx,具体规则为:r等于4,w等于2,x等于1,-等于0。例如,rwxrwx---用数字表示就是770,其具体算法为:rwx=4+2+1=7,rwx=4+2+1=7,—=0+0+0=7。

命令chmod(change mode的简写)用于改变用户对文件/目录的读写执行权限,其格式为

chmod [-R] xyz 文件名(这里的xyz表示数字)

-R还是表示级联更改。

在Linux系统中,一个目录的默认权限为755,而一个文件的默认权限为644.

chmod 750 dir3
chmod 700 dir3/test3
chmod -R 700 dir3

chmod还支持使用rwx的方式来设置权限。我们可以使用u、g和o来分别表示user、group和others的属性,用a代表all。

chmod u=rwx,og=rx dir3/test3

还可以针对u、g、o和a,增加或减少它们的某个权限(读,写或执行)

chmod u-x dir3/test3
chmod a-x dir3/test3
chmod u+x dir3/test3
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值