resize2fs allows resize beyond maximum fs size - corrupts fs
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
e2fsprogs (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
If you resize a 1G partition to more than 1T the filesystem becomes corrupted offline and errors on-line.
resize2fs does not check the maximum size of the filesystem before initiating the resize.
To reproduce:
$ dd if=/dev/zero of=tiny bs=1 count=0 seek=1G
$ mkfs.ext4 -F -J size=128 tiny
....
Maximum filesystem blocks=268435456
....
$ cp tiny xxl
$ resize2fs xxl 1310720M
resize2fs 1.42 (29-Nov-2011)
Resizing the filesystem on xxl to 335544320 (4k) blocks.
The filesystem on xxl is now 335544320 blocks long.
$ e2fsck xxl
e2fsck 1.42 (29-Nov-2011)
e2fsck: Group descriptors look bad... trying backup blocks...
One or more block group descriptor checksums are invalid. Fix<y>?
ProblemType: Bug
DistroRelease: Ubuntu 11.10
Package: e2fsprogs 1.41.14-1ubuntu3
ProcVersionSign
Uname: Linux 3.0.0-16-generic x86_64
ApportVersion: 1.23-0ubuntu4
Architecture: amd64
CheckboxSubmission: 55cafa5b8b82ed2
CheckboxSystem: 3e53d3ea5811723
Date: Thu Mar 15 13:51:37 2012
InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Release amd64 (20111012)
SourcePackage: e2fsprogs
UpgradeStatus: No upgrade log present (probably fresh install)
The use case here is expansion of the root partition of a virtual machines from a small core image.