Skip site navigation (1)Skip section navigation (2)
Date:      Fri,  6 Jan 2012 11:36:56 +0100 (CET)
From:      "Ganael LAPLANCHE" <ganael.laplanche@martymac.org>
To:        freebsd-ports@freebsd.org
Subject:   Introducing fpart - a file partitioning tool
Message-ID:  <20120106102656.M75753@martymac.org>

next in thread | raw e-mail | index | archive | help
Hi everyone,

Have you ever wondered how you could split a file tree into parts of the
same size, or into parts with a limited size or file number ?

I have developed a small BSD-licensed tool called fpart that can do that
for you (see http://contribs.martymac.org and
https://sourceforge.net/projects/fpart).

This small C program will crawl a given set of file or directory paths,
organize them and print resulting partitions. This can be useful to e.g.
launch several rsync(1) in parallel or store files on media of limited size.

Here are some examples :

1) Produce 3 partitions, with (approximatively) the same size and number
of files :

$ fpart -n 3 -o var-parts /var

2) Produce partitions of 4.4 GB, containing music files ready to be
burnt to a DVD :

$ fpart -s 4724464025 -o music-parts /path/to/my/music

3) Produce partitions containing 10000 files each by examining /usr and
/home :

$ find /usr ! -type d | ./fpart -f 10000 -i - /home | grep '^0:' 

The tool is already available in ports (sysutils/fpart) but has also
successfully been used on GNU/Linux.

Enjoy !

Best regards,

PS : comment and patches are, of course, welcome :)

--
Ganael LAPLANCHE <ganael.laplanche@martymac.org>
http://www.martymac.org | http://contribs.martymac.org
FreeBSD: martymac <martymac@FreeBSD.org>, http://www.FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120106102656.M75753>