Restauração do FreeBSD de / rescue

4

Estou executando uma restauração a partir de um backup anterior do meu sistema FreeBSD e tenho problemas ao restaurar / (excluindo pontos de montagem). O problema é que /rescue preenche a partição / (na medida em que não consigo restaurar toda a minha partição / ) ocupando mais espaço do que o original.

Suponho que é porque /rescue contém links e não arquivos e que os arquivos, e não os links, são restaurados na minha partição / . Eu tentei restaurar com tar e rsync :

( cd /mybak/ ; tar --one-file-system -cvf - . ) | ( cd /newroot/ ; tar -xpf - . )

e

/usr/local/bin/rsync -va --delete --one-file-system  /mybak/ /newroot/

Ambos os métodos levam ao meu problema. O que posso fazer para restaurar adequadamente (ou inicialmente fazer backup) da partição / , incluindo /rescue , para que a restauração não ocupe mais espaço em disco do que a original?

    
por poplitea 01.12.2012 / 14:03

1 resposta

2

Como você imaginou, o problema aqui é que /rescue não contém muitos arquivos - ele contém um arquivo (inode) com muitos nomes (hard links). Como resultado, ao fazer backup ou restaurar /rescue , você precisa usar um software ciente dos links físicos.

Para rsync , isso significa que o sinal -H .

Para tar , isso não requer nenhuma magia especial: o BSD tar (e o GNU tar) são inteligentes o suficiente para saber o que é um link físico. Para outros programas de backup, você precisa verificar a documentação.

Se você estiver usando as ferramentas comuns do Unix para fazer backups do seu sistema (e pegando sistemas de arquivos inteiros), pode ser melhor usar dump e restore . Além da capacidade de usar instantâneos do UFS, há outras vantagens para os utilitários mais tradicionais.

    
por 01.12.2012 / 15:03