As shown in the picture below, I've created partitions on two 32GB devices: an SD-card, and a flash usb stick.

I intended to create file systems using the entire partition in each case, yet somehow I've failed:

On sdb, /dev/sdb1 is 29.8GB, yet the file system is only 1023MB.
The SD card, mmcblk0p2, is 30GB, but /dev/mmcblk0p2 is only 1.9GB.

How can I rectify this?

enter image description here


1 Answer 1


If the partition is larger than the filesystem, you can use resize2fs to expand it:

If size parameter is not specified, it will default to the size of the partition.

So it'd just be

[#]> resize2fs /dev/sdb1
  • Thanks, Xiong! I tried this, and it worked for the SD-card file system, but not for the USB drive. "resize2fs: Bad magic number in super-block while trying to open /dev/sdb1 Couldn't find valid filesystem superblock." Any thoughts?
    – Jack
    Mar 18, 2016 at 5:45
  • What filesystem is /dev/sdb1? Can you run df -T? Mar 18, 2016 at 5:57
  • Looks like FAT (vfat).
    – Jack
    Mar 18, 2016 at 6:09
  • 3
    resize2fs only works on ext-family filesystems. I can find some reports of fatresize and parted working to resize not just the partition, but the filesystem as well, but I haven't tried either of these. Mar 18, 2016 at 17:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.