Linux之文件属性详解
Linux 文件或目录的属性主要包括:文件或目录的节点、种类、权限模式、链接数量、所归属的用户和用户组、最近访问或修改的时间等内容。具体情况如下
使用ls -lih
列出上述信息
> ls -lih
12939236190 drwxr-xr-x 3 mac staff 96B 2 19 21:47 doc
- 第一列:inode
- 第二列:文件种类和权限
- 第三列:硬链接个数
- 第四列:属主
- 第五列:所归属的组
- 第六列:文件或目录的大小;
- 第七列:最后修改时间;
- 第八列:文件名或目录名
inode
inode 译成中文就是索引节点。每个存储设备或存储设备的分区(存储设备是硬盘、软盘、U盘等等)被格式化为文件系统后,应该有两部份,一部份是inode,另一部份是Block,Block是用来存储数据用的。而inode呢,就是用来存储这些数 据的信息,这些信息包括文件大小、属主、归属的用户组、读写权限等。inode为每个文件进行信息索引,所以就有了inode的数值。操作系统根据指令, 能通过inode值最快的找到相对应的文件。
硬链接
在Linux的文件系统中,保存在磁盘分区中的文件,不管是什么类型,系统都会给它分配一个编号,这个编号被称为索引节点编号(Inode Index),它是该文件或者目录在linux文件系统中的唯一标识。有了这个编号值,就可以查到该文件的详细内容。
同时,Linux系统还规定,可以允许多个文件名同时指向同一个索引节点(Inode),这就是硬链接。这样设计有一个好处就是,只要文件的索引节点还存在一个以上的链接,删除其中一个链接并不影响索引节点本身和其他的链接(也就是说该文件的实体并未删除),而只有当最后一个链接被删除后,且此时有新数据要存储到磁盘上,那么被删除的文件的数据块及目录的链接才会被释放,存储空间才会被新数据所覆盖。因此,该机制可以有效的防止误删操作。
硬链接只能在同一类型的文件系统中进行链接,不能跨文件系统。同时它只能对文件进行链接,不能链接目录。
创建一个文件的硬连接
> ln rumen.txt rumenz.txt
> ls -lih
total 0
12940530535 -rw-r--r-- 2 mac staff 0B 2 19 23:01 rumen.txt
12940530535 -rw-r--r-- 2 mac staff 0B 2 19 23:01 rumenz.txt
为什么创建一个空目录的文件,硬连接的个数是2
> mkdir rumenz
> ls -lih
12940530815 drwxr-xr-x 2 mac staff 64B 2 19 23:03 rumenz
原因是:
rumenz
目录下默认会有.
和..
目录,分别代表当前目录和父级目录
> ls -al rumenz
drwxr-xr-x 2 mac staff 64 2 19 23:03 .
drwxr-xr-x 3 mac staff 96 2 19 23:03 ..
文件类型
- -:代表普通文件
- d:代表目录
- l:代表软连接(ln –s 源文件 链接文件)
- b:块设备和其他外围设备,是特殊类型的文件
文件权限
- r 可读,数字权限是4
- w 可写,数字权限是2
- x 可执行,数字权限是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
原文链接:https://rumenz.com/rumenbiji/linux-file-attribute.html
微信公众号:入门小站
linux常用命令速查手册PDF下载
3669页vim参考手册PDF下载
阿里云ECS运维Linux系统诊断PDF下载
Docker速查手册PDF下载
Linux学习笔记【强悍总结值得一看】PDF下载
shell简明教程PDF下载
Linux之文件属性详解相关推荐
- 每天一个linux命令(25):linux文件属性详解
每天一个linux命令(25):linux文件属性详解 Linux 文件或目录的属性主要包括:文件或目录的节点.种类.权限模式.链接数量.所归属的用户和用户组.最近访问或修改的时间等内容.具体情况如下 ...
- linux zip 命令详解
功能说明:压缩文件. 语 法:zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目录>][-ll][-n <字尾字符串>][-t <日期 ...
- linux系统安全详解
linux系统安全详解 http://www.2cto.com/Article/201207/142181.html一,BIOS安全(硬件上的安全) 1,最基本最简单的安全配置,保障计算机硬件配置等不 ...
- Linux串口编程详解
Linux串口编程详解(阻塞模式.非阻塞模式.select函数) 之前一直觉得串口编程很简单,这两天仔细研究后发现串口里的各种参数还挺复杂,稍不注意就容易出错,这里总结一下网上的各种文章及自己的理解与 ...
- Linux用户管理详解大结局(下)
Linux用户管理详解(下) 我们已经可以通过创建不同的用户来防止其他人使用自己的账号,之后每个账户对应一个单独的用户密码,构成了一个基本的用户管理思路.为了方便管理还可以使用组来设置相同属性的用户. ...
- Linux常用命令详解(两万字超长文)
Linux常用命令详解 作为一枚程序员,熟练掌握一些常见的linux命令是很有必要的,掌握这些命令能帮助我们更好地管理Linux系统,提高工作效率,并有效地解决各种问题,为了方便自己后续查阅以及帮助不 ...
- 【网络编程】Linux tcpdump命令详解---编辑中
目录 即看即用 详细说明 简介 输出信息含义 链路层头 TCP 数据包 UDP 数据包 SMB/CIFS 解码 AFS 请求和回应 KIP AppleTalk协议 IP 数据包破碎 时间戳 反向过滤 ...
- Linux常用命令详解文库
Linux常用命令详解文库.txt精神失常的疯子不可怕,可怕的是精神正常的疯子!Linux常用命令详解 来源: LUPA开源社区 发布时间: 2007-05-27 05:34 版权申明 字体: ...
- LINUX命令大全详解备忘录
文件目录操作命令 ls命令 cd命令 pwd命令 mkdir命令 rm 命令 rmdir 命令 mv命令 cp 命令 touch 命令 cat 命令 nl命令 more命令 less 命令 head ...
最新文章
- 福布斯:2018年将改变世界的九股科技大趋势
- c#和c++中枚举类型的区别(简)
- Ajax Loading进度gif在线生成
- 解决IDEA每次打开新的maven项目都需要重新配置maven home的问题
- java 装饰器_装饰器模式(Java)
- 什么是Spring什么是SpringMVC?
- 理解asp.net中DropDownList编辑数据源,绑定数据库数据。
- 从孙子算经到中国剩余定理
- Security+ 学习笔记32 云安全控制
- 什么是webpack? ----(webpack入门)
- vue实现轮播图(每隔两秒自动翻页、翻到末页自动返回首页、点击按钮左右翻页)
- 基于 MaxCompute+PAI 的用户增长方案实践
- 演讲 口才 思维导图
- 计算机汉字字形通常有两种字形编码,汉字字形编码有哪两种类型?各有什么特点?...
- 一款适合全自动智能锁电机驱动芯片方案
- 黑客水平测试 大家可以自测一下
- 汽车巨头不愿被 “羞辱”,苹果造车重回代工模式
- 入门金融数据分析-Task1-数据了解and熟悉赛题
- 今天主要学习vue的一些原理,尤其是vueComponent与Vue的关系,个人觉得值得反复回味,很巧妙
- No BUILD ID 问题解决
热门文章
- Ubuntu下apache配置文件路径
- 预防SQL注入攻击之我见 转
- Linux下使用源码安装出现的坑
- [Python] L1-026. I Love GPLT-PAT团体程序设计天梯赛GPLT
- ionic 支持float吗_oppok7x怎么样值得买吗 oppok7x介绍
- SQL语句常用优化技巧
- 陈国良院士将出席“首届对象存储技术与应用大会”
- leetcode28 Implement strStr() 在字符串中寻找目标字符串
- iOS内存分配五大区:
- python学习(1)启程