如何对linux重新分区
- Linux
- 2025-08-01
- 10
Linux 重新分区,先用 lsblk或 fdisk -l查看 磁盘信息,选工具如 fdisk删旧建新、设类型大小,再用 mkfs格式化,之后挂载并可选更新 /etc/fstab实现自动挂载。
是针对Linux系统重新分区的详细操作指南,涵盖关键步骤、注意事项及实用示例:
️ 核心前提与风险提示
所有分区操作均会导致数据丢失!务必先备份重要文件至其他存储介质,建议在虚拟机或测试环境中练习后再进行生产环境操作。
一、准备工作阶段
-
查看现有磁盘布局
- 使用lsblk或sudo fdisk -l命令列出所有磁盘和分区信息,重点记录目标设备的路径(如/dev/sdb),避免混淆相似名称的设备。 $ sudo fdisk -l Disk /dev/sda: ... GiB, ... sectors... Disk /dev/sdb: ... GiB, ... sectors... # 确认这是你要操作的目标硬盘
- 若涉及GPT格式的磁盘(新型主板常用),优先选用gdisk工具而非传统的fdisk。
-
卸载目标分区
如果分区已挂载,需先解除挂载状态:
sudo umount /path/to/mountpoint # 例:sudo umount /home
可通过df -h检查是否仍有进程占用该分区。
二、执行重新分区流程
方法1:通过命令行工具 fdisk(适用于MBR分区表)
-
启动交互式分区编辑器
sudo fdisk /dev/sdX # 替换为实际设备名,如/dev/sdb
进入后依次执行以下操作:

- 输入p查看当前分区表结构;
- 输入d删除不需要的旧分区(按序号选择);
- 输入n创建新分区,选择类型(主分区/扩展分区)、起始扇区和结束扇区;
- 输入t设置分区标识符(如Linux系统的83);
- 输入w写入修改并退出。
-
格式化新建的文件系统
根据需求选择文件系统类型,常见选项包括:
- EXT4:sudo mkfs.ext4 /dev/sdX1
- XFS:sudo mkfs.xfs /dev/sdX1
- Btrfs:sudo mkfs.btrfs /dev/sdX1
-
挂载与自动装配配置
手动挂载测试:
sudo mkdir /mnt/newpart # 创建挂载点目录 sudo mount /dev/sdX1 /mnt/newpart # 临时挂载验证可用性若希望开机自动挂载,编辑/etc/fstab添加条目:
/dev/sdX1 /mnt/newpart ext4 defaults 0 2保存后可通过sudo mount -a测试配置有效性。

- 初始化物理卷 sudo pvcreate /dev/sdX # 标记整个硬盘为物理卷组候选
- 创建卷组与逻辑卷 sudo vgcreate my_volume_group /dev/sdX # 建立卷组 sudo lvcreate -L +50G -n data_lv my_volume_group # 从卷组中划分50GB的逻辑卷
- 格式化并挂载LVM分区 sudo mkfs.ext4 /dev/my_volume_group/data_lv # 创建文件系统
sudo mount /dev/my_volume_group/data_lv /data # 指定挂载路径
此方式支持后续在线调整逻辑卷大小,特别适合服务器场景。
方法2:采用LVM实现动态扩容(高级方案)
当需要更灵活的空间管理时,可结合逻辑卷管理器(LVM):
三、验证与故障排查
检查项 命令示例 预期结果 分区是否成功创建 sudo fdisk -l 显示新的分区结构 文件系统完整性 sudo e2fsck /dev/sdX1 无报错提示 挂载状态确认 df -h 列出新分区的使用情况 自动挂载生效测试 sudo mount -a 无错误输出且能正常访问挂载点
典型应用场景对比表
场景 推荐方案 优势 单次静态分配 普通分区+文件系统 简单直接,兼容性强 频繁调整空间需求 LVM逻辑卷 支持动态扩容/缩容,跨磁盘迁移数据便捷 大容量存储优化 Btrfs文件系统 快照、克隆等高级特性支持 传统BIOS启动兼容 MBR+主引导扇区修复 确保老旧设备能正常引导系统
相关问答FAQs
Q1: 如果误删了正在使用的系统分区怎么办?
A: 立即关机防止写入覆盖数据!使用Live USB启动系统,通过测试磁盘工具(如TestDisk)尝试恢复分区表,若数据至关重要,建议联系专业数据恢复服务机构。
Q2: 为什么执行resize2fs时报“设备忙”错误?
A: 因为目标分区仍处于挂载状态,请先用sudo umount卸载分区,再运行e2fsck -f检查文件系统一致性,最后重新尝试调整大小。
sudo umount /old_mountpoint sudo e2fsck -f /dev/sdX1 sudo resize2fs /dev/sdX1 new_size # 例:sudo resize2fs /dev/sda5 6G