首先,我们先查看一下分区:
[root@CHENDAJIE ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
├─sda3 8:3 0 10G 0 part /
└─sda4 8:4 0 1K 0 part
sr0 11:0 1 4.2G 0 rom /mnt
可以看到此时有3个主分区和一个扩展分区。下面进行删除拓展分区的操作。
[root@CHENDAJIE ~]# fdisk /dev/sda
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):d
分区号 (1-4,默认 4):4
分区 4 已删除
命令(输入 m 获取帮助):p
磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000ac61a
设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 411647 204800 83 Linux
/dev/sda2 411648 4605951 2097152 82 Linux swap / Solaris
/dev/sda3 4605952 25577471 10485760 83 Linux
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
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)
正在同步磁盘。
按照提示一步一步来还是挺简单的哈。记得输入w保存设置。
此时我们输入lsblk查看,还是显示有4块分区,这是因为我们还没有通知系统更改分区表
[root@CHENDAJIE ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
├─sda3 8:3 0 10G 0 part /
└─sda4 8:4 0 1K 0 part
sr0 11:0 1 4.2G 0 rom /mnt
输入partprobe命令即可
输入partprobe之后通过lsblk命令查看分区:
[root@CHENDAJIE ~]# partprobe
Warning: 无法以读写方式打开 /dev/sr0 (只读文件系统)。/dev/sr0 已按照只读方式打开。
[root@CHENDAJIE ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 10G 0 part /
sr0 11:0 1 4.2G 0 rom /mnt
可以看到此时已经将分区删除。
注意:
当我们的分区已经挂载时,需要先将分区卸载才可删除,不然可能会导致文件系统出问题。切记!