详细的 Linux 常用文件系统介绍

Linux 常用文件系统分为三大类:

  1. 磁盘型文件系统(真正把数据存到磁盘/SSD 上)
  2. 内存/虚拟文件系统(依赖 RAM 或内核数据结构,不在磁盘上)
  3. 分布式/网络文件系统(跨主机存储访问)
objectivec 复制代码
Linux 文件系统
│
├── 传统本地文件系统
│   ├── ext2 / ext3 / ext4
│   ├── XFS
│   ├── ReiserFS
│   └── Btrfs
│
├── 网络文件系统
│   ├── NFS
│   ├── SMB/CIFS (Samba)
│   ├── CephFS
│   └── GlusterFS
│
├── 专用文件系统
│   ├── VFAT / exFAT
│   ├── ISO9660 / UDF
│   ├── tmpfs
│   ├── procfs
│   ├── sysfs
│   └── cgroupfs

🗂️ 一、磁盘型文件系统(最常见)

1. ext2/ext3/ext4

  • ext2:最早的稳定 Linux 文件系统,不支持日志 (journal),恢复慢。

  • ext3:在 ext2 上增加日志功能,崩溃后恢复快。

  • ext4:目前 Linux 默认常用文件系统之一,支持大文件、大分区,向后兼容 ext2/3。

    • 特点:extents(高效存储连续数据块)、延迟分配、日志功能。
    • 使用场景:通用,个人电脑、服务器。

2. XFS

  • 特点:高性能日志文件系统,支持超大文件/分区,分配空间快。
  • 缺点:小文件多时效率比 ext4 差,碎片整理依赖工具。
  • 使用场景:数据库、大型文件存储。
  • SLES、RHEL 默认推荐

3. Btrfs

  • 特点:下一代 Linux 文件系统,内建快照、压缩、子卷管理。
  • 优点:支持在线扩展、快照回滚、数据校验。
  • 缺点:在某些内核版本稳定性不足。
  • 使用场景:SUSE/SLES 常用于根文件系统(快照用于系统回滚)。

4. ReiserFS

  • 特点:曾经流行,特别适合小文件存储。
  • 缺点:已停止维护,逐渐被 ext4 和 btrfs 替代。

5. ZFS (移植到 Linux)

  • 特点:来自 Solaris,内建卷管理 + 文件系统,支持快照、校验、数据修复。
  • 缺点:内核集成问题(CDDL 与 GPL 许可证冲突)。
  • 使用场景:高可靠性存储、NAS。

📌 二、内存/虚拟文件系统(不存磁盘)

这些文件系统并不是"真正存储",而是 Linux 内核对进程、内存、硬件的一种接口。

1. tmpfs

  • 存储位置:内存(可交换到 swap)。
  • 特点:速度快,掉电数据消失。
  • 常见挂载点/dev/shm, /run, /tmp
  • 用途:临时文件、共享内存、运行时数据。

2. devtmpfs

  • 存储位置:内核内存。
  • 作用:自动为系统设备(/dev 下)创建设备节点。
  • 常见挂载点/dev

3. procfs

  • 作用:内核导出进程信息、系统信息的接口。
  • 常见挂载点/proc
  • 用途 :查看 /proc/cpuinfo, /proc/meminfo, /proc/[pid]/status

4. sysfs

  • 作用:内核导出设备、驱动、总线信息的接口。
  • 常见挂载点/sys
  • 用途 :查看硬件、调节内核参数(如 /sys/class/net/eth0)。

5. cgroupfs

  • 作用:控制组文件系统,限制/监控进程资源(CPU、内存、I/O)。
  • 常见挂载点/sys/fs/cgroup

6. debugfs

  • 作用:调试文件系统,提供内核内部调试信息。
  • 常见挂载点/sys/kernel/debug

🌐 三、网络/分布式文件系统

1. NFS (Network File System)

  • 特点:UNIX/Linux 经典网络文件系统,客户端挂载远程服务器目录。
  • 用途:共享目录、集群。

2. CIFS/SMB

  • 特点 :Windows 文件共享协议。Linux 通过 cifs 驱动挂载。
  • 用途:Linux 与 Windows 文件共享。

3. CephFS

  • 特点:基于 Ceph 分布式存储,支持高扩展性和高可靠性。
  • 用途:云存储、大规模集群。

4. GlusterFS

  • 特点:分布式文件系统,用户态实现。
  • 用途:横向扩展存储。

5. AFS / Lustre

  • AFS:早期分布式文件系统。
  • Lustre:高性能计算集群常用文件系统。

📊 总结对比表

类型 文件系统 特点 / 优势 典型挂载点 / 应用
磁盘型 ext4 稳定、广泛使用 /, /home, /var
XFS 大文件、大分区高效 /, 数据库存储
Btrfs 快照、压缩、子卷 根分区,SLES 系统回滚
内存型 tmpfs 基于 RAM,掉电消失 /dev/shm, /run, /tmp
procfs 内核/进程信息接口 /proc
sysfs 硬件、驱动信息接口 /sys
网络型 NFS 跨机共享,UNIX/Linux 常用 /mnt/nfs
CIFS/SMB Windows 共享 /mnt/share
CephFS 分布式,云存储 大规模集群
GlusterFS 用户态分布式存储 横向扩展

相关推荐
路溪非溪1 小时前
嵌入式Linux驱动开发杂项总结
linux·运维·驱动开发
Neolock2 小时前
Linux应急响应一般思路(三)
linux·web安全·应急响应
被遗忘的旋律.3 小时前
Linux驱动开发笔记(七)——并发与竞争(上)——原子操作
linux·驱动开发·笔记
轻松Ai享生活3 小时前
minidump vs core dump
linux
张童瑶4 小时前
Linux 离线安装lrzsz(rz、sz上传下载小插件)
linux·运维·centos
十五年专注C++开发5 小时前
通信中间件 Fast DDS(二) :详细介绍
linux·c++·windows·中间件·fastdds
YC运维6 小时前
Linux服务测试题(DNS,NFS,DHCP,HTTP)
linux·网络
zhanghongyi_cpp6 小时前
linux的conda配置与应用阶段的简单指令备注
linux·python·conda
Cuit小唐7 小时前
VsCode使用SFTP连接Linux
linux·ide·vscode