如何确定resize2fs的新大小?

莱肯施泰因

我想缩小一个ext4文件系统,以便为新分区腾出空间,并遇到了该resize2fs程序。该命令如下所示:

resize2fs -p /dev/mapper/ExistingExt4 $size

我应该如何确定$size是否要从当前ext4文件系统中精确减去15 GiB?我可以使用df某种方式的输出吗?

莱肯施泰因

您不应使用df它,因为它显示的是文件系统报告的大小(在本例中为ext4)。

使用该dumpe2fs -h /dev/mapper/ExistingExt4命令找出分区的实际大小。-h选项使dumpe2fs显示超级块信息而没有很多其他不必要的细节。从输出中,您需要块计数块大小

...  
块数:               19506168  
保留块数:975308  
空闲块:13750966  
空闲索引节点:4263842  
第一个块:0  
块大小:                4096   
...

将这些值相乘将得出分区大小(以字节为单位)上面的数字恰好是1024的完美倍数:

$ python -c 'print 19506168.0 * 4096 / 1024'
78024672.0

由于您要将分区缩小15 GiB(这是15 MiB乘以1 KiB):

$ python -c 'print 19506168.0 * 4096 / 1024  -  15 * 1024 * 1024'
62296032.0

由于resize2fs可以接受多种后缀,其中一种后缀K为“ 1024字节”,因此,将分区缩小到62296032 KiB的命令将变为:

resize2fs -p /dev/mapper/ExistingExt4 62296032K

如果没有单位,则该数字将解释为文件系统的块大小的倍数(在这种情况下为4096)。参见man resize2fs(8)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章