三二互联专业提供速度最快最稳定的美国服务器、香港服务器。中美直连,亚洲优化![ 代理登陆 ] [ 付款方式 ] [ 找回密码 ][ 电子协议责任书 ]
硬件资源保障

采用高配品牌服务器

主流强悍CPU配置

确保服务高速稳定运行

中美直连线路

中美直连亚洲优化

采用中国CN2骨干网络

保证速度飞快稳定高效

如何在服务器上使用fdisk工具调整分区大小?

美国、香港服务器

如何在服务器上使用fdisk工具调整分区大小?

12-26   来源:

 fdisk 工具本身不支持直接调整已存在分区的大小(无法扩容 / 缩容已有分区),但可以通过 「删除旧分区→重建新分区」 的方式间接调整,核心是保证新分区的起始扇区与旧分区完全一致,避免数据丢失。

以下是完整实操流程,适用于 MBR 分区表(≤2TB 硬盘),以调整 /dev/sdb1 分区大小为例。
核心前提(必看,避免数据丢失)
1. 备份数据:调整分区存在数据丢失风险,操作前务必备份分区内的重要数据(如 rsync/tar 备份)。
2. 卸载分区:调整前必须卸载目标分区,禁止分区处于挂载状态。
3. 记录关键参数:旧分区的 起始扇区 是核心,重建分区时必须完全一致,否则数据会损坏。
一、 前置准备:记录旧分区参数
1. 查看旧分区的详细信息执行命令,获取 /dev/sdb1 的起始扇区、结束扇区、大小等参数:
bash


运行




sudo fdisk -l
 /dev/sdb

输出示例:
plaintext





设备       起点      终点      扇区  大小 类型
/dev/sdb1  2048  41943039  41940992  20G Linux 文件系统

关键参数记录:
◦ 起始扇区:2048(必须完全一致)
◦ 当前大小:20G
◦ 目标大小:假设要扩容到 50G
2. 卸载目标分区
bash


运行




sudo umount
 /dev/sdb1
# 验证卸载:无输出则成功
mount | grep
 /dev/sdb1

3. 检查文件系统完整性避免文件系统损坏导致调整后无法挂载:
bash


运行




# ext4 文件系统
sudo e2fsck -f
 /dev/sdb1
# xfs 文件系统
sudo
 xfs_repair /dev/sdb1

二、 核心操作:删除旧分区→重建新分区
1. 进入 fdisk 交互模式
bash


运行




sudo fdisk
 /dev/sdb

2. 删除旧分区输入指令,删除 /dev/sdb1(分区号为 1):
plaintext





Command (m for help): d
Partition number (1-2, default 2): 1  # 输入旧分区号 1
 
Partition 1 has been deleted.

3. 重建新分区(关键:起始扇区一致)输入 n 创建新分区,起始扇区必须和旧分区完全相同,仅修改结束扇区来调整大小:
plaintext





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-1048575999, default 2048): 2048  # 必须和旧分区起始扇区一致!
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-1048575999, default 1048575999): +50G  # 目标大小 50G
 
Created a new partition 1 of type "Linux" and of size 50 GiB.

◦ 若要扩容到硬盘剩余全部空间:直接回车使用默认结束扇区。
◦ 若要缩容:输入更小的结束扇区(如 +10G),但缩容前需先缩小文件系统(见下文)。
4. (可选)恢复分区类型若旧分区是 swap 等特殊类型,需重新设置类型:
plaintext





Command (m for help): t
Partition number (1, default 1): 1
Hex code or alias (type L to list all): 82  # 82=swap,83=Linux
Changed type of partition "Linux" to "Linux swap".

5. 保存修改并退出
plaintext





Command (m for help): w

系统会自动更新分区表,无需重启,执行 sudo partprobe /dev/sdb 确保生效。
三、 关键收尾:调整文件系统大小
重建分区后,文件系统大小还未同步,需用工具扩展 / 缩小文件系统,否则新分区的空间无法使用。
场景 1:扩容文件系统(ext4/xfs)
1. ext4 文件系统:使用 resize2fs
bash


运行




sudo
 resize2fs /dev/sdb1

该命令会自动将文件系统扩展到分区的最大可用空间。
2. xfs 文件系统:使用 xfs_growfs
bash


运行




# 需先挂载分区
sudo mount
 /dev/sdb1 /data
sudo
 xfs_growfs /data

场景 2:缩容文件系统(仅 ext4 支持,xfs 不支持缩容)
缩容风险更高,必须先缩小文件系统,再重建更小的分区,步骤如下:
1. 检查文件系统:sudo e2fsck -f /dev/sdb1
2. 缩小文件系统到目标大小(如缩到 10G):
bash


运行




sudo
 resize2fs /dev/sdb1 10G

3. 再按上述步骤删除旧分区→重建更小的分区(起始扇区一致,结束扇区对应 10G)。
四、 验证调整结果
1. 挂载分区:sudo mount /dev/sdb1 /data
2. 查看分区大小:df -h /data
输出中显示的大小应为调整后的目标大小(如 50G)。
3. 检查数据完整性:查看分区内文件是否正常,避免数据丢失。
五、 避坑指南
1. 起始扇区必须一致:这是避免数据丢失的核心,重建分区时若起始扇区不同,数据会直接损坏。
2. xfs 不支持缩容:xfs 文件系统只能扩容,不能缩容,需缩容建议改用 ext4。
3. 不能调整系统盘分区:系统盘(如 /dev/sda1)挂载在 / 目录,无法卸载,调整会导致系统崩溃,需用 live CD 启动后操作。
4. 备份是底线:无论操作多熟练,调整前务必备份数据,防止意外。
六、 更优方案:推荐工具
fdisk 调整分区属于 “间接操作”,步骤繁琐且风险高。若需频繁调整分区大小,推荐使用更专业的工具:
• parted:支持直接调整分区大小(resizepart 命令),无需删除重建。
• gparted:图形化工具,直观调整分区大小,适合新手。

三二互联专业提供香港VPS,美国VPS主机,香港云服务器租用等业务香港美国到大陆CN2 GIA速度最快

上一篇:如何在调整分区大小过程中避免数据丢失? 下一篇:如何在服务器上使用fdisk工具创建分区?

美国GIA服务器三二互联版权所有 WWW.250.cc 2008-2015 All Rights Reserved
三二互联 - 专业的美国C3服务器、香港vps、抗DOOS流量清洗、云备份系统、网站加速系统、美国GIA服务器和香港云服务器产品提供商
三二互联24小时在线工单系统为您提供全面、专业、周到的技术支持与服务
咨询热线:400-679-9994(免长话费)