linux根目录

Ubuntu 根目录 (/) 遵循 Filesystem Hierarchy Standard (FHS) 标准

一、各目录简介

核心目录

目录 作用
/bin 基础二进制命令(如 [ls], [cp], [rm]),所有用户可用
/sbin 系统管理二进制命令(如 [ifconfig], [iptables]),需管理员权限
/boot 启动文件(内核 [vmlinuz]、引导加载程序 [grub] 等)
/dev 设备文件(如 [/dev/sda] 硬盘、[/dev/tty] 终端)
/etc 系统全局配置文件(如 [/etc/passwd] 用户信息、[/etc/network] 网络配置)
/home 用户主目录(每个用户独立子目录,如 [/home/user1])
/lib & /lib64 共享库文件(如 C 库 [libc.so.6])和内核模块([/lib/modules])

挂载与运行时

目录 作用
/media 自动挂载可移动设备(如 U 盘、光盘)
/mnt 临时手动挂载文件系统(如网络存储)
/proc 虚拟文件系统,提供进程和内核信息(如 [/proc/cpuinfo] CPU 信息)
/run 系统启动后的运行时数据(如 PID 文件、服务锁文件)

软件与数据

目录 作用
/opt 第三方应用程序安装目录(如商业软件)
/root root 用户的主目录
/srv 服务相关数据(如网站文件 [/srv/www]、FTP 数据)
/tmp 临时文件(所有用户可写,重启后可能清空)
/usr 用户级程序与资源(子目录包括 [bin], [lib], [share])
/var 可变数据(如日志 [/var/log]、缓存 [/var/cache]、数据库文件)

特殊目录

目录 作用
/sys 虚拟文件系统,用于管理和配置内核参数及硬件设备

示例场景

  • 修改网络配置 → 编辑 /etc/network/interfaces
  • 查看系统日志 → 检查 /var/log/syslog
  • 安装第三方软件 → 可选路径 /opt/usr/local

二、各目录递归详解

1. /bin
  • 作用 :基础用户命令(如ls, cp, mv
  • 子目录:无
  • 关键文件
    • bash:Bash shell
    • sh:系统默认shell(通常是Bash的符号链接)
    • date, echo, kill, ps, tar
2. /boot
  • 作用:系统引导文件
  • 子目录
    • /boot/grub/:GRUB引导程序配置
      • grub.cfg:GRUB菜单配置
    • /boot/efi/:EFI固件引导分区(UEFI系统)
  • 关键文件
    • vmlinuz-<version>:内核镜像
    • initrd.img-<version>:初始内存盘
    • config-<version>:内核配置文件
3. /dev
  • 作用:设备文件与特殊文件
  • 子目录
    • /dev/disk/:磁盘设备映射
    • /dev/pts/:伪终端(pty)
    • /dev/shm/:共享内存(tmpfs)
  • 关键文件
    • sda, sda1:硬盘及分区
    • tty, console:终端设备
    • null, zero, random, urandom
4. /etc
  • 作用:系统配置文件
  • 重要子目录
    • /etc/apt/:Debian/Ubuntu包管理配置
      • sources.list:软件源列表
    • /etc/ssh/:SSH配置
      • sshd_config:SSH服务配置
    • /etc/sysconfig/:系统服务配置(CentOS等)
    • /etc/network/:网络配置(Ubuntu)
    • /etc/fstab:文件系统挂载表
    • /etc/passwd:用户账户信息
    • /etc/group:用户组信息
    • /etc/shadow:加密密码存储(root权限)
5. /home
  • 作用:普通用户家目录
  • 结构
    • /home/username/:用户主目录
      • .bashrc:用户bash配置
      • .ssh/:SSH密钥(id_rsa, id_rsa.pub
      • .cache/:应用缓存
      • .config/:用户应用配置
6. /lib
  • 作用:系统库文件
  • 子目录
    • /lib/modules/:内核模块
    • /lib64/:64位系统库
  • 关键文件
    • ld-linux.so.2:动态链接器
    • libc.so.6:C标准库
7. /media
  • 作用:可移动媒体自动挂载点
  • 示例
    • /media/usb-drive/:U盘挂载点
    • /media/cdrom/:光驱挂载点
8. /mnt
  • 作用:手动挂载点

  • 示例

    bash 复制代码
    mount /dev/sda1 /mnt  # 临时挂载硬盘分区
9. /opt
  • 作用:第三方软件安装目录
  • 示例
    • /opt/nginx/:Nginx服务器
    • /opt/java/:Java运行环境
10. /proc
  • 作用:内核与进程信息(伪文件系统)
  • 关键文件
    • /proc/cpuinfo:CPU信息
    • /proc/meminfo:内存信息
    • /proc/loadavg:系统负载
    • /proc/[pid]/:进程详细信息(如/proc/1/为init进程)
11. /root
  • 作用:root用户家目录
  • 关键文件
    • .bashrc, .ssh/:与普通用户类似
12. /run
  • 作用:运行时数据(系统启动后生成)
  • 关键文件
    • /run/nginx.pid:Nginx进程ID
    • /run/user/1000/:普通用户运行时数据
13. /sbin
  • 作用:系统管理命令(root权限)
  • 关键文件
    • init:系统初始化进程
    • shutdown, reboot:关机/重启命令
    • ifconfig, ip:网络配置工具
14. /srv
  • 作用:服务数据存储
  • 示例
    • /srv/www/:Web服务器内容
    • /srv/svn/:Subversion仓库
15. /sys
  • 作用:内核设备信息(伪文件系统)
  • 示例
    • /sys/class/net/eth0/:网络接口信息
    • /sys/devices/:硬件设备树
16. /tmp
  • 作用:临时文件存储(重启后清空)
  • 安全特性
    • sticky位:仅文件所有者可删除
17. /usr
  • 作用 :用户程序与资源(类似Windows的C:\Program Files
  • 子目录
    • /usr/bin/:普通用户命令(如firefox, git
    • /usr/sbin/:系统管理命令(如apache2ctl
    • /usr/share/:共享资源(文档、图标)
    • /usr/include/:C语言头文件
    • /usr/lib/:程序库文件
    • /usr/local/:本地编译安装的软件
18. /var
  • 作用:可变数据(日志、邮件、缓存)
  • 子目录
    • /var/log/:系统日志
      • syslog:通用系统日志
      • auth.log:认证日志
      • kern.log:内核日志
    • /var/lib/:程序状态数据(如MySQL数据库)
    • /var/spool/:队列文件(如邮件队列)
    • /var/cache/:应用缓存(如/var/cache/apt/

三、特殊目录与文件补充

  1. /dev/null

    • 黑洞设备,写入的数据会被丢弃,常用于重定向错误输出。
  2. /dev/zero

    • 生成空数据,用于填充文件或内存。
  3. /lost+found

    • 文件系统检查(fsck)时恢复的文件存储。
  4. /etc/init.d/

    • 系统服务启动脚本(System V初始化)。
  5. /etc/systemd/

    • systemd服务配置(现代Linux发行版)。

四、目录结构速查表

目录 用途概括 典型子目录/文件示例
/bin 用户基础命令 ls, cp, bash
/etc 系统配置 passwd, fstab, ssh/
/var 日志、邮件、缓存 log/, mail/, cache/
/usr 用户程序与资源 bin/, share/, include/
/proc 内核与进程信息 cpuinfo, meminfo, pid/
/dev 设备文件 sda, tty, shm/
/boot 引导文件 vmlinuz, grub/

通过以上递归结构,可全面掌握Linux文件系统的核心架构。不同发行版可能存在细微差异,但整体遵循FHS标准。

相关推荐
movee2 小时前
一台低配云主机也能轻松愉快地玩RDMA
linux·人工智能·后端
饭九钦vlog3 小时前
机器人匹诺曹机制,真话假话平衡机制
服务器·经验分享·新浪微博
QuiteCoder3 小时前
【Linux】软硬连接与动静态库
linux·运维·服务器
꧁༺朝花夕逝༻꧂4 小时前
Linux基础--用户管理
linux·运维
鹿屿二向箔5 小时前
72MHz的MCU能支持多大频率的传感器数据采样率?
服务器·网络·单片机
酥暮沐5 小时前
K8S 集群搭建——cri-dockerd版
linux·容器·kubernetes
美好的事情总会发生5 小时前
SDIO(Secure Digital Input Output)详解
linux·嵌入式硬件·硬件工程
liuyunluoxiao6 小时前
进程(上)【Linux操作系统】
linux
琪琪花6 小时前
sshfs 将远程服务器上的文件系统挂载到本地目录
linux·运维·服务器