-
运行
umount [文件系统名称]命令卸载主分区。umount /dev/vdb1
使用
df -h查看是否卸载成功,如果看不到 /dev/vdb1 的信息表示卸载成功。以下为示例输出结果。[root@iXXXXXX ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/vda1 40G 1.5G 36G 4% /devtmpfs 487M 0 487M 0% /devtmpfs 497M 0 497M 0% /dev/shmtmpfs 497M 312K 496M 1% /runtmpfs 497M 0 497M 0% /sys/fs/cgrouptmpfs 100M 0 100M 0% /run/user/0
-
使用
fdisk命令删除原来的分区并创建新分区:如果您使用
parted工具操作分区,不能与 fdisk 交叉使用,否则会导致分区的起始扇区不一致。关于parted工具的使用说明可以参考这里。- 运行命令
fdisk -l罗列分区信息并记录扩容前数据盘的最终容量、起始扇区(First sector)位置。 - 运行命令
fdisk [数据盘设备名]进入fdisk界面。本示例中,命令为fdisk /dev/vdb。 - 这里有一个问题要着重注意,如果你的分区为 /dev/vdb1,那么这里一定要写成 fdisk /dev/vdb
- 输入
d并按回车键,删除原来的分区。删除分区不会造成数据盘内数据的丢失。
- 输入
n并按回车键,开始创建新的分区。 - 输入
p并按回车键,选择创建主分区。因为创建的是一个单分区数据盘,所以只需要创建主分区。如果要创建 4 个以上的分区,您应该创建至少一个扩展分区,即选择
e。 - 输入分区编号并按回车键。因为这里仅创建一个分区,所以输入 1。
- 输入第一个可用的扇区编号:为了保证数据的一致性,First sector 需要与原来的分区保持一致。在本示例中,按回车键采用默认值。
如果发现 First sector 显示的位置和之前记录的不一致,说明之前可能使用
parted来分区,那么就停止当前的fdisk操作,使用parted重新操作。 - 输入最后一个扇区编号:因为这里仅创建一个分区,所以按回车键采用默认值。
- 输入
wq并按回车键,开始分区。[root@iXXXXXX ~]# fdisk /dev/vdbWelcome to fdisk (util-linux 2.23.2).Changes will remain in memory only, until you decide to write them.Be careful before using the write command.Command (m for help): dSelected partition 1Partition 1 is deletedCommand (m for help): nPartition type:p primary (0 primary, 0 extended, 4 free)e extendedSelect (default p):Using default response pPartition number (1-4, default 1):First sector (2048-62914559, default 2048):Using default value 2048Last sector, +sectors or +size{K,M,G} (2048-62914559, default 62914559):Using default value 62914559Partition 1 of type Linux and of size 30 GiB is setCommand (m for help): wqThe partition table has been altered!Calling ioctl() to re-read partition table.Syncing disks.
如果您使用的是
parted工具,进入parted界面后,输入p罗列当前的分区情况。如果有分区,则使用 rm+ 序列号来删除老的分区表,然后使用unit s定义起始位置,单位使用扇区个数计量,最后使用mkpart命令来创建即可,如下图所示。
- 运行命令
-
(可选)部分操作系统里,修改分区后可能会重新自动挂载文件系统。建议先执行
df -h重新查看磁盘空间和使用情况。如果文件系统重新被挂载,执行umount [文件系统名称]再次卸载文件系统。 -
检查文件系统,并变更文件系统大小。
e2fsck -f /dev/vdb1 # 检查文件系统resize2fs /dev/vdb1 # 变更文件系统大小
注意:
- 使用
e2fsck时,由于系统需要检查并订正文件系统元数据,所以速度较慢、耗时较长,请耐心等待。 - 正确使用
e2fsck和resize2fs指令,不会造成原有数据丢失。
以下为示例输出结果。
[root@iXXXXXX ~]# e2fsck -f /dev/vdb1e2fsck 1.42.9 (28-Dec-2013)Pass 1: Checking inodes, blocks, and sizesPass 2: Checking directory structurePass 3: Checking directory connectivityPass 4: Checking reference countsPass 5: Checking group summary information/dev/vdb1: 11/1835008 files (0.0% non-contiguous), 159218/7339776 blocks[root@iXXXXXX ~]# resize2fs /dev/vdb1resize2fs 1.42.9 (28-Dec-2013)Resizing the filesystem on /dev/vdb1 to 7864064 (4k) blocks.The filesystem on /dev/vdb1 is now 7864064 blocks long.
-
将扩容完成的文件系统挂载到原来的挂载点(如本示例中的 /resizetest)。
mount /dev/vdb1 /resizetest
-
查看磁盘空间和使用情况:运行命令
df -h。如果出现扩容后的文件系统信息,说明挂载成功,可以使用扩容后的文件系统了。挂载操作完成后,不需要重启实例即可开始使用扩容后的文件系统。
以下为示例输出结果。
[root@iXXXXXX ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/vda1 40G 1.5G 36G 4% /devtmpfs 487M 0 487M 0% /devtmpfs 497M 0 497M 0% /dev/shmtmpfs 497M 312K 496M 1% /runtmpfs 497M 0 497M 0% /sys/fs/cgrouptmpfs 100M 0 100M 0% /run/user/0/dev/vdb1 30G 44M 28G 1% /resizetest
以上来源:https://help.aliyun.com/document_detail/25452.html?spm=5176.doc35095.2.7.8knHYE
相关资料:
ECS 利用快照创建磁盘实现无损扩容数据盘云服务器 ECS Linux 扩容磁盘报错:Re-reading the partition table failed with error 22

本文提供了一步一步的指南,教你如何在Linux环境下安全地扩大磁盘分区的大小,包括卸载文件系统、使用fdisk调整分区大小、检查及更新文件系统等关键步骤。
3万+

被折叠的 条评论
为什么被折叠?



