设为首页 收藏本站
查看: 819|回复: 0

[经验分享] linux 文件属性

[复制链接]

尚未签到

发表于 2019-2-18 09:49:19 | 显示全部楼层 |阅读模式
linux文件属性  
  1 、linux文件的概述
2 、inode 索引节点   
3、 block   
4、 相关的面试题   
5 、linux软硬连接   
6 、软连接  
7 、文件连接的总结  
8 、目录连接文件的总结   
9 、软硬连接的区别  
10、 linux文件的删除原理   

  1、 linux文件的概述
   linux系统中文件和目录的属性主要包括:索引节点号(inode)、文件类型及权限、硬链接的数量、文件或目录所属的用户(属主)、文件或目录所属的组(属组)、文件的大小、文件的修改时间、实际的文件名或目录名。
   ls  -lhi 执行结果的分析

  2、 inode 索引节点
2.1 基本特点
   磁盘(存储设备)被分区格式化为ext4系统后,会生成两部分内容:inode和block(两者都有很多个)。
   inode是用来存放文件的属性的以及作为文件的索引(指向文件的实体),所以inode本身是有大小的,在Centos5系列中inode默认大小是128字节,Centos6系列中inode默认大小是256字节。
   inode除了存放文件的属性信息外,还会存放执行数据块的指针
   block是用来存放实际数据的,常见的一个block的大小为4K,其引导分区为1K,其它的普通分区为4K。
   inode中不包含文件名,因为文件名不属于文件的属性。
   索引节点号表现形式是一串数字,像每个人的×××号一样,是唯一的。
   系统在读取文件的时候,首先通过文件名找到inode号,然后才能读取到文件的内容。
   inode节点号相同的文件,互为硬链接,可以理解为时同一个超市的不同入口。
   ext3/ext4 文件系统下,一个文件占用且只能占用一个inode。
   ext3/ext4文件系统下,一个文件被创建后,至少要占用一个inode和一个block。
   若一个文件很大(如高清片),则它需要占用多个block,若一个文件很小(如只有0.01K)那么它将占用一个block,且剩余的空间就浪费了,即不能在存储其他东西了。
2.2 查看inode和block的大小
[root@oldboy test]# dumpe2fs /dev/sda3 |egrep -i "inode size|block size"
dumpe2fs 1.41.12 (17-May-2010)
Block size:               4096
Inode size:           256
2.3 block
   磁盘读取数据按block为单位进行读取的
   一个文件可能会占用多个block,但是每读取一个block就会消耗一个磁盘IO
   若要提升磁盘IO性能,那么就需要一次读取的数据尽可能的多
   一个block只能存放一个文件,无论内容有多大,假设一个block的大小为4K,那么存放一个1K的文件,剩下的空间就不能在存储数据了,只能浪费掉,
   block并不是越大越好,太大时对于存放小文件会浪费磁盘空间,一般根据业务的文件大小进行选择,一般Centos6默认就是4K
   可以在格式化的时候改变inode和block的大小
    格式化的命令:mkfs.ext4 -b 2048 -I 256 /dev/sdb 其中 -b是指定block的大小,-I是指定inode的大小
2.4 相关的面试题
   【题目】
磁盘空间满了,写不进去东西,有3种情况。
第一种:block满了,可以用df -h 查看。看Use%,删除一些文件即可
第二种:inode满了,可以用df -i查看,看IUse%,删除一些小的(不用的)文件即可
第三种:硬链接数为0,进程调用数不为0
2.5 linux软硬连接
2.5.1 硬链接的创建过程
   ln 源文件 目标文件
2.5.2 硬链接的原理图

2.5.3 硬连接的特点
   多个文件共享同一个索引节点,不占用实际空间
   硬链接是一个文件的多个入口(可以理解为一个超市具有多个入口一样)
   只要连接数不为0,文件就存在,所以硬链接可以防止文件误删除
   删除源文件或硬链接的任意一个,则文件实体并不会被删除,只有同时删除源文件和其所有硬链接,文件实体才会被删除
   硬链接文件是普通文件,可以用rm命令删除
   对于静态文件(即没有被进程调用的文件),当i_link数为0时,文件就被删除了(i_link的查看方法ls –l 的第三列)
2.6 软连接
2.6.1 软连接的创建过程
   ln -s 源文件 目标文件
2.6.2 软连接的原理图

2.6.3 软连接的特点
   软连接类似与windows下的快捷方式(可以通过readlink查看其指向)
   删除源文件时,软连接仍然存在,但是无法访问指向源文件的内容了
   软连接失效时一般是白字红底闪烁提示
   软连接和源文件是不同类型的文件,文件也不同,inode节点号也不同
   软连接的类型是l,可以用rm命令删除
2.7 文件连接的总结
   删除软连接文件对源文件和硬链接文件无任何影响
   删除硬链接文件对源文件和软连接文件无任何影响
   删除源文件对硬链接文件无影响,但是会导致软连接文件失效,有白字红底闪烁提示
   硬链接和源文件具有相同的inode号,可以认为是同一个文件,也可以理解为一个文件具有多个入口
   软连接和源文件具有不同的inode号,是不同的文件,软连接是源文件的快捷方式,具有源文件的位置指向
   软硬连接的图形理解

2.8 目录连接文件的总结
   目录不可以创建硬链接,但是可以创建软连接
   目录的硬链接不能跨越文件系统(从硬链接的原理进行理解)
   每个目录下面都有一个硬链接 . 号,和对应上级目录的硬链接 ..
   在父目录下创建一个子目录,则父目录的硬链接数加1(因为在子目录里面都有一个 .. 指向父目录),但是在下面创建文件,父目录的硬链接数不会增加
2.9 软硬连接的区别
   硬链接文件和源文件共享一个inode号,软连接文件和源文件具有不同的inode号
   创建硬链接和软连接的过程不同(创建硬链接 ln 源文件 目标文件  创建软连接 ln -s 源文件 目标文件)
   删除源文件,硬链接可以访问,软连接不能访问
   目录可以创建软连接,不能创建硬链接
   软连接不能修改源文件的名字,硬链接可以修改
   软连接可以跨系统,硬链接不可以
   删除软硬连接不影响源文件,删除硬链接,连接数减1
2.10 linux文件的删除原理
   linux文件的删除由两个东西控制:i_link(硬链接数)和i_count(进程的调用数),只有当两者的数值都为0时文件才被删除
   用rm来删除 使得i_link为0  重启使用这个文件的进程 使得i_count为0
   linux删除原理的图解

注意:只有让i_link和i_count的值都为0 文件才会被删除
删除文件的权限是受父目录的控制和文件本省的权限无关





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-673822-1-1.html 上篇帖子: linux 文件属性 下篇帖子: Linux文件与目录管理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表