Linux目录结构有哪些?每个目录的作用是什么?

简介: Linux结构呈层次化,根“/”是起始点。各有特定用途:“/bin”存常用用户命令;“/sbin”放系统管理命令;“/etc”含全局配置文件;“/dev”是设备文件;“/proc”“/sys”为虚拟文件系统;“/usr”存用户程序和只读数据;“/var”放可变数据;“/tmp”存临时文件;“/home”“/root”分别是普通用户和超级用户主;“/media”“/mnt”用于挂载;“/boot”存引导文件;“/opt”装第三方应用等。掌握结构,是深入系统关键。

ScreenShot_2026-01-28_120418_912.png

本文介绍下 Linux 系统中各个目录都起到一个什么样的作用。对于初次接触 Linux 系统的时候,打开终端输入 ls /,面对满屏的目录名一脸茫然:/bin、/boot、/etc……这些名字像密码一样,让人摸不着头脑。

其实 Linux 的目录结构就像一棵倒挂的大树,根目录/是树干,其他目录是树枝和树叶。每个用户的家目录(比如/home/你的用户名)则是树上的一个‘鸟巢’,你的私人文件、照片、代码都在这里安家。而系统文件则像树的‘根系’,藏在/usr、/bin 等目录中,默默支撑着整个系统的运行。

Linux 文件系统采用层次化的结构来组织文件和目录,其中每个目录都有特定的用途。下面是由码云笔记 Linux 文件系统中各个主要目录及其详细用途的讲解:

根目录 /

  • 描述:根目录是整个文件系统的起始点,所有其他文件和目录都是从这个目录派生出来的。
  • 用途:作为系统的基础,所有文件和目录都在此目录下形成树状结构。

    /bin

  • 描述:这个目录包含用户在系统启动和运行过程中需要的基本命令的可执行文件。
  • 用途:存放常用的用户命令,例如:
    ls:列出目录内容。
    cp:复制文件。
    mv:移动或重命名文件。
    rm:删除文件。
    

    /sbin

  • 描述:与 /bin 类似,但包含系统管理命令,通常只有超级用户(root)可以使用。
  • 用途:存放用于系统管理的命令,例如:
    shutdown:关机命令。
    reboot:重启命令。
    ifconfig:网络接口配置命令。
    

    /etc

  • 描述:这个目录包含系统的全局配置文件。
  • 用途:存放各种程序和服务的配置文件,例如:
    /etc/passwd:存储用户账户信息。
    /etc/fstab:定义文件系统的挂载点。
    /etc/hosts:本地主机名解析配置。
    /etc/network/interfaces:网络接口配置。
    

    /dev

  • 描述:设备文件目录,包含对系统中硬件设备的访问接口。
  • 用途:存放设备文件,这些文件表示内存、硬盘、USB 设备等。例如:
    /dev/sda:第一个 SATA 硬盘。
    /dev/null:空设备,任何写入其中的数据都会被丢弃。
    

    /proc

  • 描述:一个虚拟文件系统,它提供了关于系统和内核运行时状态的信息。
  • 用途:存放进程和系统信息的接口,包括:
    /proc/cpuinfo:CPU 信息。
    /proc/meminfo:内存使用情况。
    /proc/[pid]:特定进程的相关信息,其中[pid]是进程 ID。
    

    /sys

  • 描述:另一个虚拟文件系统,提供内核及其设备的详细信息和管理接口。
  • 用途:主要用于内核空间和用户空间之间的交互,提供有关设备驱动和硬件信息。例如:
    /sys/class:设备类别。
    /sys/block:块设备信息。
    

    /usr

  • 描述:包含用户程序和只读数据,是系统中大多数用户应用和工具的存放位置。
  • 用途:存放更高级别的用户命令和库,包含多个子目录:
    /usr/bin:大多数用户命令的可执行文件。
    /usr/sbin:系统管理员命令,不同于/sbin,该目录中的命令通常不用于正常操作。
    /usr/lib:用户程序的共享库。
    /usr/share:共享数据和文档,如帮助文件和图标。
    

    /var

  • 描述:可变数据文件目录,包含不断变化的数据。
  • 用途:存放日志文件、邮件队列、缓存等,例如:
    /var/log:系统和服务的日志文件。
    /var/tmp:临时文件,可以跨重启保存。
    /var/spool:邮件和打印任务的存储位置。
    

    /tmp

  • 描述:临时文件存放目录,通常系统重启后会清空。
  • 用途:用于存放短期使用的临时文件,所有用户都可以访问。

    /home

  • 描述:普通用户的主目录,每个用户在此目录下有自己的子目录。
  • 用途:存储用户的个人文件和设置,例如:
    /home/user1:用户 user1 的主目录。
    用户的文档、下载、桌面等文件都存放在其主目录下。
    

    /root

  • 描述:超级用户(root)的主目录。
  • 用途:存放 root 用户的个人文件和配置,类似于普通用户的/home 目录。

    /media

  • 描述:临时挂载点,用于自动挂载可移动媒体,如 USB 闪存驱动器和 CD/DVD。
  • 用途:当插入 USB 或光盘时,系统通常会在此目录下创建相应的子目录来访问这些媒体。

    /mnt

  • 描述:通常用于临时挂载文件系统的目录。
  • 用途:系统管理员可以手动在该目录下挂载其他文件系统。

    /lib

  • 描述:/lib 目录包含系统运行所需的共享库文件和内核模块。
  • 用途:
  1. 存放由 /bin 和 /sbin 中的可执行文件所依赖的共享库(例如 .so 文件)。
  2. 在 32 位系统中,通常会有一个子目录 /lib/i386 或 /lib/x86_64 用于存放特定架构的库文件。
  3. 动态链接库(如标准 C 库 libc.so)在这里提供给其他程序调用,确保程序可以正确运行。
  4. 除了共享库外,某些设备驱动模块也会存放在 /lib/modules 下。

    /boot

  • 描述:/boot 目录用于存放引导加载程序和内核文件。
  • 用途:
  1. 包含用于启动操作系统的重要文件,如 Linux 内核 (vmlinuz) 和初始 RAM 磁盘镜像 (initrd 或 initramfs),这些文件是系统启动时所需的。
  2. 引导加载器(如 GRUB)配置文件也存放在此目录下,通常为 grub/ 子目录。
  3. config-*文件则保存了内核的配置信息,便于用户查看。

    /opt

  • 描述:/opt 目录用于安装附加的第三方应用程序。
  • 用途:
  1. 适用于那些不属于系统标准软件包管理的巨型应用或商业软件。
  2. 每个应用程序通常会在此目录下有一个独立的子目录,例如/opt/mysql或/opt/google/chrome,以便于管理和维护。
  3. 这种结构使得不同软件之间的依赖关系更加清晰,并且方便卸载。

    /lost+found

  • 描述:/lost+found是用于存放丢失文件的特殊目录。
  • 用途:
  1. 在文件系统检查(如运行 fsck 命令)时,如果发现一些文件系统的结构损坏或者文件丢失,系统会将这些文件恢复到 /lost+found 目录中。
  2. 丢失的文件会被重命名为数字(代表其 inode 号),用户可以根据需要尝试恢复这些文件。
  3. 这个目录通常是空的,但在文件系统遭遇问题时,对数据恢复具有重要意义。
    除了上述目录,还有一些其他常见的目录:

    /srv

  • 描述:该目录用于存放服务数据,特定于某个服务的数据。
  • 用途:例如,Web 服务(如 Apache 或 Nginx)可能会在/srv/www下存放网站文件。FTP 服务可能在/srv/ftp下存放文件。

    /run

  • 描述:/run是一个临时文件系统,存放运行时数据。
  • 用途:包含当前运行的服务和系统状态的信息,例如 PID 文件、锁文件等。
  • 在系统启动时创建,系统关闭时会被清空。

    /snap

  • 描述:用于存放通过 Snaps 安装的应用程序。
  • 用途:Snap 是一种软件包管理系统,允许用户从 Snap Store 下载和安装应用程序。每个 Snap 包会在此目录下有自己的子目录。

在 Linux 的世界里,目录不仅是文件的容器,更是逻辑的起点。掌握它,你就握住了通往系统深处的钥匙。https://mybj123.com/28670.html

目录
相关文章
|
5月前
|
运维 监控 Linux
Linux中收集【系统】和【硬件】信息的30个常用命令总结
本文系统梳理30个Linux运维核心命令,涵盖系统信息(如`uname`、`hostname`)、硬件诊断(如`lscpu`、`smartctl`)及日志监控(如`dmesg`、`journalctl`)等全场景需求,助力高效排查故障、优化性能与实现自动化运维。
995 2
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
人工智能(AI)领域涉及的名词汇总
这是一份面向AI初学者的术语速查手册,系统梳理了人工智能、机器学习、深度学习、NLP、计算机视觉等9大方向的核心概念,涵盖定义、原理与典型应用,兼顾准确性与可读性,助你快速建立AI知识框架。(239字)
958 3
|
5月前
|
JavaScript 数据可视化 Java
开源医院随访系统:基于Spring Boot、Vue前后端分离的源码解决方案
医院随访系统是连接院内HIS/EMR的智能平台,支持电话、短信、微信等多渠道随访,涵盖关怀与管理两类场景。采用Java+Spring Boot+Vue技术栈,具备模板灵活配置、智能提醒、满意度闭环、数据报表等功能,延伸医疗服务链,提升康复质量与管理决策水平。
443 0
|
4月前
|
域名解析 网络协议 安全
详细介绍Linux命令dig和nslookup
本文介绍 Linux 下两大 DNS 查询工具:dig(功能强大,支持详尽选项与追踪)和 nslookup(简洁易用,含交互模式)。涵盖安装、常用语法、记录类型(A/MX/NS等)、典型示例及输出解析,助你高效诊断域名解析与网络问题。(239字)
1229 3
|
安全 应用服务中间件 nginx
Nginx限制IP访问只允许特定域名访问
为了我们的服务器安全,我们需要禁止直接使用 IP 访问我们的服务器,我们可以借助 Nginx 完成
2516 1
Nginx限制IP访问只允许特定域名访问
|
19天前
|
人工智能 缓存 自然语言处理
Token到底是什么?AI最小货币单位全解析,从原理到省钱技巧一文吃透
在AI全面融入日常工作与生活的2026年,无论是使用ChatGPT、通义千问等对话工具,还是部署OpenClaw、Hermes Agent等AI智能体,我们都会频繁接触到一个核心概念——Token。它被称为AI世界的“最小货币单位”,贯穿模型交互、计费结算、能力限制的全流程。但多数用户对Token的认知仅停留在“计费单位”层面,既不理解其本质,也不懂如何通过优化使用降低成本,导致频繁出现费用超支、AI“失忆”、响应缓慢等问题。
949 0
|
3月前
|
人工智能 缓存 前端开发
网站和APP架构介绍
本文用“开餐厅”类比,生动讲解网站/App开发的完整架构:前端=菜单装修,后端=厨房,数据库=仓库,缓存=出餐口冰箱。涵盖架构图、交互流程与核心资源(域名、服务器、Redis、OSS等),并新增AI时代学习建议——善用大模型写代码、审代码、搭环境,聚焦系统思维与精准提问能力。(239字)
|
5月前
|
Oracle 关系型数据库 数据库
oracle11.2.0.4安装步骤详解(附配置与连接教程)
Oracle 11g R2(11.2.0.4)是企业常用数据库,本文介绍其Windows安装全流程。涵盖环境准备、安装包下载、系统配置、安装步骤及首次连接操作,助你快速完成部署并通过SQL*Plus验证运行。
2057 4
|
存储 人工智能 数据安全/隐私保护
CodeBuddy实现图片水印添加工具
CodeBuddy 的 AI 编程能力 让电商从业者无需成为技术专家,就能快速开发出功能强大、安全可靠的本地水印工具。AI 不仅能自动实现核心功能,还能根据电商场景特点进行优化,大幅缩短开发周期,降低技术门槛,让你专注于业务价值而非技术实现。
369 6
|
Linux 索引
在Linux中,符号链接与硬链接有何区别?
在Linux中,符号链接与硬链接有何区别?