Administrator
发布于 2026-03-24 / 0 阅读
0
0

RHCSA/HCIA③:文件管理

一、Linux的文件目录结构

文件系统结构的对比

  • Linux是一个单根倒数状结构。所有的文件子目录都是从‘/’出发,/ 既是Linux中的根目录(根分区),也是Linux中路径的分隔符

  • Linux中的命令和文件均区分大小写

  • Windows是一个多跟多树状结构,每一个盘就是一个根

  • Windows中的命令和文件均不区分大小写

一切皆文件

在 Linux 世界里,“一切皆文件”(Everything is a File)是其最核心的设计哲学。不论是真正的文档(如 .txt、.jpg),还是硬件设备(如硬盘、键盘、鼠标),或者是网络通信、进程信息,系统都给它们指定了文件路径。

所有东西都抽象成了一个可以“打开、读取、写入、关闭”的文件描述符 (File Descriptor)。统一接口之后,程序员不需要为显卡写一套代码,再为键盘写一套完全不同的代码。只要学会了“读写文件”,就能操控整个系统。

而 Windows 把功能封装成专业化的 API(应用程序接口)。

二、Linux中的主要目录和作用

  • /afs 专门用来挂载分布式文件系统 (Andrew File System)

  • /boot 存放系统的内核和启动引导文件

  • /dev 存放系统中所有的设备接口文件,删除会导致不可逆故障

  • /etc 存放系统、软件相关的配置文件

  • /home/username 表示普通用户的家目录,以用户名命名,例如/home/zhangsan 表示张三的家目录

  • /lost+found 当系统非正常关机,会将文件碎片文件保存到此目录下

  • /media和/mnt 默认为空,作为光盘、U盘、硬盘等设备临时挂载的目录

    • 在安装了图形化界面的情况下,U盘等会自动挂载到/media

  • /opt 存放额外安装的、独立的大型软件包,一般都为空

  • /proc 进程信息和系统运行时内核状态,重启时清空

  • /root 表示超级管理员root用户的家目录;存放用户相关的数据,例如用户的桌面文件、下载的文件、以及自定义的软件配置文件

  • /run 存放系统自启动以来运行时的信息,重启时清空

  • /srv 默认为空,存储特定服务的一些文件,比如网站文件、ftp文件等等

  • /sys 存放硬件信息、可以直接修改的硬件参数等,重启时清空

  • /tmp 系统的临时目录,所有的用户都可以将自己的临时文件存放到该目录下,重启后清空所有内容

  • /usr 共享的库,依赖的文件,自定义安装的软件都存放在该目录下,删除会导致不可逆故障

    • /usr/bin 存放用户的指令、安装的软件

    • /usr/sbin 存放管理员的指令

    • /bin和/sbin是软链接(快捷方式),指向/usr/bin和/usr/sbin

    • /usr/local 手动安装的软件的根目录

    • /usr/local/bin 源码编译安装的软件

    • /usr/local/lib 用户自建库,包含手动编译的.so文件

  • /usr/lib和/usr/lib64 主要存放的是系统运行所必需的共享库

    • 文件名通常以 .so(Shared Object)结尾,它们就像是 Windows 里的 .dll 文件,包含了很多程序通用的代码。

    • /lib和/lib64 软链接(快捷方式),指向/usr/lib和/usr/lib64。现代发行版本的趋势是系统基础文件和用户数据彻底分开,通过软链接,无论脚本写哪个路径,系统都能找到对应的程序。

  • /var 存放服务的数据和系统的日志

三、文件和目录命名规则

当创建的文件名中带有特殊符号且这个符号属于Shell元字符(具有特殊含义),应该使用单引号转义。

touch 'fchao*file^'

特殊符号TAB时会补齐转译符号\,在ls时会被单引号标注

file


评论