WHAT IS THIS?
=============

This is a slightly modified version of rsbep0.0.5 which I have
been using to create error-resilient data (to survive hard disks'
bad sectors, scratched CD/DVD backups, etc)

INSTALL
=======

	./configure 
	make 
	make install

...will copy 'rsbep', 'melt.sh' and 'freeze.sh' into your 
/usr/local/bin/ directory. For reference, some additional docs
(including this README) will be copied into a documentation
directory: /usr/local/share/doc/rsbep/. If you wish to
change the prefix from /usr/local/ to "/path/to/whatever", use...

	./configure --prefix=/path/to/whatever
	make
	make install

Read INSTALL for more details, if you so wish.

DATA RECOVERY
=============

Here's an example of data recovery via the "freeze.sh" and 
"melt.sh" support scripts:

---------------------------------------------------------------
--------  Slideshow begins  -----------------------------------
---------------------------------------------------------------

home:/var/tmp/recovery$ ls -la
total 4108
drwxr-xr-x 2 ttsiod ttsiod    4096 2008-07-30 22:21 .
drwxrwxrwt 5 root   root      4096 2008-07-30 22:21 ..
-rw-r--r-- 1 ttsiod ttsiod 4194304 2008-07-30 22:21 data

home:/var/tmp/recovery$ freeze.sh data > data.shielded
home:/var/tmp/recovery$ ls -la
total 9204
drwxr-xr-x 2 ttsiod ttsiod    4096 2008-07-30 22:21 .
drwxrwxrwt 5 root   root      4096 2008-07-30 22:21 ..
-rw-r--r-- 1 ttsiod ttsiod 4194304 2008-07-30 22:21 data
-rw-r--r-- 1 ttsiod ttsiod 5202000 2008-07-30 22:21 data.shielded

home:/var/tmp/recovery$ melt.sh data.shielded > data2
home:/var/tmp/recovery$ md5sum data data2
9440c7d2ff545de1ff340e7a81a53efb  data
9440c7d2ff545de1ff340e7a81a53efb  data2

home:/var/tmp/recovery$ echo Will now create artificial corruption 
home:/var/tmp/recovery$ echo of 127 times 512 which is 65024 bytes

home:/var/tmp/recovery$ dd if=/dev/zero of=data.shielded bs=512 count=127 conv=notrunc
127+0 records in
127+0 records out
65024 bytes (65 kB) copied, 0,00026734 seconds, 243 MB/s

home:/var/tmp/recovery$ melt.sh data.shielded > data3

rsbep: number of corrected failures   : 64764
rsbep: number of uncorrectable blocks : 0

home:/var/tmp/recovery$ md5sum data data2 data3
9440c7d2ff545de1ff340e7a81a53efb  data
9440c7d2ff545de1ff340e7a81a53efb  data2
9440c7d2ff545de1ff340e7a81a53efb  data3

---------------------------------------------------------------
--------- Slideshow ends  -------------------------------------
---------------------------------------------------------------

CHANGES from original rsbep
===========================

Besides gravy (autoconf/automake), ...

- This version doesn't write the 3 parameters of rsbep as a 
  single line before the data, as this makes the stream fragile
  (if this information was lost, decoding would fail...)

- It uses a default value of 16*255=4080 for parameter D, 
  and it can thus tolerate 4080*16=65280 consecutive bytes 
  to be lost anywhere in the stream, and still recover...

FEEDBACK
========
No thanks :-)
It works as is for me, if you don't like it, fix it yourself.
And if you lose data, it's your fault.

It's useful to me, hope it proves useful to you too...

Thanassis Tsiodras, Dr.-Ing
ttsiodras at removeThis gmail dot com (I hate spam)
