e2dis: a Jigdo-like tool for Ext2+ FS

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



	A couple of weeks ago I've started working on a tool
	(tentantively named “Ext2 disassembler”) to walk through an
	Ext2+ filesystem (or an image of) and produce the mapping of
	files' (inodes') relative block numbers to the image's (or
	“physical”) block numbers.

	The version-that-works (apparently) is almost done, pending
	upload to a publicly-accessible Git repository.

	However, there's a considerable amount of work to be done so
	that the tool will become really usable.  Therefore, I'd
	appreciate any help with it.

	TIA.

    Why I'm interested in that?

	Recently, there was a discussion in debian-devel@ on whether the
	Debian project should provide images for easy deployment within
	“virtual” environments (such as KVM, Xen, etc.)

	Such images (which, I assume, will use a filesystem supported by
	e2fsprogs) are going to be quite large: hundreds MiB to a few
	GiB's (depending on the intended usage) per architecture per
	version.

	Earlier, to reduce the burden of mirroring of the ISO 9660 (CD,
	DVD, etc.) images, the Jigdo (for Jigsaw Download) tool was
	introduced.  The tool uses SHA-1 to associate pieces of a
	filesystem image with the contents of the files of a specified
	set.  As the result, the tool produces the association map,
	which has the parts of the image for which no matching files are
	known embedded.  (A helper file, which contains the URI's the
	files may be downloaded from, is also generated.)

	Given such an association map, and the files, the tool is
	capable of restoring the image.

	The tool is filesystem-agnostic.  Unfortunately, it relies on
	the fact that the files on the ISO 9660 filesystem are never
	fragmented.  Which doesn't hold for Ext2+.

	However, given the knowledge of the filesystem, it's possible to
	solve the task of describing the parts of a given image as being
	parts of the files specified.

    Done

	The tool iterates over the inodes, and records the
	logical-to-physical blocks correspondence.  All the “chunks”
	belonging to the same inode are marked as such.

	The mapping is written to a SQLite database.

    To do

	Message digests are to be computed and recorded just as well.

	Non-payload blocks are to be annotated as well.

	A tool to reassemble the image.

	Command line interface.  (Preferably compliant to the GNU Coding
	Standards.)

-- 
FSF associate member #7257

--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux