To a limited degree.
You certainly can if you've never enabled indirect cluster bitmaps (by
having CONFIG_EXT2_IND_BITMAP
defined) when
compiling your kernel.
You certainly can if your filesystem contains no compressed files whose "logical length" (i.e. what you see when you do `ls -l' or `wc -c') is larger than 16 clusters. See section How to identify a file with multiple links, for a command to list the files that don't fit this on your system; and section How to dispense with indirect cluster bitmap blocks, for a relatively robust way of dealing with with these files.
Even if you do something wrong and manage to lose an indirect cluster
bitmap, all is not lost: the e2decompress
program already has the
smarts to work out what the bitmap was (by looking for valid compressed
clusters). If e2decompress
says `I/O error', then you will
have to zero the i_reserved2[1]
field of the inode
(e.g. `chattr +X orig; cp orig copy &&
e2decompress -f copy'; or you could use ext2ed
).
If you manage to scag the whole inode (including cluster size and ext2
attributes), but still have the file data intact, then you can still run
e2decompress
and recover everything (in the vast majority of
cases); just use the `-f' or `--force' option so that it
doesn't complain that the input file isn't marked as compressed.
Go to the first, previous, next, last section, table of contents.