您的位置:首页 > 其它

关于文件系统的一些理解

2017-09-07 13:21 204 查看
文件系统无非是组织文件如何储存起来

Linux文件系统管理:
Linux文件系统:ext2,ext3,ext4,xfs,btrfs,reiserfs,jfs,swap
swap:交换分区,是一种比较特殊的文件系统,将硬盘当内存用
现在什么1.5倍之类的概念不太适用了,要看具体使用,对于大型科学计算可以给大一点,因为对性能要求不高,对于数据库之类的,呵呵,没有内存就别玩,放到swap上,性能会急剧下降
windows:fat32,ntfs
unix:FFS,UFS,JFS2
网络文件系统:NFS,CIFS
集群文件系统:GFS2,OCFS2
分布式文件系统:ceph,moosefs,mogilefs,等等吧

根据是否支持日志(journal)功能:
日志型文件系统:ext3,ext4,xfs,……
非日志型文件系统:ext2,vfat

关于日志:
我们往电脑上下载一个电影,系统会先建立电影的元数据,再存储电影,传着传着断电了,那么之前存的一半数据就不能用了,那么检查这些损坏文件非常麻烦,还很慢,这就是非日志型文件系统;
日志型文件系统会先将元数据存放在日志区,电影下完了没问题,再转移到元数据区,若是中途断电了,只需要在日志区寻找日志文件就可以了;
所以,日志型文件系统,系统检测非常快,但是需要将日志区的元数据转移到元数据区,等于多了一次I/O操作,性能上会比非日志
文件系统差一些,但是现在这些差异已经微乎其微了。所以,推荐使用日志型文件系统

文件系统的组成部分:
内核中的模块:文件系统有很多,都是内核给我们提供的,就是给我们提供了很多管理文件的机制
用户空间的管理工具:调用内核中的文件系统模块,mkfs.ext4,mkfs.xfs,等等,每一个文件系统都有相应的管理工具

Linux的文件系统这么多,这可苦了程序员了,但是在计算机界有一个不成文的规则,如果两个层次不兼容的时候,就加一个中间层
所有有了一个虚拟文件系统: VFS

Linux的虚拟文件系统:VFS

查看系统上正在用的文件系统:cat  /proc/filesystems  前面没有nodev的就是我们正在使用的文件系统

(看到 /proc/filesystems 这个文件,想起了上一篇博客里面介绍到的  /proc/partitions   这里面记录的是磁盘分区表,分完区,还没有格式化就可以查到了,若是分区保存后查不到,方法请参考上一篇磁盘配额的博客)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: