Linux

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > Linux > Linux根文件各文件夹作用

一文详解Linux根文件系统各文件夹作用

作者:一个平凡而乐于分享的小比特

本文深入解析了Linux系统中关键的目录结构,包括根分区、/etc、/boot、/var、/root、/tmp、/usr、/sbin、/mnt、/dev、/home和/proc等功能与用途,为理解Linux系统提供了清晰的指南,需要的朋友可以参考下

Linux目录结构全景图

/
├── bin/      (基本命令)
├── boot/     (启动文件)
├── dev/      (设备文件)
├── etc/      (配置文件)
├── home/     (用户目录)
├── lib/      (共享库)
├── media/    (可移动媒体)
├── mnt/      (临时挂载)
├── opt/      (可选软件)
├── proc/     (进程信息)
├── root/     (root用户家目录)
├── run/      (运行时数据)
├── sbin/     (系统命令)
├── srv/      (服务数据)
├── sys/      (系统信息)
├── tmp/      (临时文件)
├── usr/      (用户程序)
└── var/      (可变数据)

目录功能对比表

目录主要用途类比现实世界典型内容是否可删除
/bin基础命令工具箱ls, cp, rm, cat否(系统无法启动)
/sbin系统管理命令专用工具fdisk, ifconfig, reboot
/etc配置文件设置说明书passwd, network.conf
/home用户个人文件个人房间用户文档、设置是(但用户数据会丢失)
/root管理员家目录经理办公室root的配置文件可(但不建议)
/dev设备文件设备插槽/dev/sda1, /dev/tty
/lib共享库文件公共图书馆.so文件
/proc进程和内核信息监控仪表盘cpuinfo, meminfo否(虚拟文件系统)
/tmp临时文件公共白板缓存、临时下载是(重启可能丢失)
/usr用户程序资源应用商店程序、文档、库
/var可变数据仓库/日志室日志、邮件、数据库
/boot启动文件引擎启动器内核、grub
/opt可选软件包扩展应用区第三方大型软件是(软件会丢失)
/mnt临时挂载点临时停车位外部硬盘、ISO是(但会失去挂载点)
/media可移动媒体自动挂载区U盘、光盘

详细目录解析

1./bin 和 /usr/bin- 命令仓库

/bin/                    /usr/bin/
├── bash                 ├── python3
├── cat                  ├── gcc
├── ls                   ├── vim
├── cp                   ├── git
└── rm                   └── ssh

2./etc- 系统配置中心

/etc/
├── passwd           # 用户账户信息
├── group            # 用户组信息
├── fstab            # 文件系统挂载表
├── hosts            # 主机名映射
├── network/         # 网络配置
├── ssh/             # SSH服务器配置
└── apt/             # 包管理器配置

3./home 和 /root- 用户空间

/home/               /root/
├── alice/           ├── .bashrc
│   ├── Documents/   ├── .ssh/
│   ├── Downloads/   └── scripts/
│   └── .config/     
└── bob/
    ├── Music/
    └── projects/

4./dev, /proc, /sys- 系统接口

/dev/                 /proc/                /sys/
├── sda1              ├── 1/                ├── class/
├── tty0              │   ├── cmdline       ├── devices/
├── null              │   └── status        └── kernel/
├── zero              ├── cpuinfo
└── random            └── meminfo

5./var- 变化的数据

/var/
├── log/          # 日志文件
│   ├── auth.log  # 认证日志
│   └── syslog    # 系统日志
├── cache/        # 应用程序缓存
├── lib/          # 程序状态信息
├── mail/         # 用户邮件
├── run/          # 运行时数据(PID文件等)
├── spool/        # 排队数据(打印队列等)
└── www/          # 网站文件(如果运行Web服务器)

6./usr- 用户软件资源

/usr/
├── bin/          # 非必要命令
├── sbin/         # 非必要系统命令
├── lib/          # 库文件
├── share/        # 架构无关数据
│   ├── man/      # 手册页
│   └── doc/      # 文档
├── local/        # 本地安装软件
└── src/          # 内核源码

实际场景理解

场景1:系统启动过程

1. BIOS/UEFI → /boot/grub/ → /boot/vmlinuz* (内核)
2. 内核加载 → 挂载根文件系统 → 读取 /etc/fstab
3. 启动init/systemd → 读取 /etc/systemd/ 或 /etc/init.d/
4. 启动服务 → 日志写入 /var/log/

场景2:用户登录

1. 输入用户名密码 → /etc/passwd 验证
2. 登录成功 → 进入 /home/用户名/
3. 读取个人配置 → ~/.bashrc, ~/.profile
4. 执行命令 → 从 /bin/ 或 /usr/bin/ 查找

场景3:安装软件

# Debian/Ubuntu
sudo apt install nginx
# 文件安装到:
# 程序 → /usr/sbin/nginx
# 配置 → /etc/nginx/
# 日志 → /var/log/nginx/
# 网页 → /var/www/html/

重要注意事项

不要随意删除的目录:

定期清理的目录:

权限注意事项:

现代Linux的变化

  1. /bin, /sbin, /lib 现在通常是到 /usr 的符号链接
  2. /run - 取代了 /var/run,存储运行时数据
  3. systemd - 改变了 /etc/init.d 的启动方式

记忆技巧

实用命令

# 查看目录大小
du -sh /* | sort -h

# 查看磁盘使用情况
df -h

# 查找大文件
find / -type f -size +100M 2>/dev/null

# 查看目录结构
tree -L 2 /  # 显示两级目录

理解Linux目录结构是系统管理的基础,每个目录都有其特定用途,遵循文件系统层次标准(FHS),这保证了不同Linux发行版之间的一致性。

以上就是一文详解Linux根文件系统各文件夹作用的详细内容,更多关于Linux根文件各文件夹作用的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文