A algum tempo atrás tinha falado sobre o ext3cow, e os problemas que eu estava tendo com a instalação do mesmo em meu sistema operacional.

Ainda não tenho muito o que dizer sobre este sistema de arquivos, porque ele está instalado a somente 20 minutos em minha máquina, mas vou explicar alguns processos que achei interessante citar, no caso de algum outro nerd pirado resolva fazer os mesmos testes que eu.
Não há, pelo menos até o momento em que eu procurei na net não havia nada em português sobre o assunto, portanto, acredito, que eu esteja até testando algo que possa vir a ser útil para mais alguém.
O ext3cow, por ser um sistema versionado, pode ser útil para todos aqueles que precisam manter snapshots de seus sistemas de arquivos, para recuperar arquivos deletados ou coisa parecida. Além disto, é ótimo para perícia forense, já que, mantém um retrato fiel de vários momentos do sistema de arquivos.
Bom, a instalação do ext3cow, é o básico ( como sempre todos os passos descritos levam em consideração o uso da distribuição SLACKWARE ).
Baixe o patch no site oficial, e aplique no kernel, mandando bala depois na compilação :
# cd /usr/src/linux; patch -p1 linux-2.6.20.3-ext3cow.patch; make bzImag; make modules; make modules_install
É legal, mudar o nome do seu kernel, para algo diferente do kernel do Slackware original, e ainda, lembrar de marcar todas as opções sobre o ext3cow na aba filesystems do kernel.

Tudo instalado, é hora de passar para a compilação das ferramentas para criação dos filesystems e também, manipulação do ext3cow.
No mesmo endereço onde baixou o patch, baixe e3cfsprogs e o ext3cow-tools, para compilação.
No caso do e3cfsprogs, a coisa é bem fácil, mas ao mesmo tempo chata. Primeiro, descompacte o arquivo e faça o famoso make install.
Depois, no diretório gerado do seu e3cfsprogs, copie o ./misc/mke2fs para o diretório /sbin com o nome mkfs.ext3 :
# cd /path/to/e3cfsprogs/misc/
# mv mke2fs /sbin/mkfs.ext3cow
Após isto, mande bala em outra coisa. O mke2fs, é uma ferramenta do pacote de manipulação dos sistemas de arquivo ext2, podendo causar algum problema a ele quando fez o make install. Aí, é aconselhável, fazer a reinstalação do pacote e2fsprogs.
# slackpkg reinstall e2fsprogs
Depois, é só criar o filesystem. No me caso, eu tenho um hdzinho de 2.5 giga, que eu sempre uso para estas experiências.
# mkfs.ext3cow /dev/hdb2
A saída deve ser mais ou menos deste modo :
bash-3.1# mkfs.ext3cow /dev/hdb2
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
403200 inodes, 805258 blocks
40262 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=826277888
25 block groups
32768 blocks per group, 32768 fragments per group
16128 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information:
Writing super block with epoch number: 1189227854
done
This filesystem will be automatically checked every 30 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
Note que, há algo em negrito acima. Esta linha obrigatoriamente tem que aparecer no seu mkfs, ou você não vai conseguir montar seu sistema operacional. De acordo com o site oficial, a não gravação do epoch number, pode causar uma queda geral no journaling, gerando alguns erros de montagem ( tive este erro ) :
Sep 8 01:18:34 matrix kernel: EXT3COW-fs: System epoch number: 1189225079
Sep 8 01:18:58 matrix kernel: EXT3COW-fs: System epoch number: 1189225079
Sep 8 01:21:25 matrix kernel: EXT3COW-fs: System epoch number: 1189225255
Sep 8 01:21:54 matrix kernel: EXT3COW-fs: System epoch number: 1189225255
Sep 8 01:27:26 matrix kernel: EXT3COW-fs: System epoch number: 1189225616
E, viu isto aqui, o erro é com o seu mkfs. Refaça todos os passo até ter a saída que eu mostrei acima :-)
E, finalmente, temos que compilar as ferramentas de manipulação deste sistema de arquivos :-)
Descompacte o arquivo que contém a ext3cow-tools e vá para o diretório. Nele, digite make.
Você vai ter um erro parecido com este ( ou não ) :
In file included from epoch2date.c:7:
ext3cow_tools.h:10:30: error: linux/ext3cow_fs.h: Arquivo ou diretório não encontrado
make: ** [e2d] Erro 1
O erro em questão acusa que não se achou o arquivo ext3cow_fs.h, no diretório linux/ext3cow.h . Aí o negócio é ir para o arquivo epoch2date e descobrir que o erro, na realidade, está no arquivo ext3cow_tools.h onde uma das linhas tem que ser substituída.
Substitua
#include <linux/ext3cow_fs.h>
Por
#include "/usr/src/linux/include/linux/ext3cow_fs.h"
E finalmente, você vai ter compilado este novo sistema de arquivos. Depois é só montar o mesmo e começar a mexer nas ferramentas e etc.
Como ainda não há nada que eu tenha feito com o mesmo, agora é aguardar o que eu pretendo fazer aqui. O ext3cow vai ser o primeiro dos testes porque eu também quero instalar por aqui o ZFS-FUSE, que parece ser algo interessante :-)
Aguardem novidades sobre esta experiência :-)