目录
[3 文件检索:locate 与 find](#3 文件检索:locate 与 find)
[3.1 locate:基于索引的快速检索](#3.1 locate:基于索引的快速检索)
[3.2 find:实时遍历的精准检索](#3.2 find:实时遍历的精准检索)
[第二部分 RH124 其他补充重点](#第二部分 RH124 其他补充重点)
[5.1 man 手册页](#5.1 man 手册页)
[5.2 --help 与 /usr/share/doc](#5.2 --help 与 /usr/share/doc)
[6.1 vim 三种模式](#6.1 vim 三种模式)
[6.2 vim 常用操作](#6.2 vim 常用操作)
[7.1 日志架构与 /var/log](#7.1 日志架构与 /var/log)
[7.2 journalctl 查看日志](#7.2 journalctl 查看日志)
[8.1 tar 归档与压缩](#8.1 tar 归档与压缩)
[8.3 rsync 与 scp 远程传输](#8.3 rsync 与 scp 远程传输)
[9.1 swap 的作用与查看](#9.1 swap 的作用与查看)
[9.2 创建与启用 swap](#9.2 创建与启用 swap)
第一部分 存储管理
1 存储基础:块设备、分区与文件系统
1.1 存储设备与块设备
存储设备是计算机中用于持久化数据 的物理硬件,如机械硬盘(HDD)、固态硬盘(SSD)、U 盘等。在 Linux 中,这些设备被抽象为块设备文件 ,存放在 /dev 目录下。不同接口类型的设备命名规则如下:
|-------------------|------------------------------|---------------------|
| 存储接口类型 | 设备命名 | 说明 |
| SATA / SCSI / USB | /dev/sda、/dev/sdb... | 按检测顺序编号,字母依次递增 |
| NVMe SSD | /dev/nvme0n1、/dev/nvme1n1... | nvme 控制器编号 + 命名空间编号 |
| 虚拟机磁盘 | /dev/vda、/dev/vdb... | virtio 虚拟磁盘 |
1.2 分区与格式化
- 分区 :将一个大的物理存储设备划分为多个独立的逻辑区域,每个分区就是一个独立的块设备(如/dev/sda1、/dev/sdb2)。不同分区可用于不同用途,如系统分区、数据分区、交换分区。
- 格式化 :在分区上创建文件系统的过程,定义了数据在存储介质上的组织方式、命名规则和访问接口。
- RHEL 默认使用 XFS 作为本地文件系统,同时也支持 ext4、vfat 等。
1.3 文件系统与挂载
- 文件系统 :操作系统管理和组织存储设备上数据的方法和数据结构,让我们可以用"文件"和"目录"的抽象概念操作数据,而无需关心底层物理块。
- 挂载(Mount) :将一个文件系统(通常是分区或设备)附加到 Linux 文件系统树的某个空目录(挂载点)上,使该文件系统的内容可被访问。
- 挂载点 :文件系统在目录树中的入口,如 /、/boot、/mnt 等。卸载(umount) 则是挂载的逆操作。
2 存储管理:查看、挂载与卸载
2.1 查看存储信息
|-----------|---------------------------------|-------------------|
| 命令 | 作用 | 示例 |
| df -h | 查看文件系统磁盘空间,以1024 为单位的人类可读格式 | df -h |
| df -H | 查看文件系统磁盘空间,以 SI 单位(1000)显示 | df -H |
| du -sh | 估算文件或目录占用的磁盘空间 | du -sh /usr/share |
| lsblk -fp | 列出块设备及分区,显示完整路径、UUID、文件系统类型和挂载点 | lsblk -fp |
2.2 挂载与卸载文件系统
通过设备路径挂载:
- mkdir -p /mnt/data && mount /dev/sdb1 /mnt/data
通过 UUID 挂载(推荐): UUID 是文件系统的唯一标识符,比设备路径更稳定,不会因设备检测顺序变化而改变。
- lsblk -fp /dev/sdb1 # 先查询 UUID
- mount UUID="efd314d0-b56e-45db-bbb3-3f32ae98f652" /mnt/data # 再挂载
卸载注意事项: 卸载前必须确保没有任何进程正在访问该挂载点下的文件,否则会卸载失败;强制卸载可能导致数据丢失或损坏。
- umount /mnt/data # 卸载前先确认无进程占用
3 文件检索:locate 与 find
3.1 locate:基于索引的快速检索
- 从预生成的数据库(mlocate.db )中查找文件,速度极快。
- 数据库非实时更新 ,需手动执行 updatedb 或等待每日自动更新。
- sudo updatedb && locate passwd # 更新数据库后搜索含 passwd 的文件
3.2 find:实时遍历的精准检索
find 通过实时遍历文件系统树查找文件,功能更强、结果更准,但速度较慢;支持按文件名、权限、大小、类型、时间等多种条件组合搜索。
|----------|----------------------------------|-----------------|
| 搜索维度 | 示例命令 | 说明 |
| 按文件名 | find / -name sshd_config | 精确查找文件名 |
| 模糊匹配 | find /etc -name '*pass*' | 通配符模糊匹配 |
| 忽略大小写 | find / -iname '*messages*' | 不区分大小写 |
| 按权限 | find /home -perm 764 | 查找权限为 764 的文件 |
| 按权限(符号) | find /home -perm u=rwx,g=rw,o=r | 按符号权限匹配 |
| 按大小 | find /usr/bin -type f -size +50k | 查找大于 50KB 的普通文件 |
| 按类型 | find /etc -type d | 查找所有目录 |
4 存储管理总结
- 快速查找优先使用 locate :基于索引,秒级返回。
- 复杂、精准的检索需求用 find :支持多维条件组合,实时准确。
- 挂载设备使用 UUID :可避免因设备顺序变化导致的挂载失败。
第二部分 RH124 其他补充重点
5 通过本地文档获取帮助
5.1 man 手册页
- man 命令名 :查看命令的手册页,是排障的第一手资料。
- 常用手册章节:1 用户命令、5 文件格式、8 系统管理。
- man -k 关键词 :按关键词搜索相关手册页。
5.2 --help 与 /usr/share/doc
- 命令 --help :快速查看命令用法摘要,无需翻手册。
- /usr/share/doc/ :软件包自带的文档目录,含示例配置与说明。
6 创建、查看和编辑文本文件(vim)
6.1 vim 三种模式
|--------|----------------|----------------|
| 模式 | 进入方式 | 主要用途 |
| 命令模式 | 启动 vim 默认进入 | 移动光标、删除、复制、粘贴 |
| 插入模式 | 按 i / a / o 进入 | 输入和修改文本 |
| 末行模式 | 按 : 进入 | 保存退出、搜索替换、行号设置 |
6.2 vim 常用操作
- ★ 必记 :Esc 返回命令模式;:wq 保存退出;:q! 不保存强制退出。
- 命令模式常用:dd 删除当前行、yy 复制当前行、p 粘贴、/关键词 搜索。
- vim filename # 打开或创建文件进行编辑
7 分析和存储日志
7.1 日志架构与 /var/log
系统日志由 rsyslog 服务统一收集并写入 /var/log 目录,常见日志文件如下:
|-------------------|-------------|
| 日志文件 | 记录内容 |
| /var/log/messages | 系统消息与通用服务日志 |
| /var/log/secure | 认证与安全相关事件 |
| /var/log/maillog | 邮件服务日志 |
| /var/log/boot.log | 系统启动日志 |
7.2 journalctl 查看日志
- journalctl :查看 systemd 统一管理的日志。
- journalctl -u sshd # 查看指定服务日志
- journalctl -p err # 按级别过滤(err 及以上)
- journalctl -b # 查看本次启动以来的日志
- journalctl -f # 实时跟踪新日志
7.3 时间同步
- timedatectl :查看与设置系统时间、时区。
- chronyd :RHEL 9 默认的时间同步服务(NTP 客户端/服务端)。
8 归档和传输文件
8.1 tar 归档与压缩
|--------------|----------------------|------------------------------|
| 选项 | 作用 | 示例 |
| -c / -x / -t | 创建 / 解包 / 列出归档 | tar -czvf backup.tar.gz /dir |
| -z / -j / -J | gzip / bzip2 / xz 压缩 | tar -xzvf backup.tar.gz |
| -v / -f | 显示详细信息 / 指定归档文件名 | tar -tf backup.tar.gz |
8.2 压缩工具
|--------|----------|--------------------|
| 工具 | 压缩后缀 | 解压命令 |
| gzip | .gz | gunzip 或 gzip -d |
| bzip2 | .bz2 | bunzip2 或 bzip2 -d |
| xz | .xz | unxz 或 xz -d |
| zip | .zip | unzip |
8.3 rsync 与 scp 远程传输
- rsync :增量同步,-a 归档、-v 详细、-z 压缩;本地与远程均可。
- rsync -avz /dir/ user@host:/dest/
- scp :远程复制文件,基于 SSH 加密传输。
- scp file user@host:/path/ # 本地复制到远程
9 交换空间(swap)管理
9.1 swap 的作用与查看
- swap :内存不足时的扩展空间,可为交换分区或交换文件。
- free -h :查看内存与 swap 使用情况。
9.2 创建与启用 swap
- ★ 必记 :创建交换文件三步------fallocate 分配 → mkswap 格式化 → swapon 启用。
- fallocate -l 2G /swapfile && chmod 600 /swapfile && mkswap /swapfile && swapon /swapfile
- 持久化:将 /swapfile swap swap defaults 0 0 写入 /etc/fstab 。
- 禁用:swapoff /swapfile