Linux目录结构及其功能的使用解读

 更新时间:2025年03月03日 09:07:46   作者:微笑听雨。  
Linux的目录结构包括根目录/、bin、sbin、usr、var、etc、home、boot、lib、mnt、media、tmp、dev、proc、sys、opt和srv等,每个目录都有其特定的用途和存放内容,了解这些目录的作用和内容有助于更好地管理和维护系统

深入解析Linux目录结构

Linux 系统的目录结构采用层次化设计,从根目录 / 开始逐级扩展,了解和掌握这些目录的作用和内容有助于我们更好地管理和维护系统。

本文将深入解析每个常见目录的功能,并提供相关命令和示例。

目录结构概览

根目录 /

根目录是整个文件系统的起点,所有文件和目录都从这里开始,系统启动时会加载根目录下的必要文件和目录。

/bin

/bin 目录包含基本的用户命令,这些命令是系统启动和单用户模式下所需的最小命令集。

普通用户和系统管理员都可以使用这些命令。

常用命令:

/bin/ls  # 列出目录内容
/bin/cp  # 复制文件或目录
/bin/mv  # 移动或重命名文件或目录
/bin/rm  # 删除文件或目录
/bin/cat # 查看文件内容
/bin/bash # Bourne Again Shell,默认的命令行解释器

/sbin

/sbin 目录包含系统管理命令,只有系统管理员(root用户)才能使用这些命令。

它们用于系统启动、修复和恢复。

常用命令:

/sbin/ifconfig  # 配置网络接口
/sbin/reboot    # 重启系统
/sbin/shutdown  # 关闭系统

/usr

/usr 目录包含用户级应用程序和文件,通常包括系统级程序、库文件、文档和其他共享资源。

重要子目录:

  • /usr/bin:用户常用的二进制文件
/usr/bin/gcc  # GNU 编译器
/usr/bin/python3  # Python 解释器
  • /usr/sbin:系统管理员常用的二进制文件
/usr/sbin/apache2  # Apache HTTP 服务器
  • /usr/lib:程序库文件
/usr/lib/libc.so.6  # C 库
  • /usr/local:本地安装的软件和文件
/usr/local/bin  # 本地安装的二进制文件

/var

/var 目录包含可变数据文件,例如日志文件、缓存文件、邮件队列、临时文件等。

重要子目录:

  • /var/log:系统日志文件
/var/log/syslog  # 系统日志文件
/var/log/auth.log  # 认证日志文件
  • /var/spool:临时文件和队列文件
/var/spool/cron  # 定时任务文件
/var/spool/mail  # 邮件队列
  • /var/tmp:重启后仍需保留的临时文件
/var/tmp/session123  # 会话文件

/etc

/etc 目录包含系统的全局配置文件,通常每个程序都有一个子目录来存放其配置文件。

常用配置文件:

/etc/passwd  # 用户账号信息文件
/etc/fstab  # 文件系统表
/etc/hostname  # 主机名文件

/home

/home 目录是用户的家目录,每个用户都有一个独立的子目录,用户的个人文件和配置文件都存放在这里。

示例:

/home/user  # 用户 user 的家目录
/home/john  # 用户 john 的家目录

/root

/root 目录是超级用户(root 用户)的家目录,与普通用户的家目录类似,但只有 root 用户有权限访问。

示例:

/root  # 超级用户的家目录

/boot

/boot 目录包含启动加载程序(boot loader)和内核文件,系统启动时从这里加载必要的文件。

常用文件:

/boot/vmlinuz  # 内核文件
/boot/grub  # GRUB 启动加载程序文件

/lib

/lib 目录包含系统程序运行所需的共享库文件和内核模块,特别是在系统启动过程中需要使用的库文件。

常用文件:

/lib/modules  # 内核模块
/lib/systemd  # systemd 相关库文件

/mnt 和 /media

/mnt 目录用于临时挂载文件系统,/media 目录用于自动挂载的可移动设备。

示例:

/mnt/cdrom  # 挂载 CD-ROM 的挂载点
/mnt/usb  # 挂载 USB 设备的挂载点
/media/usb  # 自动挂载的 USB 设备
/media/cdrom  # 自动挂载的 CD-ROM 设备

/tmp

/tmp 目录用于存放临时文件,系统和应用程序在运行过程中会将临时文件放在此目录,系统重启时该目录下的文件通常会被删除。

示例:

/tmp/file1  # 临时文件
/tmp/session123  # 会话文件

/dev

/dev 目录包含设备文件,系统中的所有设备(如硬盘、终端、打印机等)都以文件的形式存在于该目录中。

常用设备文件:

/dev/sda  # 第一个 SCSI 硬盘
/dev/sda1  # 第一个 SCSI 硬盘的第一个分区
/dev/tty1  # 第一个终端
/dev/null  # 空设备文件,丢弃所有写入的数据
/dev/random  # 随机数生成设备文件

/proc

/proc 目录是一个虚拟文件系统,包含内核和进程的信息。系统启动时,该目录由内核自动创建,包含了系统运行时的动态信息。

常用文件:

/proc/cpuinfo  # CPU 信息
/proc/meminfo  # 内存信息
/proc/uptime  # 系统运行时间
/proc/[pid]  # 进程 [pid] 的信息

/sys

/sys 目录也是一个虚拟文件系统,提供系统硬件信息。与 /proc 类似,该目录由内核自动创建,包含设备和内核模块的信息。

常用文件:

/sys/class/net  # 网络设备信息
/sys/block  # 块设备信息

/opt

/opt 目录用于存放附加的应用软件包,通常是第三方软件。每个软件包通常有一个独立的子目录。

示例:

/opt/software1  # 软件包 1
/opt/software2  # 软件包 2

/srv

/srv 目录用于存放由系统提供的服务的数据。srv 是 “service” 的缩写,例如 Web 服务的数据可以放在 /srv/www 目录下。

示例:

/srv/www  # Web 服务的数据
/srv/ftp  # FTP 服务的数据

/run

/run 目录是一个临时文件系统,存放系统运行时产生的信息。系统重启时,该目录下的文件会被删除。

示例:

/run/lock  # 锁文件
/run/user  # 用户特定的运行时信息

结论

Linux的目录结构设计非常清晰和规范,每个目录都有其特定的用途和存放内容。

熟悉和理解这些目录的作用不仅能帮助我们更好地管理和维护系统,还能提高我们的工作效率。

希望本文对你了解和掌握Linux目录结构有所帮助。以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • linux下ceph分布式安装使用教程

    linux下ceph分布式安装使用教程

    大家好,本篇文章主要讲的是linux下ceph分布式安装使用教程,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2021-11-11
  • 浅谈Linux下tar,jar压缩,解压的常用命令

    浅谈Linux下tar,jar压缩,解压的常用命令

    下面小编就为大家带来一篇浅谈Linux下tar,jar压缩,解压的常用命令。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • Linux查看分区文件系统类型的方法总结

    Linux查看分区文件系统类型的方法总结

    这篇文章主要给大家总结介绍了关于Linux查看分区文件系统类型的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用linux系统具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-08-08
  • 详解从Linux源码看Socket(TCP)的bind

    详解从Linux源码看Socket(TCP)的bind

    本文从Linux源码的角度看Server端的Socket在进行bind的时候到底做了哪些事情(基于Linux 3.10内核)
    2021-06-06
  • shell脚本批量执行ping和telnet测试网络方式

    shell脚本批量执行ping和telnet测试网络方式

    文章介绍了如何通过创建shell脚本来简化本地网络测试任务,包括ping和telnet测试,文章详细描述了脚本的创建、编辑、赋予执行权限以及执行的步骤,并提供了具体的脚本示例
    2024-12-12
  • Ubuntu环境编译安装PHP和Nginx的方法

    Ubuntu环境编译安装PHP和Nginx的方法

    这篇文章主要介绍了Ubuntu环境编译安装PHP和Nginx的方法,较为详细的分析了Ubuntu环境编译安装PHP和Nginx的具体步骤、相关命令与操作技巧,需要的朋友可以参考下
    2019-08-08
  • centos7中firewall防火墙命令详解

    centos7中firewall防火墙命令详解

    本篇文章主要介绍了centos7中firewall防火墙命令详解,具有一定的参考价值,有需要的可以了解一下。
    2016-11-11
  • 浅谈find命令下的atime,ctime,mtime

    浅谈find命令下的atime,ctime,mtime

    下面小编就为大家带来一篇浅谈find命令下的atime,ctime,mtime。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • Linux/CentOS服务器安全配置通用指南

    Linux/CentOS服务器安全配置通用指南

    一般来说,对 Linux 系统的安全设定包括取消不必要的服务、限制远程存取、隐藏重要资料、修补安全漏洞、采用安全工具以及经常性的安全检查等,本文为大家分享Linux/CentOS服务器安全配置的通用方案
    2018-10-10
  • 解决CentOS 7升级Python到3.6.6后yum出错问题总结

    解决CentOS 7升级Python到3.6.6后yum出错问题总结

    这篇文章主要介绍了CentOS 7升级Python到3.6.6后yum出错问题解决总结,本文给大家介绍的非常详细具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09

最新评论