Usando a extensão do rock no Windows XP

1

Eu precisava fazer backup em DVD de um diretório com uma enorme confusão de arquivos e links simbólicos. Eu não tenho acesso de gravação para esse diretório.

Eu criei a imagem de DVD do GNU / Linux, permitindo extensões rock-ridge e joliet com o seguinte comando:

genisoimage -r -J -joliet-long -T -o mess.iso mess/

O resultado é bom.

Agora preciso acessar o DVD do Windows XP, mas todos os links simbólicos parecem estar pendurados (eles são mostrados como arquivos de tamanho 0). Tanto quanto eu entendi, isso é porque os links simbólicos são manipulados pela extensão rockridge e o Windows XP não é capaz de usá-lo.

Existe algo que possa ser instalado para acessar corretamente esse DVD? Um gerenciador de arquivos personalizado também seria uma opção. Eu também posso remasterizar a imagem com opções diferentes, se isso ajudar.

    
por ntd 26.03.2013 / 14:59

2 respostas

1

Eureka! Eu consegui realizar o que foi solicitado.

Antes de tudo, converti todos os links simbólicos para links físicos. Eu criei um script como o seguinte:

#!/bin/sh

link="$1"

error() {
    echo "Error: $1." 1>&2
    exit 1
}

[ -h "$link" ] || error "'$link' is not a symbolic link"

linkdir='dirname "$link"'
linkname='basename "$link"'
target='cd "$linkdir" 2> /dev/null && readlink -qfn "$linkname"'
[ $? = 0 ] || error "unable to readlink '$link'"

[ -f "$target" ] || error "'$link' target is not a regular file"

ln -f "$target" "$link" || error "hard-link failed on '$link'"

e executou-o no diretório mess :

find . -type l -print0 | xargs -0n1 soft2hard.sh

Depois disso, criei a imagem ISO da mesma forma que antes, mas garantindo --cache-inode (também omiti -T para reduzir a desordem):

genisoimage -r -J -joliet-long --cache-inodes -o mess.iso mess/

E voilà: tudo é perfeitamente acessível a partir do Windows XP e é compatível com um DVD de baixa densidade.

    
por 09.04.2013 / 11:20
0

Os links simbólicos aparecem no iso como links para um sistema de arquivos externo que o Windows não pode manipular.

Para um formato de CD mais independente do sistema operacional, use o parâmetro genisoimage the -f para desreferenciar os links simbólicos ou segui-los em vez de inseri-los usando Rock Ridge.

Desta forma, você adiciona o alvo do link simbólico à imagem ISO, em vez do próprio link simbólico. O arquivo aparecerá na estrutura de diretórios no lugar do link simbólico.

O artigo CD Writing Howto tem uma boa explicação do problema, embora use mkisofs em vez de genisoimage .

[EDITAR]

Se você estivesse segmentando o Vista / 7/8 em vez do XP, poderia fazer backup sem os links simbólicos e restaurar no NTFS. Em seguida, crie no Linux um script em lote do Windows que criará os links simbólicos NTFS equivalentes.
No entanto, o XP suporta apenas links para pastas, não arquivos.

Para mais informações, consulte ponto de nova análise NTFS e um utilitário útil do Windows é Junção .

Em qualquer caso, um DVD no Windows não pode ter links simbólicos, então você precisa restaurar em NTFS para isso.

    
por 04.04.2013 / 11:59