Linux絮絮叨(四) 系统目录结构

Linux 系统的目录结构(Filesystem Hierarchy Standard, FHS)定义了 Linux 系统中文件系统的标准布局,以下是一些常见目录的功能:


根目录 /

  • 描述:所有文件和目录的起始点,Linux 文件系统的根。
  • 内容:所有的系统文件和目录都在根目录下,根目录没有扩展或变化的空间,通常它只包含必要的系统文件和子目录。
  • 常见内容 :
    • bin/、etc/、home/、lib/、opt/、proc/、root/、tmp/、usr/、var/ 等。

主要目录及其功能

1. /bin

  • 描述:二进制文件目录,存放系统启动时最基本的命令工具。
  • 常见内容 :
    • 基本的命令如 ls、cp、mv、cat、rm 等,这些命令是系统恢复和管理所必需的。

2. /boot

  • 描述:启动文件目录,包含操作系统启动所需要的核心文件。
  • 常见内容 :
    • 内核文件 (vmlinuz)、引导加载程序 (GRUB、LILO) 配置文件、启动时用到的初始化程序。
    • 示例:/boot/grub/。

3. /dev

  • 描述:设备文件目录,Linux 将设备当作文件处理,所有硬件设备的文件都在该目录下,在 Linux 中访问设备的方式和访问文件的方式是相同的。
  • 常见内容 :
    • 硬件设备文件,如 /dev/sda(硬盘设备)、/dev/tty(终端设备)、/dev/null(空设备)等。

4. /etc

  • 描述:系统配置文件目录,存放系统和应用程序的配置文件。
  • 常见内容 :
    • 系统服务配置文件,如 /etc/passwd(用户账户信息)、/etc/fstab(文件系统表)、/etc/hostname(主机名配置)。
    • 系统服务的启动脚本文件。

5. /home

  • 描述:用户家目录,所有普通用户的个人文件都存放在这个目录下。
  • 常见内容 :
    • 每个用户的家目录,如 /home/user1/、/home/user2/ 等。普通用户的个人数据、配置文件和桌面文件存放在此。

6. /lib

  • 描述:共享库文件目录,存放系统运行时需要的共享库文件,类似于 Windows 里的 DLL 文件。
  • 常见内容 :
    • 系统运行所需的动态链接库文件,如 libc.so,以及内核模块文件。
    • 示例:/lib/modules/ 存放内核模块。

7. /lost+found

  • 描述:文件系统修复目录,一般情况下是空的,当系统非法关机后,会保存文件系统损坏后恢复的部分数据。
  • 常见内容 :
    • 文件系统检查工具(如 fsck)在修复文件系统时恢复的部分文件。

8. /media

  • 描述:可移动媒体设备挂载点,临时挂载的设备(如 USB 驱动器、CD-ROM)一般挂载在此目录。
  • 常见内容 :
    • 挂载的设备如 /media/cdrom/ 或 /media/usb/。

9. /mnt

  • 描述:临时挂载点,通常用于系统管理员临时挂载的文件系统或设备。
  • 常见内容 :
    • 用于手动挂载的分区或文件系统,通常是暂时性的文件系统挂载。

10. /opt

  • 描述:可选的应用程序软件目录,存放附加的软件包和应用程序。
  • 常见内容 :
    • 安装的第三方软件包,如 /opt/ 下存放的某些大型软件包或自定义应用程序。
    • 示例:/opt/google/ 或 /opt/eclipse/。

11. /proc

  • 描述:虚拟文件系统目录,包含运行时系统信息,主要用于进程信息。
  • 常见内容 :
    • 动态生成的进程和系统信息,如 /proc/cpuinfo(CPU 信息)、/proc/meminfo(内存信息)、/proc/[pid]/(进程信息)。

12. /root

  • 描述 :超级用户的家目录,root 用户的个人文件和配置文件存放在此。
  • 常见内容 :
    • root 用户的个人文件,例如 /root/.bashrc 等。

13. /run

  • 描述:运行时数据目录,存放系统启动后动态生成的临时文件。
  • 常见内容 :
    • 系统运行时产生的状态文件,如进程 PID 文件、锁文件等。
    • 示例:/run/lock/ 和 /run/user/。

14. /srv

  • 描述:服务数据目录,存放与服务相关的数据文件。
  • 常见内容 :
    • Web 服务数据、FTP 服务数据、数据库数据等。
    • 示例:/srv/www/ 存放网站相关的数据。

15. /sys

  • 描述:虚拟文件系统目录,提供内核与用户空间的接口。
  • 常见内容 :
    • 系统硬件信息和设置,如 /sys/class/ 和 /sys/devices/ 用于访问和配置硬件设备。

16. /tmp

  • 描述:临时文件目录,用于存放临时的文件。
  • 常见内容 :
    • 系统和应用程序运行过程中生成的临时文件。
    • 这个目录通常在系统重启后会被清空。

17. /usr

  • 描述:用户相关的只读数据,存放系统和应用程序的软件包及文档。
  • 常见内容 :
    • /usr/bin/:大多数应用程序的二进制文件。
    • /usr/lib/:系统共享库文件。
    • /usr/share/:共享的数据和文档,如 man 页、程序帮助文件。
    • /usr/local/:本地安装的程序和脚本。

18. /var

  • 描述:可变数据目录,存放程序运行过程中产生的经常变化的文件。
  • 常见内容 :
    • 日志文件,如 /var/log/。
    • 邮件队列、打印队列、缓存文件等。

Linux 文件系统结构概念总结

  1. 根目录 / :所有文件和目录的顶层,所有的目录都以 / 为根。
  2. 二进制目录 /bin、/sbin:存放最基本的系统命令和管理员命令。
  3. 用户目录 /home:普通用户的个人目录。
  4. 系统配置 /etc:存放系统和程序的配置文件。
  5. 设备文件 /dev:所有硬件设备的文件。
  6. 共享库 /lib:系统共享库文件。
  7. 临时文件 /tmp、/var:存放临时文件和运行时变化的文件。
  8. 挂载点 /mnt、/media:挂载外部设备或文件系统。

扩展知识

  • /usr 和 /usr/local:用于存放应用程序和软件包。
  • /usr 是系统级软件包安装的地方,而 /usr/local 通常是管理员手动安装的程序。
  • 文件权限和安全性 :/etc/ 目录下的配置文件控制着系统的访问和安全策略。

相关推荐
Ruiery9 小时前
Linux 6.6内核 CPU 深度解析(七):调度器启动 — 从单核到多核,调度器分阶段点亮
linux·运维·服务器
50万马克的面包9 小时前
CSDN-栈队列数组-知识点整理
linux·运维·服务器
MicrosoftCloud9 小时前
用户权限 04|/etc/sudoers 安全配置:从最小授权到「别把 ALL 随便给人」
运维·安全·ubuntu·sudo·sudoers
wjkjpcba10 小时前
PCBA烧录程序是什么:PCBA包工包料厂家解析烧录与测试
linux·数据库·人工智能·smt贴片加工·pcba贴片加工厂
꯭自꯭闭꯭11 小时前
达梦事物特性及MVCC
linux·运维·数据库
91刘仁德12 小时前
HTTP协议详解:从URL到HTTP服务器的完整实战
服务器·网络·笔记·网络协议·http
亚川楼宇自控系统数据中心厂家12 小时前
实验室智能化管理系统|人环物智一体化管控平台
运维
羔羊++12 小时前
18_实验十七_其他命令与自定义启动变量
linux
zmsup13 小时前
Agent 上下文调优:结合 OpsArk 运维智能体,设计模型每一步真正需要的信息
运维·agent·上下文压缩·运维智能体·上下文调优
DYWorker00114 小时前
Linux驱动:RK3568 GMAC + YT8531C 千兆以太网全流程解剖
linux