Cómo obtener el desplazamiento en un dispositivo de bloque de un inodo en una partición eliminada

Durante una nueva instalación, accidentalmente formateé un disco que contenía datos. He intentado usar algunas herramientas: testdisk, sobre todo, pero no obtuve buenos resultados. (vermi publicación fallida en superusuario).

Así que he decidido leer algunos documentos sobreestructura del sistema de archivos ext2, y podría obtener algunos resultados:

La partición eliminada tiene un árbol de directorios así:

dev
|-scripts
|-projects
|-services
|-...
Medias
|-downloads
|-Musique
|-...
backup
...

Entonces, según el formato de entrada del directorio ext2:

Directory Entry
Starting_Byte Ending_Byte Size_in_Bytes Field_Description
0   3       4   Inode
4   5       2   Total size of this entry (Including all subfields)
6   6       1   Name Length least-significant 8 bits
7   7       1   Type indicator (only if the feature bit for "directory entries have file type byte" is set, else this is the most-significant 8 bits of the Name Length)
8   8+N-1   N   Name characters

Traté de encontrar algunos datos que coincidan con esta estructura.
Usé este script:

    var bindexOf = require('buffer-indexof');

    var currentOffset=0;
    var deviceReadStream = fs.createReadStream("/dev/sdb");

    deviceReadStream.on('error',function(err){
        console.log(err);
    });

    deviceReadStream.on('data',function(data){

        var dirs = ["dev","scripts","services","projects","Medias","downloads","Musique","backup"];
        dirs.forEach(function(dir){

            dirOctetFormat = new Buffer(2);
            dirOctetFormat.writeUInt8(dir.length,0);
            dirOctetFormat.writeUInt8(2,1);// type is directory
            dirOctetFormat= Buffer.concat( [dirOctetFormat, new Buffer(dir)]);

            var offset = bindexOf( data, dirOctetFormat );
            if( offset >= 0 ){    
                console.log( dir + " entry found at offset " + (currentOffset + offset) );
            } 

        });
        currentOffset += data.length;
    });
}

Encontré datos que parecen ser la entrada del directorio del directorio de desarrollo:

 ===== Current offset: 233590226944 - 217.5478515625Gio ====== 
scripts entry found at offset 233590227030
services entry found at offset 233590227014
projects entry found at offset 233590228106

Si es el caso, obtuve los números de inodo de sus directorios secundarios: scripts, proyectos, servicios, ...

¡Pero no sé qué hacer con eso! Traté de deducir la ubicación de estos inodes, basado enesta guia, pero como no pude encontrar un superbloque del sistema de archivos eliminado, solo tengo que adivinar el tamaño del bloque, el número de bloques, ... y eso me parece un poco confuso para esperar obtener un resultado.

Entonces, ¿podría tener algunos intervalos para todos los valores necesarios para obtener el desplazamiento de un inodo y una fórmula más formal para obtener este desplazamiento?