Linux 磁盘分区教程 – 从入门到实战

引言

在 Linux 系统管理和使用中,磁盘分区是一项基础而重要的技能。无论是安装新系统、扩容存储空间,还是优化磁盘性能,合理的分区方案都能带来更好的使用体验。本文将详细介绍 Linux 磁盘分区的完整教程,从基础知识到实战操作,帮助你掌握这项必备技能。

一、Linux 磁盘分区基础知识

1.1 什么是磁盘分区

磁盘分区是将物理硬盘划分为多个逻辑存储单元的过程。每个分区可以独立格式化、挂载和使用,就像独立的硬盘一样。分区的主要目的包括:

  • 数据组织:将系统文件、用户数据、应用程序分开存储
  • 安全性:某个分区出现问题不影响其他分区
  • 性能优化:根据用途选择合适的文件系统
  • 多系统共存:支持 Windows+Linux 双系统

1.2 分区类型

主分区(Primary Partition):最多 4 个,可直接用于启动系统

扩展分区(Extended Partition):只能有 1 个,用于容纳逻辑分区

逻辑分区(Logical Partition):数量不限,位于扩展分区内

1.3 常见文件系统

文件系统 适用场景 特点
ext4 通用 Linux 系统 稳定、成熟、兼容性好
XFS 大文件存储 高性能、支持超大文件
Btrfs 高级功能需求 支持快照、压缩、RAID
swap 虚拟内存 用于内存交换空间

二、查看磁盘信息

2.1 使用 lsblk 命令

lsblk
lsblk -f  # 显示文件系统信息
lsblk -m  # 显示权限信息

lsblk 以树状结构显示所有块设备,直观易懂,是最常用的磁盘查看工具。

2.2 使用 fdisk 命令

sudo fdisk -l           # 列出所有磁盘分区
sudo fdisk -l /dev/sda  # 查看特定磁盘

2.3 使用 df 和 du 命令

df -h   # 查看磁盘空间使用情况
du -sh /path  # 查看目录大小

三、使用 fdisk 进行分区(传统方法)

3.1 启动 fdisk

sudo fdisk /dev/sdb

注意:将/dev/sdb替换为实际要操作的磁盘设备名。

3.2 常用 fdisk 命令

命令 功能
n 新建分区
d 删除分区
p 打印分区表
w 写入并退出
q 退出不保存
t 更改分区类型
m 显示帮助

3.3 创建新分区示例

sudo fdisk /dev/sdb

# 进入交互界面后:
Command (m for help): n      # 新建分区
Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)
Select (default p): p        # 选择主分区
Partition number (1-4, default 1): 1
First sector (2048-..., default 2048):  # 直接回车使用默认值
Last sector, +sectors or +size{K,M,G,T,P} (2048-..., default ...): +50G  # 分区大小 50GB

Command (m for help): w      # 写入并退出

3.4 删除分区

sudo fdisk /dev/sdb
Command (m for help): d      # 删除分区
Partition number (1-4, default 1): 1  # 选择要删除的分区号
Command (m for help): w      # 写入并退出

四、使用 parted 进行分区(推荐方法)

4.1 parted 的优势

  • 支持大于 2TB 的磁盘(GPT 分区表)
  • 更直观的命令行界面
  • 支持在线调整分区大小

4.2 创建 GPT 分区表

sudo parted /dev/sdb mklabel gpt

警告:此操作会清除磁盘上所有数据!

4.3 创建分区

sudo parted /dev/sdb

# 进入 parted 交互界面:
(parted) mkpart primary ext4 1MiB 50GiB    # 创建 50GB ext4 分区
(parted) mkpart primary ext4 50GiB 100GiB  # 创建第二个 50GB 分区
(parted) print                             # 查看分区表
(parted) quit                              # 退出

4.4 parted 常用命令

命令 功能
mklabel gpt/msdos 创建 GPT 或 MBR 分区表
mkpart 创建分区
rm <number> 删除分区
print 显示分区表
resizepart 调整分区大小
help 显示帮助

五、格式化分区

5.1 格式化为 ext4

sudo mkfs.ext4 /dev/sdb1

5.2 格式化为 XFS

sudo mkfs.xfs /dev/sdb1

5.3 创建 swap 分区

sudo mkswap /dev/sdb2
sudo swapon /dev/sdb2  # 启用 swap

5.4 查看文件系统信息

sudo blkid /dev/sdb1
sudo file -s /dev/sdb1

六、挂载分区

6.1 创建挂载点

sudo mkdir -p /data/disk1

6.2 临时挂载

sudo mount /dev/sdb1 /data/disk1
df -h  # 验证挂载

6.3 永久挂载(修改 fstab)

# 1. 获取 UUID
sudo blkid /dev/sdb1

# 2. 编辑 fstab 文件
sudo nano /etc/fstab

# 3. 添加以下内容(替换为实际 UUID):
UUID=xxxx-xxxx-xxxx /data/disk1 ext4 defaults 0 2

# 4. 测试配置
sudo mount -a

6.4 fstab 配置说明

# 字段说明:
# UUID=xxx     - 分区 UUID
# /data/disk1  - 挂载点
# ext4         - 文件系统类型
# defaults     - 挂载选项
# 0            - dump 备份选项(0 表示不备份)
# 2            - fsck 检查顺序(根分区为 1,其他为 2,0 表示不检查)

七、调整分区大小

7.1 使用 resize2fs(ext4)

# 1. 卸载分区
sudo umount /dev/sdb1

# 2. 检查文件系统
sudo e2fsck -f /dev/sdb1

# 3. 调整文件系统大小
sudo resize2fs /dev/sdb1 100G

# 4. 重新挂载
sudo mount /dev/sdb1 /data/disk1

7.2 使用 parted 调整

sudo parted /dev/sdb
(parted) resizepart 1 100GB  # 调整 1 号分区到 100GB
(parted) quit

八、实战案例

案例 1:新硬盘初始化

# 1. 查看新硬盘
lsblk

# 2. 创建 GPT 分区表
sudo parted /dev/sdc mklabel gpt

# 3. 创建单个分区(使用全部空间)
sudo parted /dev/sdc mkpart primary ext4 1MiB 100%

# 4. 格式化
sudo mkfs.ext4 /dev/sdc1

# 5. 创建挂载点并挂载
sudo mkdir -p /data/storage
sudo mount /dev/sdc1 /data/storage

# 6. 配置永久挂载
echo "UUID=$(sudo blkid -s UUID -o value /dev/sdc1) /data/storage ext4 defaults 0 2" | sudo tee -a /etc/fstab

案例 2:扩容根分区

# 警告:操作根分区有风险,建议先备份数据!

# 1. 使用 live CD/USB 启动系统

# 2. 使用 gparted 图形工具调整分区

# 3. 或使用命令行:
sudo parted /dev/sda resizepart 1 100%
sudo resize2fs /dev/sda1

九、常见问题与解决方案

9.1 分区后无法挂载

原因:未格式化或文件系统损坏

解决:

sudo fsck /dev/sdb1  # 检查并修复

9.2 磁盘空间不足

解决:使用df -h查看使用情况,清理不必要文件或扩容

9.3 挂载点繁忙无法卸载

sudo lsof +f -- /mount/point  # 查看占用进程
sudo fuser -km /mount/point   # 终止占用进程
sudo umount /mount/point

结论

Linux 磁盘分区是系统管理的核心技能之一。通过本文的学习,你应该掌握了:

  • 分区基础知识和常见文件系统
  • 使用 fdisk 和 parted 进行分区操作
  • 格式化、挂载和配置永久挂载
  • 分区大小调整方法
  • 常见问题的排查与解决

重要提醒:分区操作涉及数据安全,操作前务必备份重要数据!在生产环境中,建议先在测试环境练习熟练后再进行操作。

参考资源

  • man fdisk / man parted – 官方手册
  • GParted – 图形化分区工具
  • Linux 文件系统官方文档

原创文章,作者:小微财服云,如若转载,请注明出处:https://www.779it.com/239.html

(0)
小微财服云小微财服云
Hugo 是什么?一文讲透它的工作原理、四大优势与适用边界
上一篇 6小时前
Windows7 内存过高优化 – 老系统性能提升完整指南
下一篇 1小时前

相关推荐