Copie arquivos sem perder as permissões de arquivo / pasta

35

Como posso copiar arquivos / pastas de um computador Ubuntu em um sistema de arquivos ext4 para outro computador Ubuntu que também está em um sistema de arquivos ext4, usando um pendrive que usa um sistema de arquivos vfat sem perder permissões?

Eu tentei o ctrl-c básico do computador de origem, depois ctrl-v para usb, depois ctrl-c de usb e ctrl-v para o computador de destino e nenhuma das permissões de arquivo / pasta permanece intacta.

    
por oshirowanen 05.12.2012 / 21:19

3 respostas

51

Você pode fazer um arquivo tar da fonte, copiá-lo para o outro computador usando a unidade USB e extraí-lo lá. O tar preserva as permissões de arquivo.

1 - No computador de origem:

cd /path/to/folder/to/copy
tar cvpzf put_your_name_here.tar.gz .

2 - Copie put_your_name_here.tar.gz para a unidade USB e depois para o outro computador

3 - No computador de destino:

cd /path/to/destination/folder
tar xpvzf put_your_name_here.tar.gz

tar recriará a estrutura de pastas arquivadas com todas as permissões intactas.

Esses comandos arquivam o conteúdo da pasta de origem e os extraem na pasta de destino. Se você quiser copiar a pasta, então você deve, no passo 1:

cd /path/to/parent/folder
tar cvpzf put_your_name_here.tar.gz folder_to_copy

O mesmo mecanismo pode ser usado para arquivos únicos.

Se você puder se conectar de um computador ao outro usando ssh , a resposta do @siddharthart ( rsync ) poderá ser mais prática.

    
por sierrasdetandil 05.12.2012 / 21:35
11

Você pode tentar rsync com -a bandeira para manter todas as permissões durante a cópia. Não tenho conhecimento de uma solução mais simples, mas usei-a para um propósito no passado.

O Rsync oferece suporte brilhante para cópias repetidas, atualização de pastas, etc., enquanto permanece incrivelmente rápido.

    
por SiddharthaRT 05.12.2012 / 21:31
6

Acho que tarar e depois descompactar deve funcionar em arquivos e diretórios.

para tar:

tar cvpfz /target.tar.gz /source/

para descompactar:

tar xvpfz /source/

A p bandeira significa --preserve-permissions .

Você deve ver man tar para mais informações.

    
por mikewhatever 05.12.2012 / 21:35

Tags