Linux 系统目录功能完整解析

1751816011@qq.com
2025-10-19 / 0 评论 / 3 阅读 / 正在检测是否收录...

Linux 系统目录功能完整解析

Linux 系统采用树状目录结构,遵循 文件系统层次结构标准(FHS)。以下是主要目录及其功能的详细解析:


核心系统目录

目录路径功能说明关键内容示例
根目录/整个文件系统的起点所有其他目录的父目录
/bin 基础系统命令(所有用户可用)ls, cp, bash, cat
/sbin 系统管理命令(通常需要 root 权限)fdisk, ifconfig, reboot, iptables
/lib 系统核心库文件(32位系统)*.so 共享库文件
/lib64 64位系统核心库文件64位共享库文件
/boot 系统启动文件vmlinuz(内核), initramfs, GRUB 配置文件
/dev 设备文件sda(磁盘), tty(终端), null, random
/etc 系统配置文件passwd, hosts, fstab, 网络配置
/proc 内核与进程信息(虚拟文件系统)/proc/cpuinfo, /proc/meminfo
/sys 内核设备信息(虚拟文件系统)硬件设备树,驱动信息
/run 运行时数据(系统启动后生成)PID 文件,锁文件,设备锁定
/tmp 临时文件(所有用户可写,重启后清除)临时下载,缓存文件

用户空间目录

目录功能说明关键内容示例
/home用户主目录(每个用户独立子目录)~/.bashrc, ~/Documents, ~/Downloads
/rootroot 用户主目录(普通用户无权限访问)系统管理员专用配置文件
/usr用户程序与数据(Unix System Resources)应用程序,库文件,文档
/var可变数据文件(日志、缓存等经常变化的文件)日志文件,邮件队列,数据库文件

/usr 子目录详解

目录功能说明
/usr/bin用户安装的命令行程序(非核心)
/usr/sbin用户安装的系统管理命令
/usr/lib应用程序的库文件
/usr/includeC/C++ 头文件
/usr/share架构无关的共享数据(文档、图标、字体等)
/usr/local本地安装软件(系统升级不影响此目录)
/usr/src内核源代码(通常为空,开发者使用)
📌 最佳实践:用户编译安装的软件应放在 /usr/local 下,避免与系统包管理器冲突

/var 子目录详解

目录功能说明
/var/log系统日志文件
/var/cache应用程序缓存数据
/var/lib程序状态信息(数据库、包管理元数据等)
/var/mail用户邮箱文件
/var/spool任务队列(打印任务、cron 任务等)
/var/tmp重启后保留的临时文件(比 /tmp 生命周期长)

特殊目录

目录功能说明
/mnt临时挂载点(手动挂载文件系统)
/media可移动设备挂载点(自动挂载 U 盘、光盘等)
/srv服务数据(网站、FTP 等服务的文件)
/opt可选应用程序(大型商业软件安装位置)
/lost+found文件恢复(fsck 修复后的文件碎片)

目录结构示意图

/
├── bin -> usr/bin       # 基础命令
├── boot                 # 启动文件
├── dev                  # 设备文件
├── etc                  # 配置文件
├── home                 # 用户目录
│   ├── user1
│   └── user2
├── lib -> usr/lib       # 库文件
├── mnt                  # 临时挂载
├── opt                  # 可选软件
├── proc                 # 进程信息
├── root                 # root主目录
├── run                  # 运行时数据
├── sbin -> usr/sbin     # 系统命令
├── srv                  # 服务数据
├── sys                  # 系统设备
├── tmp                  # 临时文件
├── usr                  # 用户程序
│   ├── bin
│   ├── lib
│   ├── local
│   └── share
└── var                  # 可变数据
    ├── log
    ├── cache
    └── lib

关键配置文件位置

  1. 用户相关

    • /etc/passwd - 用户账户信息
    • /etc/shadow - 加密密码存储
    • /etc/group - 用户组信息
    • /etc/sudoers - sudo 权限配置
  2. 网络配置

    • /etc/hosts - 本地域名解析
    • /etc/resolv.conf - DNS 服务器配置
    • /etc/sysconfig/network-scripts/ - 网络接口配置(RHEL系)
    • /etc/netplan/ - 网络配置(Ubuntu)
  3. 系统服务

    • /etc/systemd/system/ - 系统服务配置文件
    • /etc/init.d/ - SysV init 脚本(旧系统)
  4. 文件系统

    • /etc/fstab - 文件系统挂载表
    • /etc/mtab - 当前挂载的文件系统

目录操作最佳实践

  1. 权限管理

    # 查看目录权限
    ls -ld /path/to/directory
    
    # 修改目录所有者
    sudo chown user:group /path
    
    # 修改目录权限
    sudo chmod 755 /path  # rwxr-xr-x
  2. 磁盘空间分析

    # 查看磁盘使用情况
    df -h
    
    # 分析目录大小
    du -sh /var/log/*
    
    # 查找大文件
    find / -type f -size +100M 2>/dev/null
  3. 日志文件管理

    # 查看系统日志
    journalctl -xe
    
    # 查看特定服务日志
    sudo tail -f /var/log/nginx/error.log
    
    # 日志轮转配置
    /etc/logrotate.conf

常见问题解决

问题1:磁盘空间不足

  1. 检查大文件:

    sudo du -h / | sort -h | tail -n 20
  2. 清理日志:

    sudo journalctl --vacuum-size=200M  # 保留200MB日志
  3. 清理包缓存:

    sudo apt clean      # Debian/Ubuntu
    sudo dnf clean all  # RHEL/CentOS

问题2:文件系统损坏

# 检查文件系统
sudo fsck /dev/sda1

# 修复只读文件系统
mount -o remount,rw /

问题3:关键目录误删恢复

  1. 使用 testdisk 扫描分区
  2. 使用 extundelete 恢复 ext4 文件
  3. 从备份恢复(强调定期备份的重要性)

各发行版差异

目录/功能Debian/UbuntuRHEL/CentOSopenEuler
网络配置/etc/netplan/*.yaml/etc/sysconfig/network-scripts//etc/sysconfig/network-scripts/
包管理/var/lib/apt//var/lib/dnf//var/lib/dnf/
服务管理systemctlsystemctlsystemd
内核位置/boot/vmlinuz-*/boot/vmlinuz-*/boot/vmlinuz-*
默认Shell/bin/bash/bin/bash/bin/bash
掌握 Linux 目录结构是系统管理的基石。建议定期备份关键目录(如 /etc, /home, /var),并使用版本控制管理配置文件(如 Git)。
0

评论 (0)

取消