Como criar backup a partir de links simbólicos?

63

Eu tenho um diretório com links simbólicos para outros diretórios. Quero arquivar os links simbólicos, não como links, mas como arquivos contendo os arquivos dos diretórios aos quais eles se referem, usando o comando tar. Como posso fazer isso?

hknik
fonte

Respostas:

92

Use a -hopção tar. Na página do manual:

-h, --dereference
    don't archive symlinks; archive the files they point to
Esteira
fonte
4
Se eu tiver / sym1 aponta para / backups e / sym2 aponta para / backups, então eu executarei tar -hcf file.tar /sym1 /sym2receberei / backups duas vezes?
Felipe Alvarez
O @FelipeAlvarez -Lconta os arquivos uma vez, -lvárias vezes. Veja aqui .
Suuuehgi
3

Se os links estiverem todos no diretório raiz, você poderá fazer com que o shell os desreferencie e passe para tar como argumentos. Por exemplo, se você tiver / backup / source / ae / backup / source / b, ambos links simbólicos apontando para o diretório real, algo como o seguinte funcionaria

tar -cf /path/to/backup.tar /backup/source/*/
Patrick
fonte
Não funciona aqui. Parece que tar -cf /path/to/backup.tar /backup/source/a/sozinho nem funciona quando aexiste um link simbólico.
precisa saber é