Обычно, если бы я хотел скопировать файлы с удаленной машины, я бы сделал
scp user@remote.device:/folder/* .
Тем не менее, в этом случае есть так много файлов, которые я получаю ошибку
bash: /usr/bin/scp: Argument list too long
Теперь, решив эту проблему, я могу найти несколько способов создать архив tar на удаленной машине, не вызывая эту ошибку. Однако в этом случае на удаленном компьютере есть только небольшая SD-карта для хранения, поэтому нет места для создания архива.
Итак, что будет нормальным способом передачи файлов в этом случае? Я думаю, это не должно иметь большого значения, но в случае, если это так, моя локальная машина - Mac, а удаленная - Raspberry Pi.
Поскольку вы работаете на Mac, прочитайте этот пост и посмотрите, облегчает ли это то, что вы пытаетесь сделать. raspberrypi.stackexchange.com/questions/8950/...
—
NetworkKingPin
@NetworkKingPin, возможно, стоит попробовать в крайнем случае, но я хочу избежать установки программного обеспечения на другое устройство, поскольку его хранилище почти заполнено.
—
Nathaniel
У вас есть ответ, но для полноты другой путь это к передать архив без хранения например
—
dave_thompson_085
ssh user@remote 'cd folder; tar cf - .' | tar xf -
, На GNU tar и, возможно, других, f -
(используйте stdout / stdin соответственно) можно опустить. tar
по умолчанию сохраняет оригинальное время scp -p
; если хотите обновить, добавьте m
после x
,