警告:
1.調整過分區管理方式的,例如lvm管理方式,請忽略此教程。
2.ubuntu18系統暫不支持腳本擴容,請手動擴容,參看下面ubuntu18部分,用parted操作
腳本自動處理(推薦)
SSH登錄服務器下載自動執行腳本 :
wget -O auto_expansion.sh http://downinfo.myhostadmin.net/vps/auto_expansion.sh && bash auto_expansion.sh && rm -rf auto_expansion.sh
手工處理方法
紅色為您要鍵入的指令,綠色為需要注意的內容,藍色為說明
特別提醒:刪除分區后一定要先建立分區再保存,刪除后點了保存會導致數據丟失,如果對linux不熟悉的,建議提交維護工單我司手工處理,費用100元。該操作有風險,為避免誤操作導致數據丟失,操作前請對您的重要數據進行備份!
centos6用gdisk工具
Centos:
[root@ebs-89713 ~]yum -y install gdisk //安裝分區工具
[root@ebs-89713 ~]gdisk /dev/vda //操作根分區磁盤
Command (? for help): p //查看分區
Disk /dev/vda: 104857600 sectors, 50.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): B7172F0B-2C30-4535-981D-F0ED8B4A6065
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 104857566
Partitions will be aligned on 2048-sector boundaries
Total free space is 41945021 sectors (20.0 GiB)
Number Start (sector) End (sector) Size Code Name
1 2048 62914559 30.0 GiB 8300 Linux filesystem //注意這個值
Command (? for help): d //刪除分區
Using 1
Command (? for help): 1
b back up GPT data to a file
c change a partition's name
d delete a partition
i show detailed information on a partition
l list known partition types
n add a new partition
o create a new empty GUID partition table (GPT)
p print the partition table
q quit without saving changes
r recovery and transformation options (experts only)
s sort partitions
t change a partition's type code
v verify disk
w write table to disk and exit
x extra functionality (experts only)
? print this menu
Command (? for help): n
Partition number (1-128, default 1): 1
First sector (34-104857566, default = 2048) or {+-}size{KMGTP}: 2048 //剛才記錄的
Last sector (2048-104857566, default = 104857566) or {+-}size{KMGTP}: //直接回車
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): //直接回車
Changed type of partition to 'Linux filesystem'
Command (? for help): w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/vda.
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot.
The operation has completed successfully.
[root@ebs ~]#reboot //重啟讓分區生效
[root@ebs ~]#resize2fs -f /dev/vda1 //開始擴容根分區,如果是centos8.x系統需要使用這個命令:xfs_growfs /dev/vda1
resize2fs -f /dev/vda1
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/vda1 is mounted on /; on-line resizing required
old desc_blocks = 2, new_desc_blocks = 4
Performing an on-line resize of /dev/vda1 to 13106939 (4k) blocks.
The filesystem on /dev/vda1 is now 13106939 blocks long.
[root@ebs ~]#df -vh //完成,查看新的根分區大小
centos7,centos8用fdisk工具
[root@ebs-89713 ~]# fdisk /dev/vda
Welcome 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): p
Disk /dev/vda: 53.7 GB, 53687091200 bytes, 104857600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000c1d0e
Device Boot Start End Blocks Id System
/dev/vda1 2048 83886079 41942016 83 Linux
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): p
Partition number (1-4, default 1): 1
First sector (2048-104857599, default 2048): 2048
Last sector, +sectors or +size{K,M,G} (2048-104857599, default 104857599): 104857599
Partition 1 of type Linux and of size 50 GiB is set
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
[root@ebs-89713 ~]# reboot //重啟讓分區生效
重啟完,重新登陸服務器
centos7系統執行:
[root@ebs-89713 ~]# resize2fs -f /dev/vda1 //開始擴容根分區
centos8系統執行:
[root@ebs-89713 ~]# xfs_growfs /dev/vda1 //開始擴容根分區
[root@ebs-89713 ~]# df -vh //完成,查看新的根分區大小
Ubuntu16,Ubuntu20,debian8,debian9用parted工具
[root@ebs-89713 ~] parted /dev/vda
(parted) unit b
(parted) print
Model: Virtio 塊設備 (virtblk)
磁盤 /dev/vda: 107374182400B
Sector size (logical/physical): 512B/512B
分區表:msdos
數字 開始: End 大小 類型 文件系統 標志
1 1048576B 32211206143B 32210157568B primary ext4 啟動
(parted) rm 1 //刪除1分區,記1的開始 刪除2分區,記2分區的開始
警告: Partition /dev/vda1 is being used. Are you sure you want to continue?
是/Yes/否/No? yes
錯誤: Partition(s) 1 on /dev/vda have been written, but we have been unable to inform the kernel of the change,
probably because it/they are in use. As a result, the old partition(s) will remain in use. You should reboot
now before making further changes.
忽略/Ignore/放棄/Cancel? I
(parted) mkpart
分區類型? primary/主分區/extended/擴展分區? p
文件系統類型? [ext2]?
起始點? 1048576B //刪除1分區,記1的開始 刪除2分區,記2分區的開始
結束點? 100%
(parted) print
Model: Virtio 塊設備 (virtblk)
磁盤 /dev/vda: 107374182400B
Sector size (logical/physical): 512B/512B
分區表:msdos
數字 開始: End 大小 類型 文件系統 標志
1 1048576B 107374182399B 107373133824B primary ext4
(parted) quit
信息: You may need to update /etc/fstab.
[root@ebs-89713 ~]# reboot //重啟讓分區生效
重啟完,重新登陸服務器
[root@ebs-89713 ~]# resize2fs -f /dev/vda1 //開始擴容根分區
[root@ebs-89713 ~]# df -vh //完成,查看新的根分區大小
ubuntu18(系統盤存在兩個分區vda1,vda2)用parted工具
root@ebs-89713:~# parted /dev/vda
GNU Parted 3.2
Using /dev/vda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) unit b
(parted) print
Warning: Not all of the space available to /dev/vda appears to be used, you can fix the GPT to use all of the space (an extra 20971520 blocks) or continue
with the current setting?
Fix/Ignore? Fix
Model: Virtio Block Device (virtblk)
Disk /dev/vda: 42949672960B
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1048576B 2097151B 1048576B bios_grub
2 2097152B 32211206143B 32209108992B ext4
(parted) rm 2
Warning: Partition /dev/vda2 is being used. Are you sure you want to continue?
Yes/No? Yes
Error: Partition(s) 2 on /dev/vda have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use. As a
result, the old partition(s) will remain in use. You should reboot now before making further changes.
Ignore/Cancel? I
(parted) mkpart
Partition name? []? //直接回車
File system type? [ext2]? //直接回車
Start? 2097152B //上面number 2中的start起始位置
End? 100%
(parted) print
Model: Virtio Block Device (virtblk)
Disk /dev/vda: 42949672960B
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1048576B 2097151B 1048576B bios_grub
2 2097152B 42948624383B 42946527232B ext2
(parted) quit
root@ebs-89713:~# reboot //重啟讓分區生效
重啟完,重新登陸服務器
root@ebs-89713:~# resize2fs -f /dev/vda2 //開始擴容根分區
root@ebs-89713:~# df -vh //完成,查看新的根分區大小