【Linux】文件系统详解

作者简介 : 大家好 , 我是南瓜籽 , 一个在校大二学生 , 我将会持续分享C/C++相关知识 。
个人主页 : 南瓜籽的主页
??座右铭?? : 坚持到底 , 决不放弃 , 是成功的保证 , 只要你不放弃 , 你就有机会 , 只要放弃的人 , 他肯定是不会成功的人 。
文件系统
在任何一个操作系统中 , 文件系统无疑是其最重要的组件 , 用于组织和管理计算机存储设备上的大量文件 , 并提供用户交互接口 。Linux同样具备完善的文件系统 。用户既可以使用界面友好的图形文件管理器 , 也可以使用功能强大的shell文件系统管理工具 。
文件系统类型
linux是一种兼容性很高的操作系统 , 支持的文件系统格式很多 , 大体可分以下几类:
【【Linux】文件系统详解】磁盘文件系统:指本地主机中实际可以访问到的文件系统 , 包括硬盘、CD-ROM、DVD、USB存储器、磁盘阵列等 。常见文件系统格式有:、coda、Ext( File sytem , 扩展文件系统)、Ext3、Ext4、VFAT、(通常是CD-ROM)、UFS(Unix File  , Unix文件系统)、FAT、FAT16、FAT32、NTFS等;网络文件系统:是可以远程访问的文件系统 , 这种文件系统在服务器端仍是本地的磁盘文件系统 , 客户机通过网络远程访问数据 。常见文件系统格式有:NFS、Samba等;专有/虚拟文件系统:不驻留在磁盘上的文件系统 。常见格式有:TMPFS(临时文件系统)、( File  , 进程文件系统)和( File  , 回送文件系统) 。
目前Ext4是Linux系统广泛使用的一种文件格式 。在Ext3基础上 , 对有效性保护、数据完整性、数据访问速度、向下兼容性等方面做了改进 。
最大特点是日志文件系统:可将整个磁盘的写入动作完整地记录在磁盘的某个区域上 , 以便在必要时回溯追踪 。
SCSI与IDE设备命名

【Linux】文件系统详解

文章插图
sata硬盘的设备名称是“/dev/sda”
/dev/sda1 含义? sd代表是scsi硬盘 a代表是第一块硬盘 1代表是第一个主分区
/dev/sdb3 含义? sd代表是scsi硬盘 b代表是第二块硬盘 3代表是第三个主分区
注: 如果很在意系统的高性能和稳定性 , 应该使用SCSI硬盘
Linux分区的命名方式字母和数字相结合前两个字母表示设备类型第三个字母说明具体的设备
交换分区:
文件系统逻辑结构
首先举个栗子:
文件系统结构分区与目录的关系:如何知道文件存储的具体硬件位置呢?
Linux文件系统就是一个树形的分层组织结构 。将根(/)作为整个文件系统的唯一起点 , 其他所有目录都从该点出发 。将Linux的全部文件按照一定的用途归类 , 合理地挂载到这颗“大树”的“树枝”或“树叶”上 , 如图所示 。而这些全不用考虑文件的实际存储位置 , 无论是存在硬盘上 , 还是在CD-ROM或USB存储器中 , 甚至是网络终端 。
【Linux】文件系统详解

文章插图
下面是分层组织结构图:
基本目录
由于Linux是完全开源的软件 , 各Linux发行机构都可以按照自己的需求对文件系统进行裁剪 , 所以如此众多的Linux发行版本的目录结构也不尽相同 。为了规范文件目录命名和存放标准 , 颁发了文件层次结构标准(FHS , File) , 2004年发行版本FHS 2.3 。Linux系统同样也遵循这个标准 。