第16集:Linux 文件系统结构

教学目标

  • 理解Linux文件系统的基本概念和层次结构
  • 掌握Linux文件系统层次标准(FHS)的核心内容
  • 了解常见的Linux文件系统类型及其特点
  • 能够识别和理解系统中的主要目录及其作用

核心知识点讲解

1. Linux文件系统概述

Linux文件系统是一个分层的树形结构,从根目录(/)开始,向下延伸出各种子目录。这种结构设计使得文件管理更加清晰和高效。

2. 文件系统层次标准(FHS)

文件系统层次标准(Filesystem Hierarchy Standard, FHS)是Linux系统中目录结构的规范,它定义了各个目录的用途和组织方式:

/                # 根目录,所有文件和目录的起点
├── bin/         # 基本命令二进制文件
├── boot/        # 引导加载程序文件
├── dev/         # 设备文件
├── etc/         # 系统配置文件
├── home/        # 用户主目录
├── lib/         # 共享库文件
├── media/       # 可移动媒体挂载点
├── mnt/         # 临时挂载点
├── opt/         # 可选应用程序
├── proc/        # 进程信息(虚拟文件系统)
├── root/        # root用户主目录
├── run/         # 运行时数据
├── sbin/        # 系统管理命令
├── srv/         # 服务数据
├── sys/         # 系统硬件信息(虚拟文件系统)
├── tmp/         # 临时文件
├── usr/         # 用户程序和数据
└── var/         # 可变数据文件

3. 常见文件系统类型

Linux支持多种文件系统类型,每种都有其特点和适用场景:

  • ext4: 第四代扩展文件系统,是大多数Linux发行版的默认文件系统
  • XFS: 高性能日志文件系统,适合大型文件和高吞吐量场景
  • Btrfs: 新一代文件系统,支持快照、校验和等高级功能
  • ZFS: 强大的文件系统,支持数据压缩、重复数据删除等功能
  • tmpfs: 基于内存的临时文件系统,速度快但重启后数据丢失

4. 文件系统挂载

文件系统需要挂载到目录树中才能被访问。挂载是将文件系统与目录树中的某个目录关联起来的过程。

操作示例

示例1:查看文件系统结构

# 查看根目录结构
ls -la /

# 查看详细的文件系统信息
ls -la /bin /etc /home /var

示例2:查看文件系统类型

# 查看当前挂载的文件系统及其类型
df -T

# 查看特定分区的文件系统信息
blkid /dev/sda1

示例3:查看文件系统使用情况

# 查看文件系统使用情况
df -h

# 查看inode使用情况
df -i

示例4:查看目录大小

# 查看根目录下各子目录的大小
du -h --max-depth=1 /

# 查看特定目录的大小
du -sh /home

课后练习

  1. 基础练习

    • 列出根目录下的所有子目录,并解释每个目录的用途
    • 使用df命令查看系统中所有挂载的文件系统
  2. 进阶练习

    • 查找系统中最大的10个目录
    • 分析/var目录的结构,了解哪些子目录占用空间较大
  3. 思考问题

    • 为什么Linux采用树形目录结构?
    • 不同文件系统类型的优缺点是什么?如何选择适合的文件系统?

总结

本集介绍了Linux文件系统的基本结构和组织方式,包括:

  • Linux文件系统的树形结构和根目录的重要性
  • 文件系统层次标准(FHS)定义的目录结构和用途
  • 常见的Linux文件系统类型及其特点
  • 文件系统挂载的基本概念

理解文件系统结构是Linux系统管理的基础,它有助于我们更好地组织和管理文件,以及排查系统问题。在下一集中,我们将详细介绍各个主要目录的具体用途和内容。

« 上一篇 文件压缩与解压 下一篇 » 目录结构详解