文件系统是一种用于在存储设备上组织数据和元数据的机制. 文件系统的创建是在分区(分区是系统)格式化期间完成的. 众所周知,Windows操作系统使用的文件是FAT和NTFS. 不同Linux发行版使用的文件系统是Ext,XFS,Btrfs等. 这里重点介绍Ext2文件系统,并列出“拖轮油瓶” Fat文件系统和“高大” XFS文件系统的特征.
ext2文件系统是一个索引文件系统,其分区结构如下:
第一部分是引导扇区,它负责加载内核. 第二部分是超级块,它存储索引节点/块的总数,使用量和剩余量以及文件系统信息;第三部分是索引节点,它存储文件元数据和数据所在的块号. 第四部分是块,它存储文件的数据. 文件的元数据包括文件大小,所有者,组,时间戳等,但不包括文件名. 您可以使用ls -l命令查看文件的元数据. 当Linux找到文件时,首先从目录条目中找到文件名和索引节点. 只要找到相应的inode并沿指针并行收集所有数据块,就可以读取完整的文件. 以下是inode的:
根据此计算,当块大小为4k时,单个文件的最大容量为4T,但是由于Ext2文件系统本身的限制,单个文件的大小不能超过2T:
可以使用stat命令查看文件的inode信息,如图所示
这是文件系统块,inode和目录项: 您可以看到有两个目录项指向同一个inode,链接数将记录在inode中,文件只有在的链接数为0删除,即,仅当删除所有指向该inode的文件名时,才能删除该文件. 硬链接的原理是,多个文件名指向同一个索引节点,因此多个文件名共享一个索引节点号,以达到共享和备份的目的. 符号链接(软链接)是具有inode编号的文件. 原理是符号链接所指向的特定文件名存储在文件内容(数据)中,相当于Windows的快捷方式. 显然,硬链接无法链接目录,也不能跨设备(分区),因为每个分区都有一个独立的inode编号. 符号链接可以跨越分区或链接目录.
在window98系统中使用了早期的胖文件系统,它没有索引节点作为块索引,因此读取文件真是个笨蛋! ang! ang!仅在读取一个程序段后才知道下一个程序段的位置. 读取时间较长,效率低.
Xfs是CentOS 7上的默认文件系统. 最常见的文件系统Ext4已经非常出色,但是随着存储需求的增加,Ext4也无法适应. 例如并行文件系统i o特征,尽管Ext4目录索引使用哈希索引树,但高度仍限于2. 经过实际测试,Ext4的单个目录文件超过200W,性能下降更为严重. 由于磁盘的历史结构,Ext4索引节点(32位)的数量最多只能超过40亿个文件. Ext4的单个文件大小最多只能支持16T(4K块大小),XFS使用64位管理空间,文件系统大小可以达到EB级别. 可以说XFS将在未来几年内完全取代Ext4. 另外,我看了一下XFS. 目前,由于XFS基于B + Ttree来管理元数据,因此Redhat至少投资了5个内核开发人员,并且它将支持reflink和Dedupe等高级功能(Oracle开发人员已开发了补丁程序). 总而言之,XFS取代Ext4成为必然.
Mv,rm和cp都被定义为root用户的别名,并添加了-i提示选项
触摸刷新时间(-),创建空文件时触摸f? ?表示字符
MV移动和重命名文件
rm
树
inode索引节点
在Linux中有两种链接文件的方法. 一种是类似于Windows的快捷方式,它可以链接文件或目录,我们称其为软链接或符号链接. 生成一个新的文件名,称为硬链接. 该文件由元数据和数据组成,其中元数据是指文件的属性(大小,所有者,权限,时间戳和其他信息,不包括文件名),而数据是文件的内容. 元数据存储在inode中,数据存储在inode指向的一个或多个数据块中.
软链接
(1)软链接具有自己的inode编号
(2)软连接可以跨设备(分区)
(3)软链接可以链接目录和文件(软链接)
(4)软链接不会增加链接数量
(5)文件大小是链接地址中的字符数
(6)软连接权限无关紧要
硬链接
(1)硬链接的inode相同
(2)硬链接不能跨设备(分区)
(3)硬链接无法应用于目录
(4)每次添加硬链接,文件中的链接数量就会增加一个
程序=命令+数据
文件描述符fd存储在/ proc /任何进程号/ fd /中,用ll可以看到标准的I / O设备
Linux提供3种I / O设备,标准输入,输出,错误
I / O重定向输出: 更改默认位置
I / O重定向输入: 用文件替换键盘输入
管道(管道)
默认情况下,只需传递正确的命令,即标准输出,就可以使用2>&1或| &以实现标准错误重定向
sjdgosgo 2>&1 | grep(旧文字)= sdshdgo | &grep(新写作)#将标准错误重定向到标准输出,然后通过管道传递
| tee#可以在终端上显示和写入文件,默认为覆盖文件| tee-一个附加文件
|少#逐页查看
tr –转换和删除字符
tr [OPTION] ... SET1 [SET2]
tr'az''AZ'或tr'[: 下: ]''[: 上: ]'#逐字符替换字符,如果后者小于前者,则用最后一个字符替换其余字符<
-c或–complerment: 采用字符集的补码,采用除字符集以外的所有字符
-d或–delete: 删除属于第一个字符集的所有字符;
-s或–squeeze-repeats: 用单个字符压缩连续的重复字符,例如删除空白行
-t或–truncate-set1: 删除第一个字符集中的字符多于第二个字符集中的字符
Ext2,Fat,XFS文件系统
原创文章并行文件系统i o特征,作者: 你好,请转载,请注明出处:
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-193717-1.html