| 目录路径 | 核心功能 | 关键内容说明 |
|---|---|---|
| /bin | 存放系统基础二进制命令 | 所有用户(包括普通用户)可执行的核心命令,如 ls(列出目录)、cp(复制文件)、mv(移动文件)、sh(Shell 解释器)等。这些命令在系统启动时(甚至未挂载其他分区时)必须可用,因此通常与根分区(/)放在一起,不可单独挂载。 |
| /sbin | 存放系统管理二进制命令 | 仅 root 用户可执行的管理员命令,用于系统维护,如 ifconfig(配置网络)、mount(挂载分区)、umount(卸载分区)、reboot(重启系统)、fdisk(磁盘分区)等。与 /bin 类似,需随根分区启动。 |
| /etc | 存放系统全局配置文件 | 所有系统级别的配置文件和服务配置,是管理员修改系统行为的核心目录。例如:- /etc/passwd(用户账号信息)、/etc/group(用户组信息);- /etc/sysctl.conf(内核参数配置)、/etc/profile(全局环境变量);- /etc/apache2/(Apache 服务器配置)、/etc/nginx/(Nginx 配置)。 |
| /home | 存放普通用户主目录 | 每个普通用户的专属工作目录默认存放在此,路径为 /home/<用户名>(如 /home/zhangsan),用于存储用户的个人文件、配置(如 .bashrc)、下载内容等。root 用户主目录不在这里(见 /root)。 |
| /root | root 用户的主目录 | 系统管理员(root)的专属目录,功能与普通用户的 /home/<用户名> 一致,用于存放 root 的个人文件和配置。因 root 权限极高,此目录权限默认严格(仅 root 可读写执行)。 |
| /lib | 存放系统核心共享库 | 所有二进制程序(如 /bin、/sbin 中的命令)依赖的共享库文件(类似 Windows 的 .dll 文件),确保程序能正常运行。例如:- libc.so.*(C 语言标准库,几乎所有程序都依赖);- 内核模块(部分发行版存于 /lib/modules)。64 位系统中,32 位库可能存于 /lib32,64 位库存于 /lib64(部分发行版统一用 /lib)。 |
| /usr | 存放用户级应用程序和资源 | 系统中最大的目录之一,包含非核心的应用程序、工具、文档等,可单独挂载分区。核心子目录:- /usr/bin:普通用户可执行的非核心命令(如 git、python、vim);- /usr/sbin:root 可执行的非核心管理命令(如 httpd、mysqld);- /usr/lib:应用程序依赖的共享库(对应 /usr/bin//usr/sbin 的程序);- /usr/share:共享资源(如文档 man、图标、字体、语言包);- /usr/local:用户手动安装的软件(如编译源码安装的程序,默认路径 ./configure --prefix=/usr/local)。 |
| /var | 存放动态变化的文件 | 内容会随系统运行不断更新的目录,如日志、缓存、临时文件等,建议单独挂载分区(避免日志占满根分区)。核心子目录:- /var/log:系统和应用的日志文件(如 syslog 系统日志、nginx/access.log Nginx 访问日志);- /var/spool:队列文件(如邮件队列 mail、打印队列 lpd);- /var/tmp:临时文件(比 /tmp 更持久,系统重启后可能保留);- /var/lib:应用程序数据(如 MySQL 数据库文件 mysql/、包管理缓存 dpkg/)。 |
| /tmp | 存放临时文件 | 所有用户可读写的临时文件目录,系统重启后内容会被清空(部分发行版用内存文件系统 tmpfs 挂载,速度快但占用内存)。例如:程序运行时生成的临时缓存、用户临时创建的文件。 |
| /dev | 存放设备文件 | Linux 中 "一切皆文件",硬件设备(如磁盘、键盘、显卡)通过此目录下的 "设备文件" 被系统识别和访问。例如:- /dev/sda(第一块 SATA 硬盘)、/dev/sda1(第一块硬盘的第一个分区);- /dev/tty(当前终端)、/dev/null("黑洞" 设备,写入的内容会被丢弃);- /dev/random(生成随机数的设备)。 |
| /proc | 存放内核和进程的虚拟文件 | 一个 "虚拟文件系统",不占用磁盘空间,而是实时反映内核状态和进程信息。例如:- /proc/cpuinfo(CPU 硬件信息)、/proc/meminfo(内存使用情况);- /proc/1(PID 为 1 的进程,即系统初始化进程 systemd 或 init);- /proc/sys(内核参数,可通过 sysctl 命令修改)。 |
| /sys | 存放硬件设备的虚拟文件(新型) | 与 /proc 类似,也是虚拟文件系统,用于暴露硬件设备的详细信息和控制接口(主要面向现代硬件,如 USB、PCIe 设备),是 Linux 设备模型的核心目录。例如:/sys/class/net(网络接口信息)、/sys/block(块设备信息)。 |
| /mnt | 临时挂载点 | 管理员手动挂载外部设备(如 U 盘、移动硬盘、远程共享目录)的默认位置,例如:mount /dev/sdb1 /mnt/usb(将 U 盘 /dev/sdb1 挂载到 /mnt/usb)。 |
| /media | 自动挂载点 | 图形界面(如 GNOME、KDE)自动挂载外部设备的目录,例如:插入 U 盘后,系统会自动创建 /media/<用户名>/<设备名> 并挂载,用户可直接访问。 |
| /opt | 存放第三方商业软件 | 用于安装独立的第三方软件(如 Oracle 数据库、Matlab 等),这些软件通常不遵循 FHS 标准,自带完整目录结构,直接解压或安装到 /opt/<软件名> 即可。 |
Linux目录
apolloyhl2025-10-27 16:21
相关推荐
纳切威3 小时前
CentOS 10 系统安装java_logo3 小时前
Docker 部署 Debian 全流程教程天上飞的粉红小猪3 小时前
linux的文件系统珊瑚礁的猪猪侠4 小时前
正则表达式入门到精通教程(Linux实操版)czhc11400756634 小时前
JAVA1026 方法;类:抽象类、抽象类继承;接口、接口继承 Linux:Mysql王同学_1165 小时前
Linux系统端口关闭并排查相关自启动项(麒麟环境)大聪明-PLUS5 小时前
Linux 中的 DNS 工作原理(二):各级 DNS 缓存Xiaoweidumpb5 小时前
Linux Docker docker-compose 部署python脚本郝学胜-神的一滴5 小时前
使用 Python 元类与属性实现惰性加载:Effective Python 第47条