
Gibt es eine Möglichkeit, mit scp
der ich eine Sparse-Datei kopieren kann?
Der folgende Befehl funktioniert mit ssh
, aber ich suche nach einer Option, mit SCP
der eine Sparse-Datei kopiert wird.
tar -Szcf - /home/myself/test/ | \
ssh myself@myserver 'tar -C /home/myself/test_scp -zvxf -'
Antwort1
scp
unterstützt keine Sparse-Dateien. Verwenden Sie rsync
stattdessen.
rsync -aS /home/myself/test/ myself@myserver:
Antwort2
Sie sollten es auch über SFTP tun können, obwohl ich keinen SFTP-Client kenne, der diese Funktion unterstützt.
Aktualisieren: Ich habe diese Funktion in die Entwicklungsversion meines Perl-Moduls integriertNet::SFTP::Ausland. Zum Beispiel:
#!/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);
Antwort3
Du kannst hinzufügen
--sparse=immer
ZuscpBefehl, aber es wird eine normale Datei auf die andere Seite kopiert (keine Sparse-Datei).
Antwort4
Fügen Sie einfach diese Option zu scp hinzu:
--sparse=always
Es ist auf der CP-Manpage aufgeführt, funktioniert aber auch für SCP.