linux文件属性介绍
Linux系统有如表所示的几种文件类型。
使用ls -lih 命令就可以看到各个文件的具体信息,下面选取以上所提到的这几种文件,列出他们的信息。
除了设备文件(包括字符设备文件和块设备文件二种)外,每一个文件的信息可分为8个部分:
他们的意义如下:
第一部分:
表示文件的索引节点inode。索引节点里存放一个文件的上述信息,比如文件大小、属主、归属的用户组、读写权限等,并指出文件的实际存放位置。
字段2:
文件种类和权限。
其中 -表示普通文件,d表示目录,c表示字符设备,b表示块设备,p表示FIFO(即管道),l表示软连接(也称符号链接),s表示套接字(socket)。
没有专门的符号来表示硬连接类型,硬连接也是普通文件,只不过文件的实际内容只有一个副本,连接文件和被连接文件都指向它,如上面的ln_hard文件是使用
ln readme.txt In_hard 命令创建出来的到redame.txt文件的硬连接,readme.txt和In_hard地位完全一样。他们都指向文件系统中的同一个位置,他们的硬连接个数都为2,表示 这个文件的实际内容被引用二次,可以看到这二个文件的inode都是一样的。
硬连接文件引入的另一个作用是使得可以用别名来引用一个文件,避免文件被误删除(只有当硬链接个数为1时,对一个文件执行删除操作才会真正删除文件的副本),它的缺点是不能创建到目录的连接,被连接文件和连接文件必须在同一个文件系统中。对此引入软连接,也称符号连接。
软连接只是简单地指向一个文件或者目录,并不增加它的硬连接个数,比如上面的ln_soft文件就是使用ln -s readme.txt ln_soft 创建出来的到readme.txt文件的软连接,它使用另一个inode。
第三部分:硬连接个数。
第四部分:文件拥有者。
第五部分:所属群组。
第六部分:文件或目录的大小。
第七部分:表示最后访问或修改时间。
第八部分:表示文件名或目录名。
对于设备文件,第六部分表示主设备号(用来表示这是哪类设备),第七部分表示次设备号(用来表示这是这类设备中的第几个)。
最新文章
- Hadoop入门学习笔记---part2
- CSS基本知识4-CSS行模型
- c# foreach循环二维数组
- Validate US Telephone Numbers
- 多线程进行http请求
- c#选择填空题题库
- Android项目实战(八):列表右侧边栏拼音展示效果
- PHP中使用的变量
- @+id/和android:id的区别
- leetcode 第一题 Two Num java
- printf 缓冲区问题
- Keil C动态内存管理机制分析及改进
- T-SQL技术收集——删除重复数据
- 软工+C(2017第4期) Alpha/Beta换人
- 数据库索引------B-Tree 索引和 Hash 索引的对比
- netty的简单的应用例子
- java方法 throws exception 事务回滚机制
- CPU上下文切换
- 使用Spring提供的缓存抽象机制整合EHCache为项目提供二级缓存
- git 查看某个文件的修改记录