Я думаю, что вы ищете опцию
rsync -r --size-only
из страницы man:
--size-only
This modifies rsync’s "quick check" algorithm for finding files that need to be transferred,
changing it from the default of transferring files with either a changed size or a changed
last-modified time to just looking for files that have changed in size. This is useful when
starting to use rsync after using another mirroring system which may not preserve timestamps
exactly.
Если вы действительно хотите удалить файлы, отсутствующие в исходном каталоге, используйте --delete
1> зайти в MediaMarkt
2> купить жесткий диск USB на 500 ГБ
3> перенесите свои данные на этот HD
4> подключите HD к машине назначения
5> передать данные на целевую машину
(с учетом жесткого диска )USB2 ~25 МБ/с, USB3 ~80 МБ/с,
Ethernet 100 Мбит/с ~12 МБ/с, Ethernet 1 Гбит/с ~120 МБ/с
На машине Receiver.example.com:
cd /destination
socat -u tcp-listen:33333,reuseaddr - | gunzip | pv -trab | bsdtar xpSf -
Затем на машине sender.example.com:
cd /source
bsdtar cf -. | pigz -3 | socat -u - tcp:receiver.example.com:33333
Скорость передачи будет зависеть от того, насколько быстрым и надежным является ваше WiFi-соединение и насколько сжимаемы ваши данные (возможно, насколько быстро работает процессор, если ноутбук действительно старый и сжатие становится узким местом ).
Возможно, вам потребуется установить пакеты bsdtar
, pigz
, socat
и pv
.
rsync
— довольно стандартный инструмент для передачи файлов. Одним из преимуществ rynsc
является также то, что он может возобновлять прерванные передачи.
Используется ssh
для передачи данных по сети:
rsync [OPTION...] SRC... [USER@]HOST:DEST
Например(-a
архив, -z
сжать, -v
подробно):
rsync -avz /local/path user@remote:/remote/path
Вы также можете использовать rsync
для копирования на локальный путь (внешний жесткий диск, монтирование NFS и т. д. ).
Я использую эти два сценария netcat(nc
)для отправки/получения дерева каталогов
Приемник
$ cat recvnc
# Receives a directory
# Should be run from parent directory
nc -vv -w 30 -p 5600 -l |tar zxv
$
Отправитель
$ cat sendnc
# $1 is directory to send $2 is other IP
if [ "$#" -ne 2 ] && ! [ -d "$1" ]; then
echo "Usage: $0 directorytoSend otherIP"
exit 1
fi
tar zcv $1 |nc -vv -n -w 2 $2 5600
$
Через маршрутизатор (и т. д. )также работает, но вы можете ожидать, что маршрутизатор будет медленнее, чем медь!
Wi-Fi также будет работать, но еще медленнее