Синтаксис для переноса с удаленного на локальный scp путем перехода на другой хост?

Используйте du. Используйте -xдля предотвращения рекурсии в другие точки монтирования. Вы можете ограничить вывод с помощью --max-depth=N. Человекочитаемый формат (, например, 1K 234M 2G ), включается -h.

Вывод можно сортировать по конвейеру в sort.

Например:

du -x --max-depth=3 -h / | sort -h

0
20.11.2019, 02:04
2 ответа

В современных версиях ssh это очень легко сделать, используя концепцию ProxyJump, по крайней мере, если у вас настроены ключи.

Назовем 3 машины L, I и R (для локальных, промежуточных и удаленных ). Предположим для начала, что все имена пользователей одинаковы.

Тогда требуется команда

scp -oProxyJump=I R:remote_file localfile

Если имена пользователей разные, замените I на user@Iи R на user@R.

Если вы используете ssh, команда будет:

ssh -J [user@]I [user@]R 
3
28.01.2020, 03:06

Это можно сделать, изменив конфигурацию ssh, включив прокси-сервер. scp использует ssh для удаленных подключений, поэтому простое редактирование конфигурации ssh должно работать. Используйте свой «промежуточный сервер» в качестве прокси.

Добавьте что-то подобное в свой ~/.ssh/configфайл:

Host target.machine
  User          targetuser
  HostName      target.machine
  ProxyCommand  ssh proxyuser@proxy.machine nc %h %p 2> /dev/null

Затем просто используйте scp, как если бы вы подключались напрямую к удаленному серверу.

Чтобы отдать должное, я взял это из здесь .

0
28.01.2020, 03:06

Теги

Похожие вопросы