admin管理员组文章数量:1660142
本节内容:关于inode 、block、superblock的基础知识;文件删除原理;文件处理工具
一、Linux文件系统 ( inode block superblock)
linux文件系统简单分为inode table和date area
inode: 存放元数据 (元数据:文件的属性信息 大小 创建时间 权限)
block:存放实际数据
surperblock:记录文件系统整体信息( inode 与block的总量 已使用 剩余)
小文件问题:可能会使inode耗尽,使得文件文法创建。(磁盘利用率低)—>对于小文件比较多的场景,将block划分小一点。
大文件问题:一个文件占用多个block,使得文件读写速率慢---->将block划分大一点。
inode中包含文件的元数据,用stat命令查看文件元数据
[root@nebula ~]# stat anaconda-ks.cfg
File: "anaconda-ks.cfg"
Size: 939 Blocks: 8 IO Block: 4096 regular file
Device: 802h/2050d Inode: 142230 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2020-02-12 03:32:02.709999481 +0800
Modify: 2020-02-12 03:32:03.369999480 +0800
Change: 2020-02-12 03:32:10.259999474 +0800
blocks:占用磁盘块数
IO block:IO块的大小
device;所在设备
Access: (0600/-rw-------) :访问权限
二、Linux文件系统删除原理
硬链接:
具有相同INode节点号的文件互为硬链接文件
删除硬链接文件或者删除源文件任意一个,文件数据实际并未删除
只有删除源文件以及所对应的所有硬链接文件,文件数据才被删除,同时释放磁盘空间
硬链接文件是文件的另一个入口
可以通过设置硬链接文件防止误删
软链接 符号链接
类似于windows上的快捷方式
软连接文件类似一个文本文件,存放的是源文件的路径
删除源文件,链接文件依然存在,但是无法指向源文件
软连接文件和源文件是不同类型的文件,也是不同的文件,inode号也不同
rm可以直接删除
目录链接
对于目录来说,只能创建软连接
每一个目录下都有硬链接 . ..
对于父目录来说,子目录都会有指向父目录的链接 父目录链接数+1
每一个文件链接计数器, i_count i_nlink
i_count:当前文件被调用的次数 内存引用计数器
i_nlink:链接的数量 硬链接的数量 磁盘引用计数器
文件删除:i_count和i_nlink同时为0时,代表删除
linux文件处理工具
1、cut:数据切割
1、字节
2、字符
3、区域
-b:以字节为单位进行分割
-c:以字符为单位
-d:指定分隔符 默认是tab
-f:配合-d使用 指定显示那个区域
2、sort:用于字段排序
-f:忽略大小写
-b:忽略最前面的空白字符
-M:以月份名字排序
-n:以纯数字排序
-u:相邻数据去重
-r:反向排序
-t:指定排序分隔符
-k:执行区间
-o filename:将结果保存在filename中
3、uniq:去除排序过的文件中重复的行
-c:标注出现的次数
-d:只输出重复的行
-D:显示所有重复行
-f:跳过前N列 列是通过空白分割
-i:忽略大小写
-s N:跳过前N个字符
-u:只显示唯一的行
-w N:每行的第N个字符之后不做对照
-z:使用'\0'作为行结束符,而不是新换行
4.wc: word count
-c:统计字节数
-l:统计行数
-m:统计字符
-w:统计字数
-L:打印最长行的长度
版权声明:本文标题:Linux文件系统 及文件系统删除原理 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1729845246a1215050.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论