CentOS普通分区扩容和分区表

今日头条

1151人已加入

描述

案例分享:

主机系统centos7.5

默认系统上有一块40G的系统盘sda,外加一块350G的数据盘sdb。每块盘一个分区,分区类型为普通分区。现在350G的数据盘已满,要求将sdb1扩展至450G。

先在“物理”上把sdb盘空间扩展至450G;这里只讨论文件系统扩展及分区问题,在没有做lvm的情况下扩展普通分区是件麻烦的事情,好在sdb只有一个分区。

1)首先查看硬盘使用情况及文件系统类型

]# df -TH /data/ //文件系统类型为ext4

CentOS

2)卸载数据盘

]# umount /dev/sdb1

3)删除sdb上的分区并重新分区;全部保持默认即可,因为分区时默认就是使用硬盘上的所有空间。

]# fdisk /dev/sdb

Command (m for help): d

Selected partition 1

Partition 1 is deleted

Command (m for help): n

Partition type:

p primary (0 primary, 0 extended, 4 free)

e extended

Select (default p):

Using default response p

Partition number (1-4, default 1):

First sector (2048-943718400, default 2048):

Using default value 2048

Last sector, +sectors or +size{K,M,G} (2048-943718400, default 943718400):

Using default value 943718400

Partition 1 of type Linux and of size 450 GiB is set

4) 通知系统重读分区表

]# partprobe /dev/sdb

5)挂载

]# mount /dev/sdb1 /data

此时]# lsblk可以看到sdb1为450G;但]# df -TH /dev/sdb1看到大小仍为350G,因为前350G的扇区上之前是做过文件系统的,重新分区后新加进来的这100G的扇区上是没有文件系统的,df命令看的是分区的使用情况。

6)扩展文件系统;前面查看过之前sdb1的文件系统类型为ext4

]# resize2fs /data // xfs文件系统命令则为xfs_growfs;都是将文件系统扩展至物理分区大小;也可以 使用fsadm命令手动调整文件系统大小(这在缩减分区空间时比较有用)。

7)再次查看验证分区大小

]# df -TH /data/

CentOS

Ps:关于第三步,可操作性在于要扩展的分区之后没有其它分区并且有剩余空间可用。每块磁盘的分区信息记录在第0扇区上,传统磁盘单个扇区大小为512byte,前446byte为MBR(主引导记录),446-510为分区表信息,最后2个byte为结束标志位。删除和创建分区都是在修改0扇区的446-510byte之间的64byte信息。

CentOS

话虽如此,但破坏前455字节数据(由于sdb上并不存在mbr,455-446=9byte,也就是破坏了分区表信息中的前9个字节)分区表依然完整:)

CentOS

破坏460-446=14byte字节后,分区表读不到了- -,, 这种情况下分区表没了完全没关系,按照第三步重建分区就是。只要不误操作,数据完全没问题;而且分区时默认从2048扇区开始,也就是0扇区之后还预留了2048*512byte=1M的空间。

这样看来,在不做lvm的情况下只要分区后有足够的空余空间可用,调整普通分区大小也是可行的。但事无绝对,外加误操作的风险,所以最好还是一开始就要规划好,尽量避免后期麻烦。

lw

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分