Ext4分区的缩小

缩小/ext4分区步骤如下:

首先查看分区是什么文件类型

1file -sL /dev/sd*  
2/dev/sda:  x86 boot sector; GRand Unified Bootloader, stage1 version 0x3, boot drive 0x80, 1st sector stage2 0x2044148, GRUB version 0.94; partition 1: ID=0x82, starthead 32, startsector 2048, 8388608 sectors; partition 2: ID=0x83, active, starthead 75, startsector 8390656, 411039744 sectors, code offset 0x48
3/dev/sda1: Linux/i386 swap file (new style) 1 (4K pages) size 1048575 pages
4/dev/sda2: Linux rev 1.0 ext4 filesystem data (needs journal recovery) (extents) (large files) (huge files)

能看出来sda1是交换分区,那么要缩的分区是/dev/sda2,文件类型是ext4

ok,先确保虚机内/分区只占到5G,然后最好重新拷贝一下qcow2文件,把文件到弄到前面5G中。

然后修改一下kvm虚机配置,先加个iso进入rescue模式

 1virsh edit xxx  
 2把boot顺序从hd改成cdrom
 3
 4...
 5    <boot dev='hd'/>
 6    <boot dev='cdrom'/>
 7...
 8    <disk type='file' device='cdrom'>
 9      <driver name='qemu' type='raw'/>
10      <source file='/export/kvm/iso/CentOS-7-x86_64-NetInstall-1708.iso'/>
11      <target dev='hdc' bus='ide'/>
12      <readonly/>
13      <address type='drive' controller='0' bus='1' target='0' unit='0'/>
14    </disk>
15...

系统启动,进入cdrom安装,选择Troubleshooting

image-20240124092137952

选择Rescue

image-20240124092158574

因为要对磁盘操作,所以不能选1把硬盘mount到/mnt/sysimage,选择3,不mount硬盘,直接进入一个shell

image-20240124092219572

检查磁盘,缩减/dev/sda2 到5G空间

1e2fsck -f /dev/sda2  
2resize2fs /dev/sda2 5G  

image-20240124092255483

注意,现在只做了一半,文件是被集中到/dev/sda2的前5G空间里面去了。但是,硬盘分区还没有更改。

接着来,用parted来修改分区

 1parted /dev/sda  
 2print  
 3查看后发现前2096是swap分区,2是/dev/sda2
 4删除/dev/sda2
 5rm 2  
 6重建
 7mkpart  
 8... primary
 9... 2096
10... 7096

注意,新建的/dev/sda2起点是2096,分区终点是2096+5000=7096

最后再运行一下磁盘检查和重建

1e2fsck -f /dev/sda2  
2resize2fs /dev/sda2 5G  

重启搞定!


CentOS下做无线AP热点
配置postfix转发局域网邮件以及邮件黑洞
comments powered by Disqus