插件窝 干货文章 理解Linux文件系统的层次结构

理解Linux文件系统的层次结构

目录 挂载 文件 分区 183    来源:    2025-04-08

Linux文件系统采用层次化结构(Filesystem Hierarchy Standard, FHS),这种设计使系统文件组织清晰、功能明确。以下是关键目录及其作用的深度解析:

  1. / (根目录)

    • 所有目录的起点,类似于Windows的C:\
    • 必须包含挂载其他分区所需的目录(如/bin, /sbin, /lib等)
  2. 核心系统目录

    • /bin:基础用户命令(ls, cp等),所有用户可用
    • /sbin:系统管理命令(fdisk, ifconfig等),需root权限
    • /lib:/bin和/sbin所需的共享库
    • /etc:系统全局配置文件(纯文本格式)
      • 例如:/etc/passwd(用户账户)、/etc/fstab(挂载信息)
  3. 可变数据目录

    • /var:动态变化的数据
      • /var/log:系统日志
      • /var/spool:打印队列、邮件等
    • /tmp:临时文件(自动定期清理)
  4. 用户空间

    • /home:用户个人目录(可单独分区)
    • /root:root用户的家目录(不与/home混用)
  5. 特殊目录

    • /dev:设备文件(如/dev/sda代表磁盘)
    • /proc:虚拟文件系统,实时内核/进程信息
      • 例如:cat /proc/cpuinfo查看CPU信息
    • /sys:另一种内核信息接口(较新的sysfs)
  6. 软件相关

    • /usr:用户程序(UNIX System Resources缩写)
      • /usr/bin:非必要应用程序
      • /usr/local:本地编译安装的软件
    • /opt:第三方商业软件
  7. 挂载点

    • /mnt:临时挂载(历史遗留)
    • /media:可移动设备自动挂载点(现代发行版更常用)

实际应用技巧: 1. 排查磁盘空间问题:

# 查看各目录占用空间
du -h --max-depth=1 /
  1. 快速定位文件:
# 查找配置文件
find /etc -name "*.conf"
  1. 特殊目录操作示例:
# 查看内存信息
cat /proc/meminfo

# 查看块设备
lsblk

注意事项: - 不同发行版可能有细微差异(如Fedora的/usr/bin和/bin是链接) - 系统关键目录(如/bin, /sbin)通常需要在根分区 - /var建议单独分区,避免日志等数据占满根分区

理解这种结构可以帮助您: - 快速定位配置文件 - 合理规划分区方案 - 有效管理系统资源 - 排查各类路径相关的问题