Linux VFS文件系统


父目录:linux文件系统

Linux VFS文件系统

回到顶部
linux传统的标准文件系统是ext家族,包括早期的ext2,以及增加了日志功能的ext3/ext4。 事实上,Linux支持的文件系统可不止ext文件系统,linux可以支持非常多的文件系统,常见的有:
传统文件系统:ext2、minix、MS-DOS、FAT(通过vfat 模块)、iso9660(光盘)等;
日志式文件系统: ext3、ext4、ReiserFS、Windows' NTFS、IBM's JFS、SGI's XFS、ZFS等;
网络文件系统: NFS、SMBFS等。
inode结构示意图 可通过如下方式查看linux支持的文件系统:
            [root@initroot ~]# ls -l /lib/modules/$(uname -r)/kernel/fs
            
/proc/filesystems文件记录了目前系统中已经安装的文件系统:
[root@initroot ~]# cat /proc/filesystems
nodev	sysfs
nodev	rootfs
nodev	ramfs
nodev	bdev
nodev	proc
nodev	cpuset
nodev	cgroup
nodev	cgroup2
nodev	tmpfs
nodev	devtmpfs
nodev	configfs
nodev	debugfs
nodev	tracefs
nodev	securityfs
nodev	sockfs
nodev	dax
nodev	bpf
nodev	pipefs
nodev	hugetlbfs
nodev	devpts
	ext3
	ext2
	ext4
	squashfs
	vfat
nodev	ecryptfs
	fuseblk
nodev	fuse
nodev	fusectl
nodev	pstore
nodev	mqueue
	btrfs
nodev	autofs
nodev	vboxsf
            
原来linux支持的文件系统那么多。每个文件系统存取文件的方式都不一样, 那么为什么我们在操作linux下的文件和目录的时候,并没有感觉到不同文件系统的差异呢? 这是因为linux(Virtual Filesystem Switch)内核通过VFS隐藏了不同文件系统的差异, VFS通过对不同文件系统的抽象,为用户提供统一的文件系统操作接口。 有了VFS的管理,我们在读取文件系统的时候就不需要特别指定读取的方式了。 linux下所有的文件系统都通过VFS进行管理,包括下面即将介绍的XFS文件系统。

initroot编辑整理,转载请注明www.initroot.com

100次点赞 100次阅读