Como copiar um arquivo esparso usando scp?

14

Temos alguma opção em scp que eu possa copiar um arquivo esparso?

O comando a seguir funciona com ssh , mas estou procurando uma opção em SCP , que copia um arquivo esparso.

tar -Szcf - /home/myself/test/ | \
  ssh myself@myserver 'tar -C /home/myself/test_scp -zvxf -'
    
por Kiranjith Tg 03.05.2012 / 09:22

4 respostas

14

scp não suporta arquivos esparsos. Use rsync em vez disso.

rsync -aS /home/myself/test/ myself@myserver:
    
por 03.05.2012 / 09:28
0

Você também deve ser capaz de fazer isso por meio do SFTP, embora eu não conheça nenhum cliente SFTP que suporte esse recurso.

Update : Eu adicionei esse recurso na versão de desenvolvimento do meu módulo Perl Net::SFTP::Foreign . No exemplo:

#!/usr/bin/perl

use strict;
use Net::SFTP::Foreign;

@ARGV == 3 or die <<EOU;
Usage:
  sparse_put <host> <src> <dst>

my ($host, $src, $dst) = @ARGV;

$s = Net::SFTP::Foreign->new($host, autodie => 1);
$s->put($src, $dst, sparse => 1);
    
por 03.05.2012 / 09:51
0

Basta adicionar essa opção ao scp:

--sparse=always

Ele está listado na página man do cp, mas também funciona para o scp.

    
por 21.05.2016 / 01:32
0

Você pode adicionar

--sparse=always

para o comando scp , mas copiará o arquivo regular do outro lado (não é esparso).

    
por 02.06.2016 / 20:28

Tags