Go to the first, previous, next, last section, table of contents.

Compression errors

[Note: the information below pertains to e2compr-0.3. Once I've added the appropriate code to e2fsck, I'll probably get rid of the EXT2_ECOMPR_FL flag and just call ext2_error() when corrupted compressed data is found. Users can use `tune2fs -e' to tell ext2_error() what to do.]

If the read/write routine in the kernel finds an error when accessing compressed clusters, then the kernel raises the EXT2_ECOMPR_FL flag, which shows in lsattr output as an `E' where the `c' would usually be.

The kernel will still allow you to try to read the file (though you may get an I/O error for erroneous clusters), but the kernel won't allow you to open the file with write access while the `E' flag is set.

You can clear the `E' flag using chattr -E, but chances are that it will be set again the next time the file is accessed, unless you found the origin of the error and corrected it.

Of course, data are not lost. e2decompress should be able to be used to retrieve most of the data, with any undecompressible clusters being copied verbatim (i.e. the raw data), with a warning on standard error. [Newbie note: `on standard error' generally means `to the screen'.]

[In e2compr versions prior to 0.3.5, user programs didn't have read access to raw compressed data, so e2decompress wouldn't work in the way it was supposed to (so it was useless for recovering data) unless one were to reboot to a kernel without e2compr support.]

Go to the first, previous, next, last section, table of contents.