centos普通分區擴容和分區表
案例分享:
主機系統centos7.5
默認系統上有一塊40G的系統盤sda,外加一塊350G的數據盤sdb。每塊盤一個分區,分區類型為普通分區。現在350G的數據盤已滿,要求將sdb1擴展至450G。
先在“物理”上把sdb盤空間擴展至450G;這里只討論文件系統擴展及分區問題,在沒有做lvm的情況下擴展普通分區是件麻煩的事情,好在sdb只有一個分區。
1)首先查看硬盤使用情況及文件系統類型
]# df -TH /data/ //文件系統類型為ext4
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/
Ps:關于第三步,可操作性在于要擴展的分區之后沒有其它分區并且有剩余空間可用。每塊磁盤的分區信息記錄在第0扇區上,傳統磁盤單個扇區大小為512byte,前446byte為MBR(主引導記錄),446-510為分區表信息,最后2個byte為結束標志位。刪除和創建分區都是在修改0扇區的446-510byte之間的64byte信息。
話雖如此,但破壞前455字節數據(由于sdb上并不存在mbr,455-446=9byte,也就是破壞了分區表信息中的前9個字節)分區表依然完整:)
破壞460-446=14byte字節后,分區表讀不到了- -,, 這種情況下分區表沒了完全沒關系,按照第三步重建分區就是。只要不誤操作,數據完全沒問題;而且分區時默認從2048扇區開始,也就是0扇區之后還預留了2048*512byte=1M的空間。
這樣看來,在不做lvm的情況下只要分區后有足夠的空余空間可用,調整普通分區大小也是可行的。但事無絕對,外加誤操作的風險,所以最好還是一開始就要規劃好,盡量避免后期麻煩。
GoDadly云