您的位置:首页 > 运维架构 > Linux

linux的文件类型和权限

2016-01-12 18:04 357 查看
Linux下使用ll或ls -l查看文件的信息
(ll和ls-l的区别:ll会显示出当前目录下的隐藏文件,而ls -l不会)



文件信息分为:文件类型、权限、链接数、所属用户、所属用户组、文件大小、最后修改时间、文件名,具体的可以见下图。



一、文件类型:
d:文件夹
-:普通文件
l:链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如猫等串口设备)
s:套接口文件/数据接口文件(例如启动一个MySql服务器时会产生一个mysql.sock文件)

二、文件权限
权限对应数字意义
r4可读
w2可写
x1可执行
-:某一位置为空时显示-,表示不具备这个权限
权限位由9位组成,前3位表示文件拥有者的权限,中间3位表示文件所属用户组的权限,后3位表示其他用户的权限。

举例如下:
drwxr-xr-x 2 root mail 4096 1月 12 03:44 account
表示文件夹account,root是他的所属拥有者,具有可读可写可执行的权限;mail是他的所属用户组,具有可读、可执行的权限,不具备可写的权限;其他用户针对这个文件夹具有可读、可执行的权限,不具备可写的权限

更改权限命令:
chmod 权限 文件名
chmod有两种用法
1.chmod 用户+(-)权限 文件名
用户意义
u所有者(user)
g所属群组(group)
o其他人(other)
a全部的人(all)
(增加权限用+,减少权限用-,直接等于的权限用=)

例:给文件test.txt的其他用户增加可读的权限
chmod o+r test.txt

权限其他说明:
文件都有默认权限:
类型默认权限
文件rw-rw-rw-
目录rwxrwxrwx
但是这个权限不一定是我们linux系统的默认权限,每个系统都有一个权限掩码(unmask)
使用命令查看权限掩码(umask查看数字掩码;umask -S查看字符掩码)



数字掩码:默认掩码减去数字掩码代表的权限
字符掩码:取默认淹没和字符掩码的交集代表权限
修改权限掩码的命令:umask 007(或者umask u=rw,g=rwx,o=r)

2.chmod 权限数字 文件名
权限数字由3位数组成,第1位数表示所有者的权限;第2位数表示所属群组的权限;第3位数表示其他人的权限
例:将test.txt文件变更权限为文件拥有者可读可写可执行,文件所属组可读可写可执行;其他人可读可执行不可写。
chmod 775 test.txt
说明:数字是对应权限的数值和。例如7=4+2+1,所以7代表可读可写可执行。5=4+1,所以5代表可读可执行不可写。0代表不可读不可写不可执行

三、文件所属的拥有者和所属群组
1.更改文件拥有者
命令:chown 用户名 文件
例如:chown work test.txt(将test.txt的拥有者变更为work)

2.更改文件的所属群组
命令:chgrp 群组名称 文件
例如:chgrp named test(将test的所属群组变更为named)

其他:
1.chmod和chgrp、chown都有一个参数-R,可以递归的将目录及它以下的子目录一起变更权限等
2.有的ll后,发现第一段的权限后还有一个“.”或者“+”,如下图所示:



在网上查了一下,
“.”表示有selinux的安全标签,具有安全上下文属性(可以用ll -LZ查看)



“+”表示文件应用了其他访问控制的安全措施
(感兴趣的大家可以自己去查询一下,我也没有去查询太多的内容。)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: