Linux 磁盘管理完整指南:从 Disk 到 Mount
Linux 磁盘管理完整指南:从 Disk 到 Mount
在 Linux 中,一块磁盘从“未使用”到“可用存储”,必须经历一套标准抽象层级:
Disk → GPT → Partition(s) → Filesystem → Mount理解这条链路,是掌握 Linux 存储管理的核心。
一、核心概念解释(必须理解)
1. Disk(物理磁盘)
Disk 是最底层的物理设备,例如:
- /dev/sda
- /dev/sdb
特点:
- 只是“原始存储空间”
- 没有结构
- 无法直接存文件(现代系统不推荐)
2. GPT(分区表)
GPT(GUID Partition Table)是磁盘的“目录结构”。
作用:
- 记录磁盘如何被划分
- 管理多个分区
- 支持大容量磁盘(>2TB)
特点:
- 写在磁盘最前端
- 不存数据,只存“分区规划”
3. Partition(分区)
Partition 是 GPT 定义出来的“逻辑区域”。
例如:
/dev/sdb1 /dev/sdb2作用:
- 将一块磁盘划分为多个独立区域
- 每个分区可以独立格式化和使用
4. Filesystem(文件系统,例如 ext4)
文件系统决定“数据如何存储”。
ext4 的作用:
- 管理文件和目录
- 负责 inode / block 分配
- 提供日志(防崩溃恢复)
没有文件系统的分区:
- 不能存文件
- Linux 无法正常使用
5. Mount(挂载)
Linux 没有盘符概念,只有目录树。
Mount 的作用:
👉 把磁盘映射到某个目录
例如:
/dev/sdb1 → /data之后访问:
cd/data二、标准流程(单分区场景)
这是最常见的生产标准:
Disk → GPT → 1 Partition → ext4 → MountStep 1:查看磁盘
lsblk或:
fdisk-lStep 2:清空旧结构(可选)
wipefs-a/dev/sdX或:
parted/dev/sdX mklabel gptStep 3:创建 GPT
parted/dev/sdX mklabel gptStep 4:创建单分区(100%空间)
parted/dev/sdX mkpart primary ext40%100%生成:
/dev/sdX1Step 5:格式化文件系统
mkfs.ext4 /dev/sdX1Step 6:挂载使用
mkdir-p/data/diskmount/dev/sdX1 /data/diskStep 7:开机自动挂载
blkid /dev/sdX1编辑:
/etc/fstab写入:
UUID=xxxx /data/disk ext4 defaults 0 2三、多个分区的情况(重点)
很多人误以为“一块盘只能一个用途”,但 Linux 支持多分区共存。
1. 多分区结构示例
/dev/sdb ├── sdb1 → /data ├── sdb2 → /backup ├── sdb3 → /logs2. 多分区适用场景
适合:
- 不同数据隔离(日志 / 数据 / 备份)
- 权限隔离
- IO 性能分区管理
- 老旧系统或传统架构
3. 创建多个分区的流程
Step 1:创建 GPT
parted/dev/sdX mklabel gptStep 2:创建多个分区
例如三分区:
parted/dev/sdX mkpart primary ext40%30%parted/dev/sdX mkpart primary ext430%70%parted/dev/sdX mkpart primary ext470%100%Step 3:检查分区
lsblk结果:
/dev/sdX1 /dev/sdX2 /dev/sdX3Step 4:分别格式化
mkfs.ext4 /dev/sdX1 mkfs.ext4 /dev/sdX2 mkfs.ext4 /dev/sdX3Step 5:分别挂载
mount/dev/sdX1 /datamount/dev/sdX2 /backupmount/dev/sdX3 /logs4. 多分区 vs 单分区(重要对比)
| 方式 | 优点 | 缺点 |
|---|---|---|
| 单分区 | 简单、空间利用率高 | 隔离性差 |
| 多分区 | 数据隔离清晰 | 空间不可动态共享 |
四、最佳实践(生产建议)
推荐方案(现代系统)
👉单分区 + LVM 或 ZFS
原因:
- 避免空间浪费
- 可动态扩容
- 管理更灵活
不推荐
- 一块盘切太多小分区(浪费管理成本)
- 未规划直接 mkfs on disk(非标准)
五、总结(核心理解)
整个 Linux 磁盘模型可以理解为:
Disk(硬件) ↓ GPT(结构规划) ↓ Partition(逻辑切块) ↓ Filesystem(数据组织方式) ↓ Mount(接入系统)六、一句话理解本质
👉 Linux 磁盘管理的本质是:
把“原始硬件”逐层抽象成“可挂载的目录结构”
